[LU-17001] PCC: disable mmap conversion for the kernel newer than v6.0 Created: 28/Jul/23  Updated: 29/Jul/23

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Minor
Reporter: Qian Yingjin Assignee: Qian Yingjin
Resolution: Unresolved Votes: 0
Labels: None

Issue Links:
Related
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

PCC has implemented mmap page conversion for performance reason. However, due to it is not stable, it is disabled by default.

The Lustre build mets some failure against the newer kernel such as ubuntu 2204 kernel 6.2.0-26-generic:

 CC [M]  /root/lustre-release-ex/lustre/llite/pcc.o
/root/lustre-release-ex/lustre/llite/pcc.c: In function ‘pcc_mmap_pages_convert’:
/root/lustre-release-ex/lustre/llite/pcc.c:3041:28: error: implicit declaration of function ‘pagevec_lookup’; did you mean ‘pagevec_lookup_tag’? [-Werror=implicit-function-declaration]
 3041 |                 nr_pages = pagevec_lookup(&pvec, pcc_inode->i_mapping, index,
      |                            ^~~~~~~~~~~~~~
      |                            pagevec_lookup_tag
/root/lustre-release-ex/lustre/llite/pcc.c:3061:30: error: implicit declaration of function ‘add_to_page_cache_locked’; did you mean ‘add_to_page_cache_lru’? [-Werror=implicit-function-declaration]
 3061 |                         rc = add_to_page_cache_locked(page, inode->i_mapping,
      |                              ^~~~~~~~~~~~~~~~~~~~~~~~
      |                              add_to_page_cache_lru
cc1: all warnings being treated as errors
make[6]: *** [scripts/Makefile.build:260: /root/lustre-release-ex/lustre/llite/pcc.o] Error 1

To simply the solution for this build problem, we disable mmap_conv option for PCC on the newer kernel that does not have @add_to_page_cache_locked exported.


Generated at Sat Feb 10 03:31:47 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.