Hi Russell, On Sun, 3 Sep 2017 23:21:52 +0100 Russell King - ARM Linux <linux@xxxxxxxxxxxxxxx> wrote: > On Thu, Aug 17, 2017 at 04:15:00PM +0900, Masami Hiramatsu wrote: > > Cleanup in_exception_text() using memory_contains() and > > move it in asm/sections.h from asm/trap.h because > > section symbols and memory_contains() are defined in > > asm/sections.h. > > > > Signed-off-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx> > > --- > > arch/arm/include/asm/sections.h | 17 +++++++++++++++++ > > arch/arm/include/asm/traps.h | 22 +--------------------- > > 2 files changed, 18 insertions(+), 21 deletions(-) > > > > diff --git a/arch/arm/include/asm/sections.h b/arch/arm/include/asm/sections.h > > index 803bbf2b20b8..76791cfc7619 100644 > > --- a/arch/arm/include/asm/sections.h > > +++ b/arch/arm/include/asm/sections.h > > @@ -4,5 +4,22 @@ > > #include <asm-generic/sections.h> > > > > extern char _exiprom[]; > > +extern char __exception_text_start[], __exception_text_end[]; > > + > > +/** > > + * in_exception_text - check if an address is in exception_text or > > + * irqentry_text > > + * @addr: virtual address to be checked > > + * > > + * Returns: true if the address specified by @addr is in the exception_text or > > + * irqentry_text, false otherwise. > > + */ > > +static inline bool in_exception_text(unsigned long addr) > > +{ > > + return memory_contains(__exception_text_start, __exception_text_end, > > + (void *)addr, 0) || > > + memory_contains(__irqentry_text_start, __irqentry_text_end, > > + (void *)addr, 0); > > Patch looks buggy - where is __irqentry_text_start and __irqentry_text_end > declared? Those are declared in asm-generic/sections.h by below patch (on -tip tree) https://patchwork.kernel.org/patch/9878033/ So, I thougt it was a good time to clean up related code. Thank you, -- Masami Hiramatsu <mhiramat@xxxxxxxxxx>