diff --git a/lustre/llite/llite_lib.c b/lustre/llite/llite_lib.c index 6995835ecc318e628fe451937af8142d851fb328..dbf95a8094db3d05c4c663676008ba9c248378c5 100644 --- a/lustre/llite/llite_lib.c +++ b/lustre/llite/llite_lib.c @@ -458,18 +458,6 @@ static int client_common_fill_super(struct super_block *sb, char *md, char *dt) sbi->ll_flags |= LL_SBI_OSS_CAPA; } - sbi->ll_sdev_orig = sb->s_dev; -#if 0 - /* We set sb->s_dev equal on all lustre clients in order to support - * NFS export clustering. NFSD requires that the FSID be the same - * on all clients. */ - /* s_dev is also used in lt_compare() to compare two fs, but that is - * only a node-local comparison. */ - - /* XXX: this will not work with LMV */ - sb->s_dev = get_uuid2int(sbi2mdc(sbi)->cl_target_uuid.uuid, - strlen(sbi2mdc(sbi)->cl_target_uuid.uuid)); -#endif obd = class_name2obd(dt); if (!obd) { CERROR("DT %s: not setup or attached\n", dt); @@ -647,7 +635,22 @@ static int client_common_fill_super(struct super_block *sb, char *md, char *dt) sb->s_root = d_alloc_root(root); if (data != NULL) OBD_FREE(data, sizeof(*data)); + sb->s_root->d_op = &ll_d_root_ops; + + sbi->ll_sdev_orig = sb->s_dev; +#if 0 + /* We set sb->s_dev equal on all lustre clients in order to support + * NFS export clustering. NFSD requires that the FSID be the same + * on all clients. */ + /* s_dev is also used in lt_compare() to compare two fs, but that is + * only a node-local comparison. */ + + /* XXX: this will not work with LMV */ + sb->s_dev = get_uuid2int(sbi2mdc(sbi)->cl_target_uuid.uuid, + strlen(sbi2mdc(sbi)->cl_target_uuid.uuid)); +#endif + RETURN(err); out_root: if (root)