[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110610223955.GA11521@ZenIV.linux.org.uk>
Date: Fri, 10 Jun 2011 23:39:55 +0100
From: Al Viro <viro@...IV.linux.org.uk>
To: Jesper Juhl <jj@...osbits.net>
Cc: linux-kernel@...r.kernel.org,
Linus Torvalds <torvalds@...ux-foundation.org>,
Jonas Gorski <jonas.gorski@...il.com>,
"Aneesh Kumar K.V" <aneesh.kumar@...ux.vnet.ibm.com>
Subject: Re: Why is CONFIG_FHANDLE an option??
On Sat, Jun 11, 2011 at 12:14:02AM +0200, Jesper Juhl wrote:
> Hello
>
> I just configured a new kernel based on a recent git checkout and when I
> had copied in my old configuration and did a "make oldconfig"I was greeted
> with
>
> open by fhandle syscalls (FHANDLE) [N/y/?] (NEW)
>
> Ok, so I read the help text description and learn that it's about two new
> syscalls - open_by_handle_at(2) and name_to_handle_at(2).
>
> My first thought at this point was "why are new syscalls even an option"?
>
> Syscalls are in my oppinion ABI - having optional syscalls is just about
> as bad as removing a syscall. It basically means that users cannot know if
> the syscall is there and will need to test (it's bad enough having to
> check the kernel version, having to check for specific syscalls as well
> is just, well, annoying at best).
>
> Why are we making these optional?
Why not? Software needs to test *anyway*, since it might run on earlier
kernels. And "does that syscall return -ENOSYS" is self-documenting,
while "is the version higher than $MAGIC_NUMBER" is *not*. Especially since
there's such thing as backports.
If you need to check that syscall is there, _check_ _it_. Don't breed
dependencies on version numbers.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists