diff options
author | Suresh Jayaraman <sjayaraman@suse.de> | 2010-07-05 18:12:27 +0530 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2010-08-02 12:40:36 +0000 |
commit | d03382ce9a89dbe27cba25130f0b90c0d631d5c5 (patch) | |
tree | f2561981a606a788259ad10f0ec57f9486f85da4 /fs/cifs/inode.c | |
parent | 8913007e67106597fed4b9dd3787e8dca6915a83 (diff) | |
download | linux-d03382ce9a89dbe27cba25130f0b90c0d631d5c5.tar.bz2 |
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.c | 3 |
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) if (!inode) return ERR_PTR(-ENOMEM); + /* populate tcon->resource_id */ + cifs_sb->tcon->resource_id = CIFS_I(inode)->uniqueid; + if (rc && cifs_sb->tcon->ipc) { cFYI(1, "ipc connection - fake read inode"); inode->i_mode |= S_IFDIR; |