From 0098be684431033cb2b66e3c7619d7b31e97ba99 Mon Sep 17 00:00:00 2001 From: Qian Yingjin Date: Tue, 31 Aug 2021 17:11:42 +0800 Subject: [PATCH] EX-3636 pcc: set invalid cache state for fallback I/O When fallback I/O to Lustre (not PCC backend), it should set the cache state correctly (with *cached = false). Fixes: c3cf63c830 ("EX-3636 pcc: reset file mmaping for the file once mmaped") Signed-off-by: Qian Yingjin Change-Id: I4e7dad93c589ac8062fe6c08423bf209f08432b6 Reviewed-on: https://review.whamcloud.com/44793 Reviewed-by: Yang Sheng Tested-by: jenkins Tested-by: Maloo Reviewed-by: Andreas Dilger --- lustre/llite/pcc.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/lustre/llite/pcc.c b/lustre/llite/pcc.c index 4fe7b34..f3e68e4 100644 --- a/lustre/llite/pcc.c +++ b/lustre/llite/pcc.c @@ -2859,10 +2859,9 @@ int pcc_file_mmap(struct file *file, struct vm_area_struct *vma, ENTRY; - if (!pcc_file || !file_inode(pcc_file)->i_fop->mmap) { - *cached = false; + *cached = false; + if (!pcc_file || !file_inode(pcc_file)->i_fop->mmap) RETURN(0); - } pcc_inode_lock(inode); pcci = ll_i2pcci(inode); @@ -2925,12 +2924,9 @@ int pcc_file_mmap(struct file *file, struct vm_area_struct *vma, PFID(ll_inode2fid(inode)), vma, i_size_read(inode), vma->vm_end - vma->vm_start, vma->vm_pgoff, vma->vm_flags); - } else { - *cached = false; } out: pcc_inode_unlock(inode); - RETURN(rc); } -- 1.8.3.1