Details
-
Improvement
-
Resolution: Unresolved
-
Minor
-
None
-
None
-
None
-
3
-
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.