Re: [RFC V2] arm64:use set_fixmap_offset to make it more clear

Will Deacon
2015-07-28T08:47:57Z

On Tue, Jul 28, 2015 at 07:31:20AM +0100, yalin wang wrote:
>
> > On Jul 24, 2015, at 19:52, yalin wang <yalin.wang2010@gmail.com> wrote:
> >
> > A little change to patch_map() function,
> > use set_fixmap_offset() to make code more clear.
> >
> > Signed-off-by: yalin wang <yalin.wang2010@gmail.com>
> > ---
> > arch/arm64/kernel/insn.c | 5 ++---
> > 1 file changed, 2 insertions(+), 3 deletions(-)
> >
> > diff --git a/arch/arm64/kernel/insn.c b/arch/arm64/kernel/insn.c
> > index dd9671c..f341866 100644
> > --- a/arch/arm64/kernel/insn.c
> > +++ b/arch/arm64/kernel/insn.c
> > @@ -101,9 +101,8 @@ static void __kprobes *patch_map(void *addr, int fixmap)
> > return addr;
> >
> > BUG_ON(!page);
> > - set_fixmap(fixmap, page_to_phys(page));
> > -
> > - return (void *) (__fix_to_virt(fixmap) + (uintaddr & ~PAGE_MASK));
> > + return (void *)set_fixmap_offset(fixmap, page_to_phys(page) +
> > + (uintaddr & ~PAGE_MASK));
> > }
> >
> > static void __kprobes patch_unmap(int fixmap)
> > --
> > 1.9.1
> >
> Marinas,
> this V2 patch can build without warning even CONFIG_DEBUG_SET_MODULE_RONX enabled,
> could you review it.
> Thanks.

I queued this already for 4.3. There's a (benign) sparse warning about the
addr parameter to patch_map being overridden by the local scope of
set_fixmap_offset which could be solved with a healthy portion of
underscores in the core code.

Will