blob: ac5e1ca9438db93011fd10bf494bfcba7cea7d3b [file] [log] [blame]
From stable-bounces@linux.kernel.org Fri Aug 15 12:05:14 2008
From: Steve French <sfrench@us.ibm.com>
Date: Fri, 15 Aug 2008 19:05:03 GMT
Subject: CIFS: mount of IPC$ breaks with iget patch
To: jejb@kernel.org, stable@kernel.org
Message-ID: <200808151905.m7FJ532E001099@hera.kernel.org>
From: Steve French <sfrench@us.ibm.com>
commit ad661334b8ae421154b121ee6ad3b56807adbf11 upstream
In looking at network named pipe support on cifs, I noticed that
Dave Howell's iget patch:
iget: stop CIFS from using iget() and read_inode()
broke mounts to IPC$ (the interprocess communication share), and don't
handle the error case (when getting info on the root inode fails).
Thanks to Gunter who noted a typo in a debug line in the original
version of this patch.
CC: David Howells <dhowells@redhat.com>
CC: Gunter Kukkukk <linux@kukkukk.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
fs/cifs/inode.c | 1 +
1 file changed, 1 insertion(+)
--- a/fs/cifs/inode.c
+++ b/fs/cifs/inode.c
@@ -649,6 +649,7 @@ struct inode *cifs_iget(struct super_blo
inode->i_fop = &simple_dir_operations;
inode->i_uid = cifs_sb->mnt_uid;
inode->i_gid = cifs_sb->mnt_gid;
+ } else if (rc) {
_FreeXid(xid);
iget_failed(inode);
return ERR_PTR(rc);