On Sat, Aug 24, 2024 at 05:05:10PM GMT, SeongJae Park wrote: > Hello, > > On Sat, 24 Aug 2024 20:43:25 +0100 Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx> wrote: [snip] > > From 565ad376b0a3aa5822ef479faadff271e90ba51c Mon Sep 17 00:00:00 2001 > > From: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx> > > Date: Sat, 24 Aug 2024 20:20:17 +0100 > > Subject: [PATCH] mm: include linux/pgtable.h in vma_internal.h > > > > For some arches this is required in order to have access to > > USER_PGTABLES_CEILING and FIRST_USER_ADDRESS. > > > > Reported-by: kernel test robot <lkp@xxxxxxxxx> > > Closes: https://lore.kernel.org/oe-kbuild-all/202408242348.uGvgH9tt-lkp@xxxxxxxxx/ > > Closes: https://lore.kernel.org/oe-kbuild-all/202408242304.1A1fXTgE-lkp@xxxxxxxxx/ > > Signed-off-by: Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx> > > --- > > mm/vma_internal.h | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/mm/vma_internal.h b/mm/vma_internal.h > > index b930ab12a587..971b13e880c9 100644 > > --- a/mm/vma_internal.h > > +++ b/mm/vma_internal.h > > @@ -33,6 +33,7 @@ > > #include <linux/mutex.h> > > #include <linux/pagemap.h> > > #include <linux/pfn.h> > > +#include <linux/pgtable.h> > > #include <linux/rcupdate.h> > > #include <linux/rmap.h> > > #include <linux/rwsem.h> > > -- > > 2.46.0 > > Even after applying the above patch, I get similar errors when CONFIG_MMU is > unset[1], as below. Maybe the case should also be handled? > > In file included from /lib/../mm/internal.h:22:0, > from /lib/vsprintf.c:50: > /lib/../mm/vma.h: In function 'init_vma_munmap': > /lib/../mm/vma.h:113:21: error: 'FIRST_USER_ADDRESS' undeclared (first use in this function); did you mean 'IFLA_PERM_ADDRESS'? > vms->unmap_start = FIRST_USER_ADDRESS; > ^~~~~~~~~~~~~~~~~~ > IFLA_PERM_ADDRESS > /lib/../mm/vma.h:113:21: note: each undeclared identifier is reported only once for each function it appears in > /lib/../mm/vma.h:114:19: error: 'USER_PGTABLES_CEILING' undeclared (first use in this function) > vms->unmap_end = USER_PGTABLES_CEILING; > ^~~~~~~~~~~~~~~~~~~~~ > > > [1] https://github.com/damonitor/damon-tests/blob/master/corr/tests/build_m68k.sh > > > Thanks, > SJ Lord, do I _love_ these museum-piece arches. Great spot though thanks. I actually build an m68k kernel locally and did not hit this, so I wonder if there's some horrible include chain going in from... lib/vsprintf.c of all places. But anyway. I checked and nommu does not compile vma.c (nor obviously does it compile mmap.c) which are the two users of init_vma_munmap(), so we're safe to just wrap this in an #ifdef CONFIG_MMU. Andrew - could you apply this simple fix patch also please? This should appease the horrors of nommu builds. Thanks! ----8<----