[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <97732d97-06a7-9307-7ad1-ef69d980f3d2@csgroup.eu>
Date: Fri, 17 Feb 2023 14:33:29 +0000
From: Christophe Leroy <christophe.leroy@...roup.eu>
To: Baoquan He <bhe@...hat.com>
CC: Arnd Bergmann <arnd@...db.de>,
Matthew Wilcox <willy@...radead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Christoph Hellwig <hch@...radead.org>,
Alexander Gordeev <agordeev@...ux.ibm.com>,
Kefeng Wang <wangkefeng.wang@...wei.com>,
Niklas Schnelle <schnelle@...ux.ibm.com>,
David Laight <David.Laight@...lab.com>,
Stafford Horne <shorne@...il.com>,
"James E . J . Bottomley" <James.Bottomley@...senpartnership.com>,
Helge Deller <deller@....de>,
"linux-parisc@...r.kernel.org" <linux-parisc@...r.kernel.org>
Subject: Re: [PATCH v4 12/16] parisc: mm: Convert to GENERIC_IOREMAP
Le 17/02/2023 à 15:21, Baoquan He a écrit :
> On 02/17/23 at 01:46pm, Christophe Leroy wrote:
>>
>>
>> Le 17/02/2023 à 14:31, Baoquan He a écrit :
>>> On 02/16/23 at 04:18pm, Arnd Bergmann wrote:
>>>> On Thu, Feb 16, 2023, at 16:02, Baoquan He wrote:
>>>>> On 02/16/23 at 01:50pm, Matthew Wilcox wrote:
>>>>> It's not if including asm-generic/iomap.h. The ARCH_HAS_IOREMAP_xx is to
>>>>> avoid redefinition there.
>>>>>
>>>>> include/asm-generic/iomap.h:
>>>>> ----
>>>>> #ifndef ARCH_HAS_IOREMAP_WC
>>>>> #define ioremap_wc ioremap
>>>>> #endif
>>>>
>>>> I'd change that to the usual '#ifndef ioremap_wc' in that case.
>>>
>>> Not sure if I got you. Kill all ARCH_HAS_IOREMAP_xxx in kernel? If yes,
>>> sounds like a good idea.
>>>
>>
>> At least kill that one at the first place in your series, and then the
>> other ones in a follow-up series maybe.
>
> Then we can make a preparation patch to change that in iomap.h, then
> remove all ARCH_HAS_IOREMAP_WC definition in arch. I thought to let this
> patch as is, then get rid of all ARCH_HAS_IOREMAP_xxx in a follow-up
> series. While the former is also fine to me. Thanks, Christophe.
>
> diff --git a/include/asm-generic/iomap.h b/include/asm-generic/iomap.h
> index 08237ae8b840..5fa1e9ca951c 100644
> --- a/include/asm-generic/iomap.h
> +++ b/include/asm-generic/iomap.h
> @@ -93,7 +93,7 @@ extern void __iomem *ioport_map(unsigned long port, unsigned int nr);
> extern void ioport_unmap(void __iomem *);
> #endif
>
> -#ifndef ARCH_HAS_IOREMAP_WC
> +#ifndef ioremap_wc
> #define ioremap_wc ioremap
> #endif
>
> [~]$ git grep ARCH_HAS_IOREMAP_WC
> arch/loongarch/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
> arch/mips/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
> arch/powerpc/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
> arch/x86/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
> drivers/net/ethernet/sfc/io.h:#ifdef ARCH_HAS_IOREMAP_WC
> drivers/net/ethernet/sfc/siena/io.h:#ifdef ARCH_HAS_IOREMAP_WC
> include/asm-generic/iomap.h:#ifndef ARCH_HAS_IOREMAP_WC
>
>
Not so many:
$ git grep ARCH_HAS_IOREMAP_WC | grep define
arch/loongarch/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
arch/mips/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
arch/powerpc/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
arch/x86/include/asm/io.h:#define ARCH_HAS_IOREMAP_WC
And also make sure they define ioremap_wc :
$ git grep "define ioremap_wc" `git grep -l "define ARCH_HAS_IOREMAP_WC"`
arch/loongarch/include/asm/io.h:#define ioremap_wc(offset, size) \
arch/mips/include/asm/io.h:#define ioremap_wc(offset, size)
\
arch/powerpc/include/asm/io.h:#define ioremap_wc ioremap_wc
arch/x86/include/asm/io.h:#define ioremap_wc ioremap_wc
Christophe
Powered by blists - more mailing lists