From: Lennert Buytenhek <buytenh@gnu.org>
To: linux-kernel@vger.kernel.org
Cc: jdike@karaya.com
Subject: [PATCH][RFC] global errno considered harmful
Date: Sun, 30 Dec 2001 11:06:23 -0500 [thread overview]
Message-ID: <20011230110623.A17083@gnu.org> (raw)
Hi,
Is there any particular reason we need a global errno in the kernel
at all? (which, by the way, doesn't seem to be subject to any kind of
locking) It makes life for User Mode Linux somewhat more complicated than
it could be, and it generally just seems a bad idea. Half a dozen places
in the kernel call syscalls from kernel space (the asm/unistd.h
__KERNEL_SYSCALLS__ stubs), but it sounds way better to change that limited
number to check the syscall return code instead of errno.
It appears that only one syscall stub caller checks syscall return value
anyway (exec_usermodehelper in kernel/kmod.c), so removing errno is quite
painless. Referenced patch deletes all mention of a global errno from the
kernel, and fixes up callers where necessary. I had to change definition
of _syscallX in various asm/unistd.h's not to use errno which might break
some userland, but userland shouldn't be touching these anyway.
Only tested on i386. Feedback appreciated, particularly experiences on
non-i386.
http://www.math.leidenuniv.nl/~buytenh/errno_ectomy-1.diff (33kb)
cheers,
Lennert
next reply other threads:[~2001-12-30 16:06 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-12-30 16:06 Lennert Buytenhek [this message]
2001-12-30 19:56 ` [PATCH][RFC] global errno considered harmful Jeff Dike
2001-12-30 21:00 ` Ralf Baechle
2001-12-30 22:10 ` Brian Gerst
2001-12-31 1:59 ` Ralf Baechle
2001-12-31 16:48 ` Andreas Schwab
2001-12-31 21:42 ` Ralf Baechle
2001-12-31 1:52 ` Lennert Buytenhek
2001-12-31 2:01 ` Ralf Baechle
2001-12-31 20:56 ` Erik Andersen
2001-12-31 0:01 ` ertzog
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20011230110623.A17083@gnu.org \
--to=buytenh@gnu.org \
--cc=jdike@karaya.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox