]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - fs/9p/vfs_super.c
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / fs / 9p / vfs_super.c
index c55c614500ad4e4e74561264e9766fe65b0633a3..dbaabe3b8131f5060d9e14ad537568f7e1ed53af 100644 (file)
@@ -141,6 +141,11 @@ static struct dentry *v9fs_mount(struct file_system_type *fs_type, int flags,
        }
        v9fs_fill_super(sb, v9ses, flags, data);
 
+       if (v9ses->cache)
+               sb->s_d_op = &v9fs_cached_dentry_operations;
+       else
+               sb->s_d_op = &v9fs_dentry_operations;
+
        inode = v9fs_get_inode(sb, S_IFDIR | mode);
        if (IS_ERR(inode)) {
                retval = PTR_ERR(inode);
@@ -217,9 +222,6 @@ static void v9fs_kill_super(struct super_block *s)
 
        P9_DPRINTK(P9_DEBUG_VFS, " %p\n", s);
 
-       if (s->s_root)
-               v9fs_dentry_release(s->s_root); /* clunk root */
-
        kill_anon_super(s);
 
        v9fs_session_cancel(v9ses);