From 188194a003a7ce179761501f789f80886b2b99fc Mon Sep 17 00:00:00 2001 From: Pavel Shilovsky Date: Sun, 21 Aug 2011 19:30:15 +0400 Subject: [PATCH] --- yaml --- r: 263997 b: refs/heads/master c: 5b980b01212199833ee8023770fa4cbf1b85e9f4 h: refs/heads/master i: 263995: 16b82a71b0f71a85704df910bd904ee68f5e45dc v: v3 --- [refs] | 2 +- trunk/fs/cifs/cifsfs.c | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 9992781d1faf..ad4436dcbb44 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9438fabb73eb48055b58b89fc51e0bc4db22fabd +refs/heads/master: 5b980b01212199833ee8023770fa4cbf1b85e9f4 diff --git a/trunk/fs/cifs/cifsfs.c b/trunk/fs/cifs/cifsfs.c index f93eb948d071..54b8f1e7da94 100644 --- a/trunk/fs/cifs/cifsfs.c +++ b/trunk/fs/cifs/cifsfs.c @@ -548,6 +548,12 @@ cifs_get_root(struct smb_vol *vol, struct super_block *sb) struct inode *dir = dentry->d_inode; struct dentry *child; + if (!dir) { + dput(dentry); + dentry = ERR_PTR(-ENOENT); + break; + } + /* skip separators */ while (*s == sep) s++; @@ -563,10 +569,6 @@ cifs_get_root(struct smb_vol *vol, struct super_block *sb) mutex_unlock(&dir->i_mutex); dput(dentry); dentry = child; - if (!dentry->d_inode) { - dput(dentry); - dentry = ERR_PTR(-ENOENT); - } } while (!IS_ERR(dentry)); _FreeXid(xid); kfree(full_path);