aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cifs/inode.c
diff options
context:
space:
mode:
authorSuresh Jayaraman <sjayaraman@suse.de>2010-07-05 08:42:27 -0400
committerSteve French <sfrench@us.ibm.com>2010-08-02 08:40:36 -0400
commitd03382ce9a89dbe27cba25130f0b90c0d631d5c5 (patch)
treef2561981a606a788259ad10f0ec57f9486f85da4 /fs/cifs/inode.c
parent8913007e67106597fed4b9dd3787e8dca6915a83 (diff)
cifs: define superblock-level cache index objects and register them
Define superblock-level cache index objects (managed by cifsTconInfo structs). Each superblock object is created in a server-level index object and in itself an index into which inode-level objects are inserted. The superblock object is keyed by sharename. The UniqueId/IndexNumber is used to validate that the exported share is the same since we accessed it last time. Signed-off-by: Suresh Jayaraman <sjayaraman@suse.de> Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/inode.c')
-rw-r--r--fs/cifs/inode.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c
index fe9b2f5fb492..f884cb51622a 100644
--- a/fs/cifs/inode.c
+++ b/fs/cifs/inode.c
@@ -807,6 +807,9 @@ struct inode *cifs_root_iget(struct super_block *sb, unsigned long ino)
807 if (!inode) 807 if (!inode)
808 return ERR_PTR(-ENOMEM); 808 return ERR_PTR(-ENOMEM);
809 809
810 /* populate tcon->resource_id */
811 cifs_sb->tcon->resource_id = CIFS_I(inode)->uniqueid;
812
810 if (rc && cifs_sb->tcon->ipc) { 813 if (rc && cifs_sb->tcon->ipc) {
811 cFYI(1, "ipc connection - fake read inode"); 814 cFYI(1, "ipc connection - fake read inode");
812 inode->i_mode |= S_IFDIR; 815 inode->i_mode |= S_IFDIR;