Re: [GIT PULL] fuse fix for 2.6.39

From: Linus Torvalds
Date: Thu May 12 2011 - 11:20:28 EST


Ooh.

It's "lookup_one_len()", isn't it?

So any filesystem that uses that helper will need to be protected from
a NULL 'nd'.

And then you have nfsd, ecryptfs and cachefiles that will do it on
_other_ filesystems.

Gaah. Ugly. So either we really should fix the filesystems that don't
have protection from a NULL nd, or we should fix lookup_one_len() (are
there perhaps other cases I missed?)

Al? Christoph? Comments?

Linus

On Thu, May 12, 2011 at 8:12 AM, Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> Hmm.
>
> Do we really ever have a NULL 'nd' these days? Can you send me the
> backtrace for whatever oops that was reported?
>
> The reason I ask is because at least NFS also does just
>
>        if (nd->flags & LOOKUP_RCU)
>                return -ECHILD;
>
> in its nfs_lookup/open_revalidate() functions. As does cifs, ncpfs, p9
> and coda from a quick grep.
>
>                        Linus
>
> On Thu, May 12, 2011 at 8:04 AM, Miklos Szeredi <miklos@xxxxxxxxxx> wrote:
>>
>> Please pull from
>>
>>  git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git for-linus
>>
>> Miklos Szeredi (1):
>>      fuse: fix oops in revalidate when called with NULL nameidata
>>
>> ---
>>  fs/fuse/dir.c |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>>
>
--
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/