Re: [PATCH v1 1/2] ACPI / boot: Correct address space of __acpi_map_table()

From: Andy Shevchenko
Date: Mon Jul 17 2017 - 06:02:57 EST


On Mon, 2017-07-17 at 12:57 +0300, Andy Shevchenko wrote:
> On Mon, Jul 17, 2017 at 12:49 PM, Hanjun Guo <guohanjun@xxxxxxxxxx>
> wrote:
> > On 2017/7/8 23:50, Andy Shevchenko wrote:
> > > Sparse complains about wrong address space used in
> > > __acpi_map_table()
> > > and in __acpi_unmap_table().
> > >
> > > arch/x86/kernel/acpi/boot.c:127:29: warning: incorrect type in
> > > return expression (different address spaces)
> > > arch/x86/kernel/acpi/boot.c:127:29:ÂÂÂÂexpected char *
> > > arch/x86/kernel/acpi/boot.c:127:29:ÂÂÂÂgot void [noderef] <asn:2>*
> > > arch/x86/kernel/acpi/boot.c:135:23: warning: incorrect type in
> > > argument 1 (different address spaces)
> > > arch/x86/kernel/acpi/boot.c:135:23:ÂÂÂÂexpected void [noderef]
> > > <asn:2>*addr
> > > arch/x86/kernel/acpi/boot.c:135:23:ÂÂÂÂgot char *map
> > >
> > > Correct address space to be in align of type of returned and
> > > passed
> > > parameter.
> > > -char * __acpi_map_table (unsigned long phys_addr, unsigned long
> > > size);
> > > -void __acpi_unmap_table(char *map, unsigned long size);
> > > +void __iomem *__acpi_map_table(unsigned long phys_addr, unsigned
> > > long size);
> > > +void __acpi_unmap_table(void __iomem *map, unsigned long size);
> >
> > This breaks ACPI compile on ARM64 as ARM64 has its definition for
> > those
> > two functions,
>
> Oops, missed that, sorry.
>
> > I see patches in linux-next already, should I add a patch on top
> > to fix it, or this patch should be respined?
>
> Whatever Rafael prefers. I'm fine with either.
> I have more patches against that c-file, perhaps better to respin.

I missed ia64 too :-(

--
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy