Re: [git pull] VFS - the first pile

From: Al Viro
Date: Wed Mar 16 2011 - 09:15:19 EST


On Wed, Mar 16, 2011 at 09:07:28AM -0400, Christoph Hellwig wrote:
> On Wed, Mar 16, 2011 at 07:46:40AM -0400, Theodore Tso wrote:
> >
> > On Mar 16, 2011, at 3:21 AM, Al Viro wrote:
> >
> > > BTW, you want to update 005 in there - we are back to correct "maximum
> > > is 40 symlinks total, 8 levels on nesting" for all syscalls. Add the
> > > 41st symlink to your chain in testcase ;-)
> >
> > Unless there's a way to read out these limits, I'm not sure it's a good idea
> > to add a test like that to xfstests --- it's too fragile since at some point
> > we might change what those limits might be.
> >
> > Also, xfstests is primarily intended to be a file system level stress tester
> > testing for correctness, and issues of whether we blow up on the 40th,
> > 41st, or 42nd symlink seems more like an ABI issue --- and even there I'm
> > not sure the ABI specification should be quite that detailed over what's
> > allowed and not allowed.
>
> That's not what it tests anyway. It tests that we get ELOOP at some
> point, and do not blow the stack. Which is someting that older Linux
> code used to do.

Yes. See patch upthread (or in for-linus). There are two parts in that
test; *both* would actually trigger the b0rkage in the last commit of
what got merged - the only reason why the first one (long chain) did not
was that the limit got fixed and -ELOOP was no longer triggered. Symlink
to itself did, of course, trigger it - complete with oops.
--
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/