From: Baoquan He <bhe@redhat.com>
To: Mike Rapoport <rppt@kernel.org>
Cc: kernel test robot <lkp@intel.com>,
linux-kernel@vger.kernel.org, llvm@lists.linux.dev,
oe-kbuild-all@lists.linux.dev, linux-arch@vger.kernel.org,
linux-mm@kvack.org, arnd@arndb.de, christophe.leroy@csgroup.eu,
hch@lst.de, willy@infradead.org, agordeev@linux.ibm.com,
wangkefeng.wang@huawei.com, schnelle@linux.ibm.com,
David.Laight@aculab.com, shorne@gmail.com, deller@gmx.de,
Brian Cain <bcain@quicinc.com>,
linux-hexagon@vger.kernel.org
Subject: Re: [PATCH v6 02/19] hexagon: mm: Convert to GENERIC_IOREMAP
Date: Sun, 11 Jun 2023 15:57:32 +0800 [thread overview]
Message-ID: <ZIV+bD1ksJz0CTz2@MiWiFi-R3L-srv> (raw)
In-Reply-To: <20230611054019.GL52412@kernel.org>
On 06/11/23 at 08:40am, Mike Rapoport wrote:
> Hi Baoquan,
>
> On Sat, Jun 10, 2023 at 04:26:21PM +0800, Baoquan He wrote:
> > On 06/09/23 at 07:09pm, kernel test robot wrote:
> > > Hi Baoquan,
> > >
> > > kernel test robot noticed the following build errors:
> > >
> > > [auto build test ERROR on akpm-mm/mm-everything]
> > >
> > > url: https://github.com/intel-lab-lkp/linux/commits/Baoquan-He/asm-generic-iomap-h-remove-ARCH_HAS_IOREMAP_xx-macros/20230609-160014
> > > base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
> > > patch link: https://lore.kernel.org/r/20230609075528.9390-3-bhe%40redhat.com
> > > patch subject: [PATCH v6 02/19] hexagon: mm: Convert to GENERIC_IOREMAP
> > > config: hexagon-randconfig-r041-20230608 (https://download.01.org/0day-ci/archive/20230609/202306091859.NhlW2nny-lkp@intel.com/config)
> > > compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project.git 4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a)
> > > reproduce (this is a W=1 build):
> > > mkdir -p ~/bin
> > > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> > > chmod +x ~/bin/make.cross
> > > git remote add akpm-mm https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git
> > > git fetch akpm-mm mm-everything
> > > git checkout akpm-mm/mm-everything
> > > b4 shazam https://lore.kernel.org/r/20230609075528.9390-3-bhe@redhat.com
> > > # save the config file
> > > mkdir build_dir && cp config build_dir/.config
> > > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=hexagon olddefconfig
> > > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 O=build_dir ARCH=hexagon prepare
> > >
> > > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > > the same patch/commit), kindly add following tags
> > > | Reported-by: kernel test robot <lkp@intel.com>
> > > | Closes: https://lore.kernel.org/oe-kbuild-all/202306091859.NhlW2nny-lkp@intel.com/
> >
> > Thanks for reporting. I reproduced them on my local machine. Below patch
> > can fix them. And by the way, I also saw the clone3 warning, and have to
> > made change in scripts/checksyscalls.sh to mute it, wondering how you
> > handle it in your testing.
>
> I think the warning kbuild reported is rather this one:
>
> >> include/asm-generic/io.h:1078:6: error: conflicting types for 'iounmap'
> 1078 | void iounmap(volatile void __iomem *addr);
> | ^
This one is reported as error. The old iounmap() declaration has a const,
while the standard one doesn't have. So I just remove the old one to use
the standard one.
Another one is warning about PCI_IOBASE. Because inb/w/l and outb/w/l is
redefined in asm-generic/io.h, and it uses PCI_IOBASE which is defniend
as NULL in asm-generic/io.h if ARCH doesn't have its own PCI_IOBASE
definition. Then the warning is triggered. So I define macro to override
the standard inb/w/l and outb/w/l.
#ifndef PCI_IOBASE
#define PCI_IOBASE ((void __iomem *)0)
#endif
> > ------
> > stdin>:1520:2: warning: syscall clone3 not implemented [-W#warnings]
> > 1520 | #warning syscall clone3 not implemented
> > | ^
> > 1 warning generated.
> >
> > ------
> > diff --git a/scripts/checksyscalls.sh b/scripts/checksyscalls.sh
> > index 1e5d2eeb726d..3a369b78edb7 100755
> > --- a/scripts/checksyscalls.sh
> > +++ b/scripts/checksyscalls.sh
> > @@ -148,6 +148,7 @@ cat << EOF
> > #define __IGNORE_nanosleep
> > #define __IGNORE_io_getevents
> > #define __IGNORE_recvmmsg
> > +#define __IGNORE_clone3
> > #endif
> >
> >
> > From 6a86f4360a61a2b7b4d71172e5c03be554367553 Mon Sep 17 00:00:00 2001
> > From: root <root@dell-pem620-01.dell2.lab.eng.bos.redhat.com>
> > Date: Fri, 9 Jun 2023 21:21:36 -0400
> > Subject: [PATCH] hexagon: mm: fix warning in asm/io.h
> > Content-type: text/plain
> >
> > Remove the old iounmap() declaration which is not consistent with the
> > standard one in asm-generic/io.h, let's use the standard one.
> >
> > And also add macro definition of inb/w/l and outb/w/l to override
> > the definition of them in asm-generic/io.h.
> >
> > Reported-by: kernel test robot <lkp@intel.com>
> > Signed-off-by: Baoquan He <bhe@redhat.com>
> > ---
> > arch/hexagon/include/asm/io.h | 8 ++++++--
> > scripts/checksyscalls.sh | 1 +
> > 2 files changed, 7 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/hexagon/include/asm/io.h b/arch/hexagon/include/asm/io.h
> > index dcd9cbbf5934..efe9cb00ebf8 100644
> > --- a/arch/hexagon/include/asm/io.h
> > +++ b/arch/hexagon/include/asm/io.h
> > @@ -27,8 +27,6 @@
> > extern int remap_area_pages(unsigned long start, unsigned long phys_addr,
> > unsigned long end, unsigned long flags);
> >
> > -extern void iounmap(const volatile void __iomem *addr);
> > -
> > /* Defined in lib/io.c, needed for smc91x driver. */
> > extern void __raw_readsw(const void __iomem *addr, void *data, int wordlen);
> > extern void __raw_writesw(void __iomem *addr, const void *data, int wordlen);
> > @@ -207,16 +205,19 @@ static inline void memset_io(volatile void __iomem *addr, int value,
> > *
> > * Operates on "I/O bus I/O space"
> > */
> > +#define inb inb
> > static inline u8 inb(unsigned long port)
> > {
> > return readb(_IO_BASE + (port & IO_SPACE_LIMIT));
> > }
> >
> > +#define inw inw
> > static inline u16 inw(unsigned long port)
> > {
> > return readw(_IO_BASE + (port & IO_SPACE_LIMIT));
> > }
> >
> > +#define inl inl
> > static inline u32 inl(unsigned long port)
> > {
> > return readl(_IO_BASE + (port & IO_SPACE_LIMIT));
> > @@ -227,16 +228,19 @@ static inline u32 inl(unsigned long port)
> > * @data: data to write to
> > * @addr: address in I/O space
> > */
> > +#define outb outb
> > static inline void outb(u8 data, unsigned long port)
> > {
> > writeb(data, _IO_BASE + (port & IO_SPACE_LIMIT));
> > }
> >
> > +#define outw outw
> > static inline void outw(u16 data, unsigned long port)
> > {
> > writew(data, _IO_BASE + (port & IO_SPACE_LIMIT));
> > }
> >
> > +#define outl outl
> > static inline void outl(u32 data, unsigned long port)
> > {
> > writel(data, _IO_BASE + (port & IO_SPACE_LIMIT));
> >
>
> --
> Sincerely yours,
> Mike.
>
next prev parent reply other threads:[~2023-06-11 7:58 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-09 7:55 [PATCH v6 00/19] mm: ioremap: Convert architectures to take GENERIC_IOREMAP way Baoquan He
2023-06-09 7:55 ` [PATCH v6 01/19] asm-generic/iomap.h: remove ARCH_HAS_IOREMAP_xx macros Baoquan He
2023-06-09 7:55 ` [PATCH v6 02/19] hexagon: mm: Convert to GENERIC_IOREMAP Baoquan He
2023-06-09 11:09 ` kernel test robot
2023-06-10 8:26 ` Baoquan He
2023-06-11 5:40 ` Mike Rapoport
2023-06-11 7:57 ` Baoquan He [this message]
2023-06-12 16:02 ` Nathan Chancellor
2023-06-16 12:46 ` Baoquan He
2023-06-09 7:55 ` [PATCH v6 03/19] openrisc: mm: remove unneeded early ioremap code Baoquan He
2023-06-10 6:24 ` Christoph Hellwig
2023-06-11 5:44 ` Mike Rapoport
2023-06-09 7:55 ` [PATCH v6 04/19] mm/ioremap: Define generic_ioremap_prot() and generic_iounmap() Baoquan He
2023-06-10 6:24 ` Christoph Hellwig
2023-06-09 7:55 ` [PATCH v6 05/19] mm: ioremap: allow ARCH to have its own ioremap method definition Baoquan He
2023-06-09 7:55 ` [PATCH v6 06/19] mm/ioremap: add slab availability checking in ioremap_prot Baoquan He
2023-06-09 7:55 ` [PATCH v6 07/19] arc: mm: Convert to GENERIC_IOREMAP Baoquan He
2023-06-09 7:55 ` Baoquan He
2023-06-09 7:55 ` [PATCH v6 08/19] ia64: " Baoquan He
2023-06-09 7:55 ` [PATCH v6 09/19] openrisc: " Baoquan He
2023-06-10 6:25 ` Christoph Hellwig
2023-06-11 5:46 ` Mike Rapoport
2023-06-09 7:55 ` [PATCH v6 10/19] s390: " Baoquan He
2023-06-09 15:41 ` kernel test robot
2023-06-09 17:42 ` kernel test robot
2023-06-09 17:42 ` kernel test robot
2023-06-11 11:10 ` Baoquan He
2023-06-21 14:53 ` Alexander Gordeev
2023-06-09 7:55 ` [PATCH v6 11/19] sh: add <asm-generic/io.h> including Baoquan He
2023-06-09 8:10 ` John Paul Adrian Glaubitz
2023-06-09 8:34 ` Baoquan He
2023-06-09 7:55 ` [PATCH v6 12/19] sh: mm: Convert to GENERIC_IOREMAP Baoquan He
2023-06-09 7:55 ` [PATCH v6 13/19] xtensa: " Baoquan He
2023-06-09 7:55 ` [PATCH v6 14/19] parisc: " Baoquan He
2023-06-19 5:47 ` Helge Deller
2023-06-09 7:55 ` [PATCH v6 15/19] mm/ioremap: Consider IOREMAP space in generic ioremap Baoquan He
2023-06-10 6:26 ` Christoph Hellwig
2023-06-09 7:55 ` [PATCH v6 16/19] mm: move is_ioremap_addr() into new header file Baoquan He
2023-06-09 7:55 ` [PATCH v6 17/19] powerpc: mm: Convert to GENERIC_IOREMAP Baoquan He
2023-06-09 7:55 ` Baoquan He
2023-06-09 7:55 ` [PATCH v6 18/19] arm64 : mm: add wrapper function ioremap_prot() Baoquan He
2023-06-09 7:55 ` Baoquan He
2023-06-14 15:14 ` Catalin Marinas
2023-06-14 15:14 ` Catalin Marinas
2023-06-09 7:55 ` [PATCH v6 19/19] mm: ioremap: remove unneeded ioremap_allowed and iounmap_allowed Baoquan He
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZIV+bD1ksJz0CTz2@MiWiFi-R3L-srv \
--to=bhe@redhat.com \
--cc=David.Laight@aculab.com \
--cc=agordeev@linux.ibm.com \
--cc=arnd@arndb.de \
--cc=bcain@quicinc.com \
--cc=christophe.leroy@csgroup.eu \
--cc=deller@gmx.de \
--cc=hch@lst.de \
--cc=linux-arch@vger.kernel.org \
--cc=linux-hexagon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lkp@intel.com \
--cc=llvm@lists.linux.dev \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=rppt@kernel.org \
--cc=schnelle@linux.ibm.com \
--cc=shorne@gmail.com \
--cc=wangkefeng.wang@huawei.com \
--cc=willy@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.