fs/9p: set fs cache cookie in create path also
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Mon, 28 Feb 2011 11:33:55 +0000 (17:03 +0530)
committerEric Van Hensbergen <ericvh@gmail.com>
Tue, 15 Mar 2011 14:57:36 +0000 (09:57 -0500)
We need to call v9fs_cache_inode_set_cookie in create
path also

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
fs/9p/vfs_file.c
fs/9p/vfs_inode.c
fs/9p/vfs_inode_dotl.c

index 6a67100..ce1eae4 100644 (file)
@@ -87,10 +87,8 @@ int v9fs_file_open(struct inode *inode, struct file *file)
 
        file->private_data = fid;
 #ifdef CONFIG_9P_FSCACHE
-       if ((fid->qid.version) && (v9ses->cache)) {
-               P9_DPRINTK(P9_DEBUG_VFS, "cached");
+       if (v9ses->cache)
                v9fs_cache_inode_set_cookie(inode, file);
-       }
 #endif
        return 0;
 }
index 83af2b7..95f5501 100644 (file)
@@ -608,6 +608,10 @@ v9fs_vfs_create(struct inode *dir, struct dentry *dentry, int mode,
                }
 
                filp->private_data = fid;
+#ifdef CONFIG_9P_FSCACHE
+               if (v9ses->cache)
+                       v9fs_cache_inode_set_cookie(dentry->d_inode, filp);
+#endif
        } else
                p9_client_clunk(fid);
 
index fe3ffa9..fbe9572 100644 (file)
@@ -226,6 +226,10 @@ v9fs_vfs_create_dotl(struct inode *dir, struct dentry *dentry, int omode,
                return PTR_ERR(filp);
        }
        filp->private_data = ofid;
+#ifdef CONFIG_9P_FSCACHE
+       if (v9ses->cache)
+               v9fs_cache_inode_set_cookie(inode, filp);
+#endif
        return 0;
 
 error: