Re: Why is CONFIG_FHANDLE an option??

From: Jesper Juhl
Date: Fri Jun 10 2011 - 18:46:53 EST


On Fri, 10 Jun 2011, Al Viro wrote:

> 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.

Well, sometimes you may want to make it a requirement that whomever
deploys your software runs Linux X.Y.Z or whatever.. You don't want to
make it "run Linux X.Y.Z with syscalls A, B, C enabled" etc.

Sometimes it's nice to draw lines in sand and just say "from this day
forward we support so and so".


--
Jesper Juhl <jj@xxxxxxxxxxxxx> http://www.chaosbits.net/
Don't top-post http://www.catb.org/jargon/html/T/top-post.html
Plain text mails only, please.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/