summary refs log tree commit diff
path: root/fs/isofs/inode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2010-12-18 10:29:26 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2011-01-12 20:02:43 -0500
commit6cc9c1d2c1414ef67f465462aa96a5d1fed12f5d (patch)
tree5753c48ee75430f442703bb06922de461a52bf6c /fs/isofs/inode.c
parentc8aebb0c9f8c7471643d5f8ba68328de8013005f (diff)
downloadlinux-6cc9c1d2c1414ef67f465462aa96a5d1fed12f5d.tar.gz
fix isofs d_op handling
switch to ->s_d_op; d_obtain_alias() will DTRT now

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/isofs/inode.c')
-rw-r--r--fs/isofs/inode.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/fs/isofs/inode.c b/fs/isofs/inode.c
index 844a7903c72f..a0f3833c0dbf 100644
--- a/fs/isofs/inode.c
+++ b/fs/isofs/inode.c
@@ -939,17 +939,18 @@ root_found:
 		goto out_iput;
 	}
 
-	/* get the root dentry */
-	s->s_root = d_alloc_root(inode);
-	if (!(s->s_root))
-		goto out_no_root;
-
 	table = 0;
 	if (joliet_level)
 		table += 2;
 	if (opt.check == 'r')
 		table++;
-	d_set_d_op(s->s_root, &isofs_dentry_ops[table]);
+
+	s->s_d_op = &isofs_dentry_ops[table];
+
+	/* get the root dentry */
+	s->s_root = d_alloc_root(inode);
+	if (!(s->s_root))
+		goto out_no_root;
 
 	kfree(opt.iocharset);