Re: [PATCH v3 11/11] xtensa: mm: Convert to GENERIC_IOREMAP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/10/22 at 12:12am, kernel test robot wrote:
> Hi Baoquan,
> 
> I love your patch! Yet something to improve:
> 
> [auto build test ERROR on linus/master]
> [also build test ERROR on next-20221007]
> [cannot apply to akpm-mm/mm-everything openrisc/for-next deller-parisc/for-next s390/features v6.0]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
> 
> url:    https://github.com/intel-lab-lkp/linux/commits/Baoquan-He/mm-ioremap-Convert-architectures-to-take-GENERIC_IOREMAP-way/20221009-183524
> base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git a6afa4199d3d038fbfdff5511f7523b0e30cb774
> config: xtensa-nommu_kc705_defconfig
> compiler: xtensa-de212-linux-gcc (GCC) 12.1.0
> reproduce (this is a W=1 build):
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # https://github.com/intel-lab-lkp/linux/commit/1330d435c818ccf34bf24ceb36ef6acb1128cf6c
>         git remote add linux-review https://github.com/intel-lab-lkp/linux
>         git fetch --no-tags linux-review Baoquan-He/mm-ioremap-Convert-architectures-to-take-GENERIC_IOREMAP-way/20221009-183524
>         git checkout 1330d435c818ccf34bf24ceb36ef6acb1128cf6c
>         # save the config file
>         mkdir build_dir && cp config build_dir/.config
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=xtensa prepare
> 
> If you fix the issue, kindly add following tag where applicable
> | Reported-by: kernel test robot <lkp@xxxxxxxxx>
> 
> All errors (new ones prefixed by >>):
> 
>    In file included from include/linux/io.h:13,
>                     from include/linux/irq.h:20,
>                     from include/asm-generic/hardirq.h:17,
>                     from ./arch/xtensa/include/generated/asm/hardirq.h:1,
>                     from include/linux/hardirq.h:11,
>                     from include/linux/interrupt.h:11,
>                     from include/linux/kernel_stat.h:9,
>                     from include/linux/cgroup.h:26,
>                     from include/linux/memcontrol.h:13,
>                     from include/linux/swap.h:9,
>                     from include/linux/suspend.h:5,
>                     from arch/xtensa/kernel/asm-offsets.c:24:
>    arch/xtensa/include/asm/io.h: In function 'ioremap_cache':
> >> arch/xtensa/include/asm/io.h:56:55: error: 'XCHAL_KIO_CACHED_VADDR' undeclared (first use in this function); did you mean 'XCHAL_KIO_BYPASS_VADDR'?
>       56 |                 return (void*)(offset-XCHAL_KIO_PADDR+XCHAL_KIO_CACHED_VADDR);
>          |                                                       ^~~~~~~~~~~~~~~~~~~~~~
>          |                                                       XCHAL_KIO_BYPASS_VADDR
>    arch/xtensa/include/asm/io.h:56:55: note: each undeclared identifier is reported only once for each function it appears in
>    make[2]: *** [scripts/Makefile.build:118: arch/xtensa/kernel/asm-offsets.s] Error 1
>    make[2]: Target '__build' not remade because of errors.
>    make[1]: *** [Makefile:1276: prepare0] Error 2
>    make[1]: Target 'prepare' not remade because of errors.
>    make: *** [Makefile:231: __sub-make] Error 2
>    make: Target 'prepare' not remade because of errors.

Thanks for reporting.

With the provided nommu config, I reproduced above compiling error and
fix it with below change. I will merge it to the xtensa patch in v4 post.
=====
In <asm/io.h>, the io memory mapping funcions should be wrapped inside
CONFIG_MMU ifdeffery scope. Otherwise it will cause compiling error
when nommu is enabled.
Signed-off-by: Baoquan He <bhe@xxxxxxxxxx>
Reported-by: kernel test robot <lkp@xxxxxxxxx>

diff --git a/arch/xtensa/include/asm/io.h b/arch/xtensa/include/asm/io.h
index 126af8de5722..3331de4e692d 100644
--- a/arch/xtensa/include/asm/io.h
+++ b/arch/xtensa/include/asm/io.h
@@ -24,6 +24,7 @@
 #define IO_SPACE_LIMIT ~0
 #define PCI_IOBASE		((void __iomem *)XCHAL_KIO_BYPASS_VADDR)
 
+#ifdef CONFIG_MMU
 /*
  * I/O memory mapping functions.
  */
@@ -59,6 +60,7 @@ static inline void __iomem *ioremap_cache(unsigned long offset,
 
 }
 #define ioremap_cache ioremap_cache
+#endif /* CONFIG_MMU */
 
 #include <asm-generic/io.h>
 





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux