Re: [PATCH] mempolicy.h: Remove unnecessary header file inclusions
From: Andrew Morton
Date: Sat Dec 07 2024 - 01:00:45 EST
On Fri, 6 Dec 2024 23:53:49 +0800 Junjie Fu <fujunjie1@xxxxxx> wrote:
> Originally, linux/mempolicy.h included linux/pagemap.h because vma_migratable()
> was implemented inline within the header, requiring mapping_gfp_mask()
> function to implement vma_migratable(). Now that vma_migratable() is only
> declared in linux/mempolicy.h and its implementation has been moved to mempolicy.c,
> the inclusion of linux/pagemap.h in the header is no longer necessary.
>
> Additionally, since mempolicy.c includes internal.h, and internal.h already
> includes linux/pagemap.h, so there is no need to modify mempolicy.c after
> removing the direct inclusion of linux/pagemap.h from linux/mempolicy.h
If mempolicy.c uses things whcih are defined in pagemap.h then
mempolicy.c should include pagemap.h directly, and not rely upon such
nested includes. It's simpler, directer, expresses what's actually
happening and avoids build breakage due to ongoing header untanglings.