summaryrefslogtreecommitdiffstats
path: root/fs/ceph/super.c
diff options
context:
space:
mode:
authorPekka Enberg <penberg@kernel.org>2012-01-11 21:11:29 +0200
committerPekka Enberg <penberg@kernel.org>2012-01-11 21:11:29 +0200
commit5878cf431ca7233a56819ca6970153ac0b129599 (patch)
treee5d21d04a0b468d2dabbe3a3824f23b5537fc6a7 /fs/ceph/super.c
parent74ee4ef1f901fbb014bdcdc9171d126490ce2b62 (diff)
parentb13683d1cc14d1dd30b8e20f3ebea3f814ad029f (diff)
downloadop-kernel-dev-5878cf431ca7233a56819ca6970153ac0b129599.zip
op-kernel-dev-5878cf431ca7233a56819ca6970153ac0b129599.tar.gz
Merge branch 'slab/urgent' into slab/for-linus
Diffstat (limited to 'fs/ceph/super.c')
-rw-r--r--fs/ceph/super.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/ceph/super.c b/fs/ceph/super.c
index a90846f..8dc73a5 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
@@ -638,10 +638,12 @@ static struct dentry *open_root_dentry(struct ceph_fs_client *fsc,
if (err == 0) {
dout("open_root_inode success\n");
if (ceph_ino(req->r_target_inode) == CEPH_INO_ROOT &&
- fsc->sb->s_root == NULL)
+ fsc->sb->s_root == NULL) {
root = d_alloc_root(req->r_target_inode);
- else
+ ceph_init_dentry(root);
+ } else {
root = d_obtain_alias(req->r_target_inode);
+ }
req->r_target_inode = NULL;
dout("open_root_inode success, root dentry is %p\n", root);
} else {
OpenPOWER on IntegriCloud