> On Jul 25, 2023, at 11:09, Qi Zheng <zhengqi.arch@xxxxxxxxxxxxx> wrote: > > > > On 2023/7/25 10:35, Muchun Song wrote: >>> On Jul 24, 2023, at 17:43, Qi Zheng <zhengqi.arch@xxxxxxxxxxxxx> wrote: >>> >>> The mm/vmscan.c file is too large, so separate the shrinker-related >>> code from it into a separate file. No functional changes. >>> >>> Signed-off-by: Qi Zheng <zhengqi.arch@xxxxxxxxxxxxx> >>> --- >>> include/linux/shrinker.h | 3 + >>> mm/Makefile | 4 +- >>> mm/shrinker.c | 707 +++++++++++++++++++++++++++++++++++++++ >>> mm/vmscan.c | 701 -------------------------------------- >>> 4 files changed, 712 insertions(+), 703 deletions(-) >>> create mode 100644 mm/shrinker.c >>> >>> diff --git a/include/linux/shrinker.h b/include/linux/shrinker.h >>> index 224293b2dd06..961cb84e51f5 100644 >>> --- a/include/linux/shrinker.h >>> +++ b/include/linux/shrinker.h >>> @@ -96,6 +96,9 @@ struct shrinker { >>> */ >>> #define SHRINKER_NONSLAB (1 << 3) >>> >>> +unsigned long shrink_slab(gfp_t gfp_mask, int nid, struct mem_cgroup *memcg, >>> + int priority); >> A good cleanup, vmscan.c is so huge. >> I'd like to introduce a new header in mm/ directory and contains those >> declarations of functions (like this and other debug function in >> shrinker_debug.c) since they are used internally across mm. > > How about putting them in the mm/internal.h file? Either is fine to me. > >> Thanks.