From: wang di <[email protected]>

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/6371
Signed-off-by: wang di <[email protected]>
Reviewed-by: Andreas Dilger <[email protected]>
Reviewed-by: Ned Bass <[email protected]>
Reviewed-by: Fan Yong <[email protected]>
Signed-off-by: Peng Tao <[email protected]>
Signed-off-by: Andreas Dilger <[email protected]>
---
 drivers/staging/lustre/lustre/llite/llite_lib.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/lustre/lustre/llite/llite_lib.c 
b/drivers/staging/lustre/lustre/llite/llite_lib.c
index dbcb7bd..379625c 100644
--- a/drivers/staging/lustre/lustre/llite/llite_lib.c
+++ b/drivers/staging/lustre/lustre/llite/llite_lib.c
@@ -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));
        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);
        md_free_lustre_md(sbi->ll_md_exp, &lmd);
        ptlrpc_req_finished(request);
@@ -1676,7 +1676,8 @@ void ll_update_inode(struct inode *inode, struct 
lustre_md *md)
                spin_unlock(&lli->lli_lock);
        }
 #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);
 
        if (body->valid & OBD_MD_FLATIME) {
@@ -2081,7 +2082,7 @@ int ll_prep_inode(struct inode **inode, struct 
ptlrpc_request *req,
                LASSERT(fid_is_sane(&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);
                if (*inode == NULL || IS_ERR(*inode)) {
 #ifdef CONFIG_FS_POSIX_ACL
-- 
1.7.9.5

_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to