Re: [PATCH] CRED: Fix regression in cap_capable() as shown up by sys_faccessat() [ver #2]

J. Bruce Fields
2009-01-02T16:45:28Z

On Fri, Jan 02, 2009 at 11:59:38AM +0000, David Howells wrote:
> J. Bruce Fields <bfields@fieldses.org> wrote:
>
> > No. I started bisecting, and it does appear to be a regression from the
> > cred patches, but at some point in the middle there it hangs on boot (a
> > softlockup report blames a spinlock in set_groups).
>
> Do you remember which patch you were at?

It appears that:

- 1cdcbec1a3372c0c49c59d292e708fd07b509f18 "CRED: Neuter
sys_capset()" is good

- 98870ab0a5a3f1822aee681d2997017e1c87d026 "CRED: Documentation"
is bad

- f1752eec6145c97163dbce62d17cf5d928e28a27 and
d84f4f992cbd76e8f39c488cf0c5d123843923b1 produce the soft
lookup in set_groups()

... and I haven't figured out what's in between. And the test failure
is nfsd_lookup() returning OK on a directory when it should return
nfserr_perm. I assume that's the result of inode_permission(directory
inode, MAY_EXEC) returning 0 when it shouldn't, but I haven't confirmed
that.

--b.