[Cbe-oss-dev] [PATCH] inotify: check for NULL inode in inotify_d_instantiate
Nick Piggin
npiggin at suse.de
Sat Apr 8 13:06:10 EST 2006
On Fri, Apr 07, 2006 at 06:08:41PM +0200, Arnd Bergmann wrote:
> The spufs file system creates files in a directory before instantiating
> the directory itself, which causes a NULL pointer access in
> inotify_d_instantiate since c32ccd87bfd1414b0aabfcd8dbc7539ad23bcbaa.
>
> I'd like to keep this behavior since it means that the user
> will not have access to files in the directory before I know
> that I succeed in creating everything in it. This patch adds
> a simple check for the inode to keep that working.
>
If this were not the correct thing to do, it is not the
business of c32ccd87bfd1414b0aabfcd8dbc7539ad23bcbaa to
prevent it. Thanks.
Acked-by: Nick Piggin <npiggin at suse.de>
> Cc: Nick Piggin <npiggin at suse.de>
> Signed-off-by: Arnd Bergmann <arnd.bergmann at de.ibm.com>
> ---
>
> diff --git a/fs/inotify.c b/fs/inotify.c
> index 367c487..1f50302 100644
> --- a/fs/inotify.c
> +++ b/fs/inotify.c
> @@ -538,7 +538,7 @@ void inotify_d_instantiate(struct dentry
> WARN_ON(entry->d_flags & DCACHE_INOTIFY_PARENT_WATCHED);
> spin_lock(&entry->d_lock);
> parent = entry->d_parent;
> - if (inotify_inode_watched(parent->d_inode))
> + if (parent->d_inode && inotify_inode_watched(parent->d_inode))
> entry->d_flags |= DCACHE_INOTIFY_PARENT_WATCHED;
> spin_unlock(&entry->d_lock);
> }
More information about the cbe-oss-dev
mailing list