> 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. Thanks.