Re: [PATCH v2 30/33] mm/vma: correct incorrect vma.h inclusion
From: Lorenzo Stoakes (ARM)
Date: Thu Jul 16 2026 - 05:46:32 EST
On Thu, Jul 16, 2026 at 10:38:00AM +0200, Vlastimil Babka (SUSE) wrote:
> On 7/10/26 22:17, Lorenzo Stoakes wrote:
> > The only files which should be including vma.h are the implementation files
> > for the core VMA logic - vma.c, vma_init.c, and vma_exec.c.
> >
> > This is in order to allow for userland testing of core VMA logic. In this
> > cases, vma_internal.h and vma.h are included, providing both the
> > dependencies upon which the core VMA logic requires and its declarations.
> >
> > Userland testable VMA logic is achieved by having separate vma_internal.h
> > implementations for userland and kernel.
> >
> > Callers other than the core VMA implementation should include internal.h
> > instead. This header does not need to include vma_internal.h as it only
> > contains the vma.h declarations, for which the includes already present
> > suffice.
> >
> > Update code to reflect this, update comments to reflect the fact there are
> > 3 VMA implementation files and document things more clearly.
> >
> > While we're here, slightly improve the language of the comment describing
> > vma_exec.c.
> >
> > No functional change intended.
> >
> > Reviewed-by: Pedro Falcato <pfalcato@xxxxxxx>
> > Reviewed-by: Gregory Price <gourry@xxxxxxxxxx>
> > Signed-off-by: Lorenzo Stoakes <ljs@xxxxxxxxxx>
>
> Reviewed-by: Vlastimil Babka (SUSE) <vbabka@xxxxxxxxxx>
Thanks!
>
> But given Mike's efforts [1] I wonder if there's a way to change the vma
> header system in the future to stop requiring users of vma functions to
> include the whole internal.h, while of course still allow the userland
> testability.
>
> [1]
> https://lore.kernel.org/all/20260709-internal-h-v1-0-956d5092782d@xxxxxxxxxx/
Yeah we can always put a (correctly formed) vma.h include in any split off headers.
There's also Pedro's suggestion (my reply to that at [0]) which I plan to do as
a follow up :)
[0]:https://lore.kernel.org/all/akzWq08xwXKqwwtq@lucifer/
>
>
Cheers, Lorenzo