提交 c1e2699d 编写于 作者: W wang di 提交者: Greg Kroah-Hartman

staging/lustre/llite: Always build 64bit ino internally

Always build 64bit ino internally except the client is mounted
with "32bitapi" option, so client will always use 64bit ino
internally. It will build 32bit ino, only if application requires
32 bit ino.

Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-3318
Lustre-change: http://review.whamcloud.com/6371Signed-off-by: Nwang di <di.wang@intel.com>
Reviewed-by: NAndreas Dilger <andreas.dilger@intel.com>
Reviewed-by: NNed Bass <bass6@llnl.gov>
Reviewed-by: NFan Yong <fan.yong@intel.com>
Signed-off-by: NPeng Tao <tao.peng@emc.com>
Signed-off-by: NAndreas Dilger <andreas.dilger@intel.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 f57d9a72
...@@ -521,7 +521,7 @@ static int client_common_fill_super(struct super_block *sb, char *md, char *dt, ...@@ -521,7 +521,7 @@ static int client_common_fill_super(struct super_block *sb, char *md, char *dt,
LASSERT(fid_is_sane(&sbi->ll_root_fid)); LASSERT(fid_is_sane(&sbi->ll_root_fid));
root = ll_iget(sb, cl_fid_build_ino(&sbi->ll_root_fid, root = ll_iget(sb, cl_fid_build_ino(&sbi->ll_root_fid,
ll_need_32bit_api(sbi)), sbi->ll_flags & LL_SBI_32BIT_API),
&lmd); &lmd);
md_free_lustre_md(sbi->ll_md_exp, &lmd); md_free_lustre_md(sbi->ll_md_exp, &lmd);
ptlrpc_req_finished(request); ptlrpc_req_finished(request);
...@@ -1676,7 +1676,8 @@ void ll_update_inode(struct inode *inode, struct lustre_md *md) ...@@ -1676,7 +1676,8 @@ void ll_update_inode(struct inode *inode, struct lustre_md *md)
spin_unlock(&lli->lli_lock); spin_unlock(&lli->lli_lock);
} }
#endif #endif
inode->i_ino = cl_fid_build_ino(&body->fid1, ll_need_32bit_api(sbi)); inode->i_ino = cl_fid_build_ino(&body->fid1,
sbi->ll_flags & LL_SBI_32BIT_API);
inode->i_generation = cl_fid_build_gen(&body->fid1); inode->i_generation = cl_fid_build_gen(&body->fid1);
if (body->valid & OBD_MD_FLATIME) { if (body->valid & OBD_MD_FLATIME) {
...@@ -2081,7 +2082,7 @@ int ll_prep_inode(struct inode **inode, struct ptlrpc_request *req, ...@@ -2081,7 +2082,7 @@ int ll_prep_inode(struct inode **inode, struct ptlrpc_request *req,
LASSERT(fid_is_sane(&md.body->fid1)); LASSERT(fid_is_sane(&md.body->fid1));
*inode = ll_iget(sb, cl_fid_build_ino(&md.body->fid1, *inode = ll_iget(sb, cl_fid_build_ino(&md.body->fid1,
ll_need_32bit_api(sbi)), sbi->ll_flags & LL_SBI_32BIT_API),
&md); &md);
if (*inode == NULL || IS_ERR(*inode)) { if (*inode == NULL || IS_ERR(*inode)) {
#ifdef CONFIG_FS_POSIX_ACL #ifdef CONFIG_FS_POSIX_ACL
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册