Re: [PATCH][next] arm64: fix the mm build error in mm/kfence/core.c

From: Marco Elver
Date: Mon Dec 07 2020 - 09:53:04 EST


On Sun, 6 Dec 2020 at 23:08, Marco Elver <elver@xxxxxxxxxx> wrote:
> On Sun, 6 Dec 2020 at 22:23, Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
[...]
> > > ../arch/arm64/include/asm/kfence.h:12:2: error: implicit declaration of
> > > function ‘set_memory_valid’ [-Werror=implicit-function-declaration]
> > > 12 | set_memory_valid(addr, 1, !protect);
> > > | ^~~~~~~~~~~~~~~~
> > > cc1: some warnings being treated as errors
> > >
> > > which introduced by commit d54febeba2ff ("kfence: use pt_regs to
> > > generate stack trace on faults").
> > >
> > > Signed-off-by: Hui Su <sh_def@xxxxxxx>
> > > ---
> > > arch/arm64/include/asm/kfence.h | 1 +
> > > 1 file changed, 1 insertion(+)
>
> Thanks, but a patch for this is already in the -mm tree:
> https://lore.kernel.org/mm-commits/20201205011409.o9PNsRntR%25akpm@xxxxxxxxxxxxxxxxxxxx/
>
> Perhaps try the latest -next?

Although I notice that patch somehow was dropped from -mm, or maybe
I'm not looking hard enough?

> > > diff --git a/arch/arm64/include/asm/kfence.h b/arch/arm64/include/asm/kfence.h
> > > index 6c0afeeab635..4d73e34da59d 100644
> > > --- a/arch/arm64/include/asm/kfence.h
> > > +++ b/arch/arm64/include/asm/kfence.h
> > > @@ -4,6 +4,7 @@
> > > #define __ASM_KFENCE_H
> > >
> > > #include <asm/cacheflush.h>
> > > +#include <linux/set_memory.h>

I preferred the patch at

https://lore.kernel.org/mm-commits/20201205011409.o9PNsRntR%25akpm@xxxxxxxxxxxxxxxxxxxx/

because it removed <asm/cacheflush.h> and only included <asm/set_memory.h>.

I hope the right patch finds its way into the queue. :-)

Thanks,
-- Marco

> > > static inline bool arch_kfence_init_pool(void) { return true; }
> > >
> > > --
> > > 2.25.1
> >
> > Added to linux-next today. I think it actually fixes patch "arm64,
> > kfence: enable KFENCE for ARM64" since that actually introduces the
> > set_memory_valid() call?
>
> The patch that moved the declaration was after the kfence patch, so
> it'd be the other way around:
> https://lkml.kernel.org/r/X8otwahnmGQGLpge@xxxxxxxxxxxxxxxx
>
> Thanks,
> -- Marco