diff options
| -rw-r--r-- | 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 627a60a6c1b1..32771f581b67 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, | |||
| 643 | * O_EXCL: optimize away the lookup, but don't hash the dentry. Let | 643 | * O_EXCL: optimize away the lookup, but don't hash the dentry. Let |
| 644 | * the VFS handle the create. | 644 | * the VFS handle the create. |
| 645 | */ | 645 | */ |
| 646 | if (nd->flags & LOOKUP_EXCL) { | 646 | if (nd && (nd->flags & LOOKUP_EXCL)) { |
| 647 | d_instantiate(direntry, NULL); | 647 | d_instantiate(direntry, NULL); |
| 648 | return 0; | 648 | return 0; |
| 649 | } | 649 | } |
| @@ -675,7 +675,7 @@ cifs_lookup(struct inode *parent_dir_inode, struct dentry *direntry, | |||
| 675 | * reduction in network traffic in the other paths. | 675 | * reduction in network traffic in the other paths. |
| 676 | */ | 676 | */ |
| 677 | if (pTcon->unix_ext) { | 677 | if (pTcon->unix_ext) { |
| 678 | if (!(nd->flags & (LOOKUP_PARENT | LOOKUP_DIRECTORY)) && | 678 | if (nd && !(nd->flags & (LOOKUP_PARENT | LOOKUP_DIRECTORY)) && |
| 679 | (nd->flags & LOOKUP_OPEN) && !pTcon->broken_posix_open && | 679 | (nd->flags & LOOKUP_OPEN) && !pTcon->broken_posix_open && |
| 680 | (nd->intent.open.flags & O_CREAT)) { | 680 | (nd->intent.open.flags & O_CREAT)) { |
| 681 | rc = cifs_posix_open(full_path, &newInode, nd->path.mnt, | 681 | rc = cifs_posix_open(full_path, &newInode, nd->path.mnt, |
