Re: [PATCH] add check for nameidata before accessing it

Jeff Layton <[email protected]>
Newsgroups gmane.linux.file-systems.cifs
Message-ID <[email protected]>
On Thu, 19 Nov 2009 15:05:45 -0600
Shirish Pargaonkar <[email protected]> wrote:

> This should prevent oops reported in kernel bugzilla 14641
> 
> From 240f75430dbe4965f79d903309488ebabd3d3625 Mon Sep 17 00:00:00 2001
> From: Shirish Pargaonkar <[email protected]>
> Date: Thu, 19 Nov 2009 14:38:59 -0600
> Subject: [PATCH] add check for nameidata before accessing it
> 
> Cc: Stable <[email protected]>
> ---
>  fs/cifs/dir.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/cifs/dir.c b/fs/cifs/dir.c
> index 627a60a..32771f5 100644
> --- a/fs/cifs/dir.c
> +++ b/fs/cifs/dir.c
> @@ -643,7 +643,7 @@ cifs_lookup(struct inode *parent_dir_inode, struct
> dentry *direntry,
>          * O_EXCL: optimize away the lookup, but don't hash the dentry. Let
>          * the VFS handle the create.
>          */
> -       if (nd->flags & LOOKUP_EXCL) {
> +       if (nd && (nd->flags & LOOKUP_EXCL)) {
>                 d_instantiate(direntry, NULL);
>                 return 0;
>         }
> @@ -675,7 +675,7 @@ cifs_lookup(struct inode *parent_dir_inode, struct
> dentry *direntry,
>          * reduction in network traffic in the other paths.
>          */
>         if (pTcon->unix_ext) {
> -               if (!(nd->flags & (LOOKUP_PARENT | LOOKUP_DIRECTORY)) &&
> +               if (nd && !(nd->flags & (LOOKUP_PARENT | LOOKUP_DIRECTORY)) &&
>                      (nd->flags & LOOKUP_OPEN) && !pTcon->broken_posix_open &&
>                      (nd->intent.open.flags & O_CREAT)) {
>                         rc = cifs_posix_open(full_path, &newInode, nd->path.mnt,
> --
> 1.6.0.2

Once the line-wrapping is fixed...

Acked-by: Jeff Layton <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.