[drm-misc:for-linux-next 4/12] drivers/gpu/drm/vmwgfx/vmwgfx_gem.c:230:33: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'size_t' {aka 'unsigned int'}
by kernel test robot
tree: git://anongit.freedesktop.org/drm/drm-misc for-linux-next
head: 94eb7de6f4bec1c8bb99371c21df42cac0de6ee9
commit: 8afa13a0583f94c14607e3041c02f068ac8fb628 [4/12] drm/vmwgfx: Implement DRIVER_GEM
config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20211210/202112100931.0DNGyGGp-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
git remote add drm-misc git://anongit.freedesktop.org/drm/drm-misc
git fetch --no-tags drm-misc for-linux-next
git checkout 8afa13a0583f94c14607e3041c02f068ac8fb628
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/vmwgfx/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/gpu/drm/vmwgfx/vmwgfx_gem.c: In function 'vmw_bo_print_info':
>> drivers/gpu/drm/vmwgfx/vmwgfx_gem.c:230:33: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'size_t' {aka 'unsigned int'} [-Wformat=]
230 | seq_printf(m, "\t\t0x%08x: %12ld bytes %s, type = %s",
| ~~~~^
| |
| long int
| %12d
231 | id, bo->base.base.size, placement, type);
| ~~~~~~~~~~~~~~~~~~
| |
| size_t {aka unsigned int}
vim +230 drivers/gpu/drm/vmwgfx/vmwgfx_gem.c
188
189 static void vmw_bo_print_info(int id, struct vmw_buffer_object *bo, struct seq_file *m)
190 {
191 const char *placement;
192 const char *type;
193
194 switch (bo->base.resource->mem_type) {
195 case TTM_PL_SYSTEM:
196 placement = " CPU";
197 break;
198 case VMW_PL_GMR:
199 placement = " GMR";
200 break;
201 case VMW_PL_MOB:
202 placement = " MOB";
203 break;
204 case VMW_PL_SYSTEM:
205 placement = "VCPU";
206 break;
207 case TTM_PL_VRAM:
208 placement = "VRAM";
209 break;
210 default:
211 placement = "None";
212 break;
213 }
214
215 switch (bo->base.type) {
216 case ttm_bo_type_device:
217 type = "device";
218 break;
219 case ttm_bo_type_kernel:
220 type = "kernel";
221 break;
222 case ttm_bo_type_sg:
223 type = "sg ";
224 break;
225 default:
226 type = "none ";
227 break;
228 }
229
> 230 seq_printf(m, "\t\t0x%08x: %12ld bytes %s, type = %s",
231 id, bo->base.base.size, placement, type);
232 seq_printf(m, ", priority = %u, pin_count = %u, GEM refs = %d, TTM refs = %d",
233 bo->base.priority,
234 bo->base.pin_count,
235 kref_read(&bo->base.base.refcount),
236 kref_read(&bo->base.kref));
237 seq_puts(m, "\n");
238 }
239
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 2 weeks
[intel-lts:5.10/KMB-yocto 58/62] drivers/spi/spi-dw-core.c:507:2: error: implicit declaration of function 'dw_spi_dual_quad_config'
by kernel test robot
tree: https://github.com/intel/linux-intel-lts.git 5.10/KMB-yocto
head: afd0620ed0e5ce91d03f51deb2e551721ba97640
commit: de6f8390867e1796aa6ad8d0603a8c7676e54fac [58/62] SPI DUAL QUAD mode fixes for Designware SPI
config: riscv-randconfig-r042-20211209 (https://download.01.org/0day-ci/archive/20211210/202112100716.eAbKARVp-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 097a1cb1d5ebb3a0ec4bcaed8ba3ff6a8e33c00a)
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
# install riscv cross compiling tool for clang build
# apt-get install binutils-riscv64-linux-gnu
# https://github.com/intel/linux-intel-lts/commit/de6f8390867e1796aa6ad8d06...
git remote add intel-lts https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-lts 5.10/KMB-yocto
git checkout de6f8390867e1796aa6ad8d0603a8c7676e54fac
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/spi/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from drivers/spi/spi-dw-core.c:8:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/riscv/include/asm/io.h:149:
include/asm-generic/io.h:556:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
return inb(addr);
^~~~~~~~~
arch/riscv/include/asm/io.h:55:76: note: expanded from macro 'inb'
#define inb(c) ({ u8 __v; __io_pbr(); __v = readb_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:87:48: note: expanded from macro 'readb_cpu'
#define readb_cpu(c) ({ u8 __r = __raw_readb(c); __r; })
^
In file included from drivers/spi/spi-dw-core.c:8:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/riscv/include/asm/io.h:149:
include/asm-generic/io.h:564:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
return inw(addr);
^~~~~~~~~
arch/riscv/include/asm/io.h:56:76: note: expanded from macro 'inw'
#define inw(c) ({ u16 __v; __io_pbr(); __v = readw_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:88:76: note: expanded from macro 'readw_cpu'
#define readw_cpu(c) ({ u16 __r = le16_to_cpu((__force __le16)__raw_readw(c)); __r; })
^
include/uapi/linux/byteorder/little_endian.h:36:51: note: expanded from macro '__le16_to_cpu'
#define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
^
In file included from drivers/spi/spi-dw-core.c:8:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/riscv/include/asm/io.h:149:
include/asm-generic/io.h:572:9: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
return inl(addr);
^~~~~~~~~
arch/riscv/include/asm/io.h:57:76: note: expanded from macro 'inl'
#define inl(c) ({ u32 __v; __io_pbr(); __v = readl_cpu((void*)(PCI_IOBASE + (c))); __io_par(__v); __v; })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:89:76: note: expanded from macro 'readl_cpu'
#define readl_cpu(c) ({ u32 __r = le32_to_cpu((__force __le32)__raw_readl(c)); __r; })
^
include/uapi/linux/byteorder/little_endian.h:34:51: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
^
In file included from drivers/spi/spi-dw-core.c:8:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/riscv/include/asm/io.h:149:
include/asm-generic/io.h:580:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
outb(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:59:68: note: expanded from macro 'outb'
#define outb(v,c) ({ __io_pbw(); writeb_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:91:52: note: expanded from macro 'writeb_cpu'
#define writeb_cpu(v, c) ((void)__raw_writeb((v), (c)))
^
In file included from drivers/spi/spi-dw-core.c:8:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/riscv/include/asm/io.h:149:
include/asm-generic/io.h:588:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
outw(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:60:68: note: expanded from macro 'outw'
#define outw(v,c) ({ __io_pbw(); writew_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:92:76: note: expanded from macro 'writew_cpu'
#define writew_cpu(v, c) ((void)__raw_writew((__force u16)cpu_to_le16(v), (c)))
^
In file included from drivers/spi/spi-dw-core.c:8:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/riscv/include/asm/io.h:149:
include/asm-generic/io.h:596:2: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
outl(value, addr);
^~~~~~~~~~~~~~~~~
arch/riscv/include/asm/io.h:61:68: note: expanded from macro 'outl'
#define outl(v,c) ({ __io_pbw(); writel_cpu((v),(void*)(PCI_IOBASE + (c))); __io_paw(); })
~~~~~~~~~~ ^
arch/riscv/include/asm/mmio.h:93:76: note: expanded from macro 'writel_cpu'
#define writel_cpu(v, c) ((void)__raw_writel((__force u32)cpu_to_le32(v), (c)))
^
In file included from drivers/spi/spi-dw-core.c:8:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/riscv/include/asm/io.h:149:
include/asm-generic/io.h:1005:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
~~~~~~~~~~ ^
>> drivers/spi/spi-dw-core.c:507:2: error: implicit declaration of function 'dw_spi_dual_quad_config' [-Werror,-Wimplicit-function-declaration]
dw_spi_dual_quad_config(dws, spi, &cfg, transfer);
^
7 warnings and 1 error generated.
vim +/dw_spi_dual_quad_config +507 drivers/spi/spi-dw-core.c
478
479 static int dw_spi_transfer_one(struct spi_controller *master,
480 struct spi_device *spi, struct spi_transfer *transfer)
481 {
482 struct dw_spi *dws = spi_controller_get_devdata(master);
483 struct dw_spi_cfg cfg = {
484 .tmode = SPI_TMOD_TR,
485 .dfs = transfer->bits_per_word,
486 .freq = transfer->speed_hz,
487 };
488 int ret;
489
490 dws->dma_mapped = 0;
491 dws->n_bytes = DIV_ROUND_UP(transfer->bits_per_word, BITS_PER_BYTE);
492 dws->tx = (void *)transfer->tx_buf;
493 dws->rx = transfer->rx_buf;
494 dws->tx_len = transfer->len / dws->n_bytes;
495 if (dws->rx)
496 dws->rx_len = dws->tx_len;
497 else {
498 cfg.tmode = SPI_TMOD_TO;
499 dws->rx_len = 0;
500 }
501
502 /* Ensure the data above is visible for all CPUs */
503 smp_mb();
504
505 spi_enable_chip(dws, 0);
506
> 507 dw_spi_dual_quad_config(dws, spi, &cfg, transfer);
508
509 dw_spi_update_config(dws, spi, &cfg);
510
511 transfer->effective_speed_hz = dws->current_freq;
512
513 /* Check if current transfer is a DMA transaction */
514 if (master->can_dma && master->can_dma(master, spi, transfer))
515 dws->dma_mapped = master->cur_msg_mapped;
516
517 /* For poll mode just disable all interrupts */
518 spi_mask_intr(dws, 0xff);
519
520 if (dws->dma_mapped) {
521 ret = dws->dma_ops->dma_setup(dws, transfer);
522 if (ret)
523 return ret;
524 }
525
526 spi_enable_chip(dws, 1);
527
528 if (dws->dma_mapped)
529 return dws->dma_ops->dma_transfer(dws, transfer);
530 else if (dws->irq == IRQ_NOTCONNECTED)
531 return dw_spi_poll_transfer(dws, transfer);
532
533 dw_spi_irq_setup(dws);
534
535 return 1;
536 }
537
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 2 weeks
[ardb:for-kernelci 1/1] arch/arm/boot/compressed/head.S:315:3: error: invalid instruction, any one of the following would fix this:
by kernel test robot
tree: git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git for-kernelci
head: 3d803745c0cdcca58579eb2654530bf4be3bef72
commit: 3d803745c0cdcca58579eb2654530bf4be3bef72 [1/1] ARM: set textoffset to 4 MiB unconditionally
config: arm-randconfig-r034-20211207 (https://download.01.org/0day-ci/archive/20211210/202112100747.znK7leLP-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 097a1cb1d5ebb3a0ec4bcaed8ba3ff6a8e33c00a)
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
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?id...
git remote add ardb git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git
git fetch --no-tags ardb for-kernelci
git checkout 3d803745c0cdcca58579eb2654530bf4be3bef72
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
>> arch/arm/boot/compressed/head.S:315:3: error: invalid instruction, any one of the following would fix this:
add r4, r0, #0x00408000
^
arch/arm/boot/compressed/head.S:315:16: note: invalid operand for instruction
add r4, r0, #0x00408000
^
arch/arm/boot/compressed/head.S:315:16: note: operand must be a register in range [r0, r15]
add r4, r0, #0x00408000
^
arch/arm/boot/compressed/head.S:315:3: note: instruction requires: thumb2
add r4, r0, #0x00408000
^
arch/arm/boot/compressed/head.S:413:3: error: invalid instruction, any one of the following would fix this:
sub r0, r4, #0x00408000
^
arch/arm/boot/compressed/head.S:413:16: note: invalid operand for instruction
sub r0, r4, #0x00408000
^
arch/arm/boot/compressed/head.S:413:16: note: operand must be a register in range [r0, r15]
sub r0, r4, #0x00408000
^
arch/arm/boot/compressed/head.S:413:3: note: instruction requires: thumb2
sub r0, r4, #0x00408000
^
vim +315 arch/arm/boot/compressed/head.S
0673cb38951215 Geert Uytterhoeven 2021-01-04 300
0673cb38951215 Geert Uytterhoeven 2021-01-04 301 /*
0673cb38951215 Geert Uytterhoeven 2021-01-04 302 * Make sure we have some stack before calling C code.
0673cb38951215 Geert Uytterhoeven 2021-01-04 303 * No GOT fixup has occurred yet, but none of the code we're
0673cb38951215 Geert Uytterhoeven 2021-01-04 304 * about to call uses any global variables.
0673cb38951215 Geert Uytterhoeven 2021-01-04 305 */
0673cb38951215 Geert Uytterhoeven 2021-01-04 306 ldr sp, [r1] @ get stack location
0673cb38951215 Geert Uytterhoeven 2021-01-04 307 add sp, sp, r1 @ apply relocation
0673cb38951215 Geert Uytterhoeven 2021-01-04 308
0673cb38951215 Geert Uytterhoeven 2021-01-04 309 /* Validate calculated start against passed DTB */
0673cb38951215 Geert Uytterhoeven 2021-01-04 310 mov r1, r8
0673cb38951215 Geert Uytterhoeven 2021-01-04 311 bl fdt_check_mem_start
0673cb38951215 Geert Uytterhoeven 2021-01-04 312 1:
0673cb38951215 Geert Uytterhoeven 2021-01-04 313 #endif /* CONFIG_USE_OF */
0a6a78b8b3c1c1 Russell King 2015-03-26 314 /* Determine final kernel image address. */
0673cb38951215 Geert Uytterhoeven 2021-01-04 @315 add r4, r0, #TEXT_OFFSET
e69edc7939abda Eric Miao 2010-07-05 316 #else
9e84ed63dc71e1 Russell King 2010-09-09 317 ldr r4, =zreladdr
e69edc7939abda Eric Miao 2010-07-05 318 #endif
^1da177e4c3f41 Linus Torvalds 2005-04-16 319
2874865c1271cc Nicolas Pitre 2013-06-06 320 /*
2874865c1271cc Nicolas Pitre 2013-06-06 321 * Set up a page table only if it won't overwrite ourself.
7d57909bf69f21 Masahiro Yamada 2015-01-20 322 * That means r4 < pc || r4 - 16k page directory > &_end.
2874865c1271cc Nicolas Pitre 2013-06-06 323 * Given that r4 > &_end is most unfrequent, we add a rough
2874865c1271cc Nicolas Pitre 2013-06-06 324 * additional 1MB of room for a possible appended DTB.
2874865c1271cc Nicolas Pitre 2013-06-06 325 */
2874865c1271cc Nicolas Pitre 2013-06-06 326 mov r0, pc
2874865c1271cc Nicolas Pitre 2013-06-06 327 cmp r0, r4
691cbe5ba5f77f Ard Biesheuvel 2020-04-13 328 ldrcc r0, .Lheadroom
2874865c1271cc Nicolas Pitre 2013-06-06 329 addcc r0, r0, pc
2874865c1271cc Nicolas Pitre 2013-06-06 330 cmpcc r4, r0
2874865c1271cc Nicolas Pitre 2013-06-06 331 orrcc r4, r4, #1 @ remember we skipped cache_on
2874865c1271cc Nicolas Pitre 2013-06-06 332 blcs cache_on
6d7d0ae5157494 Nicolas Pitre 2011-02-21 333
:::::: The code at line 315 was first introduced by commit
:::::: 0673cb38951215060d7993b43ad3c45cd413c2c3 ARM: 9045/1: uncompress: Validate start of physical memory against passed DTB
:::::: TO: Geert Uytterhoeven <geert+renesas(a)glider.be>
:::::: CC: Russell King <rmk+kernel(a)armlinux.org.uk>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 2 weeks
Re: [PATCH v2 05/13] arm64: dts: qcom: Add base SM8450 QRD DTS
by kernel test robot
Hi Vinod,
I love your patch! Yet something to improve:
[auto build test ERROR on robh/for-next]
[also build test ERROR on v5.16-rc4]
[cannot apply to next-20211208]
[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]
url: https://github.com/0day-ci/linux/commits/Vinod-Koul/arm64-dts-qcom-Add-su...
base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
config: arm64-randconfig-r032-20211207 (https://download.01.org/0day-ci/archive/20211210/202112100623.XZwPiDOL-lk...)
compiler: aarch64-linux-gcc (GCC) 11.2.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/0day-ci/linux/commit/636d2456715b3aba9cf1fa47931c6e381...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Vinod-Koul/arm64-dts-qcom-Add-support-for-SM8450-SoC-and-QRD-board/20211209-183713
git checkout 636d2456715b3aba9cf1fa47931c6e381ca62e00
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm64 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from arch/arm64/boot/dts/qcom/sm8450-qrd.dts:8:
>> arch/arm64/boot/dts/qcom/sm8450.dtsi:7:10: fatal error: dt-bindings/clock/qcom,gcc-sm8450.h: No such file or directory
7 | #include <dt-bindings/clock/qcom,gcc-sm8450.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
vim +7 arch/arm64/boot/dts/qcom/sm8450.dtsi
244741584ca1ceb Vinod Koul 2021-12-09 @7 #include <dt-bindings/clock/qcom,gcc-sm8450.h>
244741584ca1ceb Vinod Koul 2021-12-09 8 #include <dt-bindings/clock/qcom,rpmh.h>
244741584ca1ceb Vinod Koul 2021-12-09 9 #include <dt-bindings/gpio/gpio.h>
244741584ca1ceb Vinod Koul 2021-12-09 10 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
244741584ca1ceb Vinod Koul 2021-12-09 11
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 2 weeks
[intel-lts:5.10/KMB-yocto 8210/8457] drivers/tty/serial/8250/8250_port.c:1890:7: warning: variable 'skip_rx' set but not used
by kernel test robot
tree: https://github.com/intel/linux-intel-lts.git 5.10/KMB-yocto
head: e00ba07ec4720ed356ee8a0ae9a1f53f754b7577
commit: a34e97d69a97d031757c8e68207de5922d211f14 [8210/8457] Bug fixes for UART
config: i386-randconfig-a013-20211209 (https://download.01.org/0day-ci/archive/20211210/202112100647.Xt7A5dsP-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 097a1cb1d5ebb3a0ec4bcaed8ba3ff6a8e33c00a)
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/linux-intel-lts/commit/a34e97d69a97d031757c8e682...
git remote add intel-lts https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-lts 5.10/KMB-yocto
git checkout a34e97d69a97d031757c8e68207de5922d211f14
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/tty/serial/8250/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/tty/serial/8250/8250_port.c:349:14: warning: no previous prototype for function 'au_serial_in' [-Wmissing-prototypes]
unsigned int au_serial_in(struct uart_port *p, int offset)
^
drivers/tty/serial/8250/8250_port.c:349:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
unsigned int au_serial_in(struct uart_port *p, int offset)
^
static
drivers/tty/serial/8250/8250_port.c:359:6: warning: no previous prototype for function 'au_serial_out' [-Wmissing-prototypes]
void au_serial_out(struct uart_port *p, int offset, int value)
^
drivers/tty/serial/8250/8250_port.c:359:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void au_serial_out(struct uart_port *p, int offset, int value)
^
static
>> drivers/tty/serial/8250/8250_port.c:1890:7: warning: variable 'skip_rx' set but not used [-Wunused-but-set-variable]
bool skip_rx = false;
^
3 warnings generated.
vim +/skip_rx +1890 drivers/tty/serial/8250/8250_port.c
33d9b8b23a73d5 Peter Hurley 2016-04-09 1881
b6830f6df8914f Peter Hurley 2015-06-27 1882 /*
b6830f6df8914f Peter Hurley 2015-06-27 1883 * This handles the interrupt from one port.
b6830f6df8914f Peter Hurley 2015-06-27 1884 */
b6830f6df8914f Peter Hurley 2015-06-27 1885 int serial8250_handle_irq(struct uart_port *port, unsigned int iir)
b6830f6df8914f Peter Hurley 2015-06-27 1886 {
b6830f6df8914f Peter Hurley 2015-06-27 1887 unsigned char status;
b6830f6df8914f Peter Hurley 2015-06-27 1888 unsigned long flags;
b6830f6df8914f Peter Hurley 2015-06-27 1889 struct uart_8250_port *up = up_to_u8250p(port);
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 @1890 bool skip_rx = false;
b6830f6df8914f Peter Hurley 2015-06-27 1891
b6830f6df8914f Peter Hurley 2015-06-27 1892 if (iir & UART_IIR_NO_INT)
b6830f6df8914f Peter Hurley 2015-06-27 1893 return 0;
b6830f6df8914f Peter Hurley 2015-06-27 1894
b6830f6df8914f Peter Hurley 2015-06-27 1895 spin_lock_irqsave(&port->lock, flags);
b6830f6df8914f Peter Hurley 2015-06-27 1896
b6830f6df8914f Peter Hurley 2015-06-27 1897 status = serial_port_in(port, UART_LSR);
b6830f6df8914f Peter Hurley 2015-06-27 1898
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1899 /*
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1900 * If port is stopped and there are no error conditions in the
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1901 * FIFO, then don't drain the FIFO, as this may lead to TTY buffer
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1902 * overflow. Not servicing, RX FIFO would trigger auto HW flow
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1903 * control when FIFO occupancy reaches preset threshold, thus
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1904 * halting RX. This only works when auto HW flow control is
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1905 * available.
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1906 */
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1907 if (!(status & (UART_LSR_FIFOE | UART_LSR_BRK_ERROR_BITS)) &&
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1908 (port->status & (UPSTAT_AUTOCTS | UPSTAT_AUTORTS)) &&
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1909 !(port->read_status_mask & UART_LSR_DR))
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1910 skip_rx = true;
f19c3f6c8109b8 Vignesh Raghavendra 2020-03-19 1911
a34e97d69a97d0 Aman Kumar 2021-03-09 1912 if (port->iir_rdi) {
a34e97d69a97d0 Aman Kumar 2021-03-09 1913 if (status & (UART_LSR_DR | UART_LSR_BI) &&
a34e97d69a97d0 Aman Kumar 2021-03-09 1914 iir & UART_IIR_RDI) {
33d9b8b23a73d5 Peter Hurley 2016-04-09 1915 if (!up->dma || handle_rx_dma(up, iir))
b6830f6df8914f Peter Hurley 2015-06-27 1916 status = serial8250_rx_chars(up, status);
b6830f6df8914f Peter Hurley 2015-06-27 1917 }
a34e97d69a97d0 Aman Kumar 2021-03-09 1918 } else {
a34e97d69a97d0 Aman Kumar 2021-03-09 1919 if (status & (UART_LSR_DR | UART_LSR_BI)) {
a34e97d69a97d0 Aman Kumar 2021-03-09 1920 if (!up->dma || handle_rx_dma(up, iir))
a34e97d69a97d0 Aman Kumar 2021-03-09 1921 status = serial8250_rx_chars(up, status);
a34e97d69a97d0 Aman Kumar 2021-03-09 1922 }
a34e97d69a97d0 Aman Kumar 2021-03-09 1923 }
b6830f6df8914f Peter Hurley 2015-06-27 1924 serial8250_modem_status(up);
db1b5bc047b3ca Rautkoski Kimmo EXT 2019-05-24 1925 if ((!up->dma || up->dma->tx_err) && (status & UART_LSR_THRE) &&
db1b5bc047b3ca Rautkoski Kimmo EXT 2019-05-24 1926 (up->ier & UART_IER_THRI))
b6830f6df8914f Peter Hurley 2015-06-27 1927 serial8250_tx_chars(up);
b6830f6df8914f Peter Hurley 2015-06-27 1928
596f63da42b928 Douglas Anderson 2018-10-30 1929 uart_unlock_and_check_sysrq(port, flags);
b6830f6df8914f Peter Hurley 2015-06-27 1930 return 1;
b6830f6df8914f Peter Hurley 2015-06-27 1931 }
b6830f6df8914f Peter Hurley 2015-06-27 1932 EXPORT_SYMBOL_GPL(serial8250_handle_irq);
b6830f6df8914f Peter Hurley 2015-06-27 1933
:::::: The code at line 1890 was first introduced by commit
:::::: f19c3f6c8109b8bab000afd35580929958e087a9 serial: 8250_port: Don't service RX FIFO if throttled
:::::: TO: Vignesh Raghavendra <vigneshr(a)ti.com>
:::::: CC: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 2 weeks
mm/page_alloc.c:8046:12: error: implicit declaration of function 'arch_alloc_nodedata'
by kernel test robot
tree: https://github.com/0day-ci/linux/commits/UPDATE-20211209-184929/Alexey-Ma...
head: 652e780546c1fdbe1adcbbe04106f4020e3bfb56
commit: 652e780546c1fdbe1adcbbe04106f4020e3bfb56 mm: fix panic in __alloc_pages
date: 11 hours ago
config: arm-randconfig-r004-20211209 (https://download.01.org/0day-ci/archive/20211210/202112100636.K5fagHTG-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 097a1cb1d5ebb3a0ec4bcaed8ba3ff6a8e33c00a)
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
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/0day-ci/linux/commit/652e780546c1fdbe1adcbbe04106f4020...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review UPDATE-20211209-184929/Alexey-Makhalov/mm-fix-panic-in-__alloc_pages/20211102-041405
git checkout 652e780546c1fdbe1adcbbe04106f4020e3bfb56
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
mm/page_alloc.c:3804:15: warning: no previous prototype for function 'should_fail_alloc_page' [-Wmissing-prototypes]
noinline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order)
^
mm/page_alloc.c:3804:10: note: declare 'static' if the function is not intended to be used outside of this translation unit
noinline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order)
^
static
>> mm/page_alloc.c:8046:12: error: implicit declaration of function 'arch_alloc_nodedata' [-Werror,-Wimplicit-function-declaration]
pgdat = arch_alloc_nodedata(nid);
^
>> mm/page_alloc.c:8046:10: warning: incompatible integer to pointer conversion assigning to 'pg_data_t *' (aka 'struct pglist_data *') from 'int' [-Wint-conversion]
pgdat = arch_alloc_nodedata(nid);
^ ~~~~~~~~~~~~~~~~~~~~~~~~
>> mm/page_alloc.c:8052:4: error: implicit declaration of function 'arch_refresh_nodedata' [-Werror,-Wimplicit-function-declaration]
arch_refresh_nodedata(nid, pgdat);
^
mm/page_alloc.c:8052:4: note: did you mean 'arch_alloc_nodedata'?
mm/page_alloc.c:8046:12: note: 'arch_alloc_nodedata' declared here
pgdat = arch_alloc_nodedata(nid);
^
2 warnings and 2 errors generated.
vim +/arch_alloc_nodedata +8046 mm/page_alloc.c
7949
7950 /**
7951 * free_area_init - Initialise all pg_data_t and zone data
7952 * @max_zone_pfn: an array of max PFNs for each zone
7953 *
7954 * This will call free_area_init_node() for each active node in the system.
7955 * Using the page ranges provided by memblock_set_node(), the size of each
7956 * zone in each node and their holes is calculated. If the maximum PFN
7957 * between two adjacent zones match, it is assumed that the zone is empty.
7958 * For example, if arch_max_dma_pfn == arch_max_dma32_pfn, it is assumed
7959 * that arch_max_dma32_pfn has no pages. It is also assumed that a zone
7960 * starts where the previous one ended. For example, ZONE_DMA32 starts
7961 * at arch_max_dma_pfn.
7962 */
7963 void __init free_area_init(unsigned long *max_zone_pfn)
7964 {
7965 unsigned long start_pfn, end_pfn;
7966 int i, nid, zone;
7967 bool descending;
7968
7969 /* Record where the zone boundaries are */
7970 memset(arch_zone_lowest_possible_pfn, 0,
7971 sizeof(arch_zone_lowest_possible_pfn));
7972 memset(arch_zone_highest_possible_pfn, 0,
7973 sizeof(arch_zone_highest_possible_pfn));
7974
7975 start_pfn = find_min_pfn_with_active_regions();
7976 descending = arch_has_descending_max_zone_pfns();
7977
7978 for (i = 0; i < MAX_NR_ZONES; i++) {
7979 if (descending)
7980 zone = MAX_NR_ZONES - i - 1;
7981 else
7982 zone = i;
7983
7984 if (zone == ZONE_MOVABLE)
7985 continue;
7986
7987 end_pfn = max(max_zone_pfn[zone], start_pfn);
7988 arch_zone_lowest_possible_pfn[zone] = start_pfn;
7989 arch_zone_highest_possible_pfn[zone] = end_pfn;
7990
7991 start_pfn = end_pfn;
7992 }
7993
7994 /* Find the PFNs that ZONE_MOVABLE begins at in each node */
7995 memset(zone_movable_pfn, 0, sizeof(zone_movable_pfn));
7996 find_zone_movable_pfns_for_nodes();
7997
7998 /* Print out the zone ranges */
7999 pr_info("Zone ranges:\n");
8000 for (i = 0; i < MAX_NR_ZONES; i++) {
8001 if (i == ZONE_MOVABLE)
8002 continue;
8003 pr_info(" %-8s ", zone_names[i]);
8004 if (arch_zone_lowest_possible_pfn[i] ==
8005 arch_zone_highest_possible_pfn[i])
8006 pr_cont("empty\n");
8007 else
8008 pr_cont("[mem %#018Lx-%#018Lx]\n",
8009 (u64)arch_zone_lowest_possible_pfn[i]
8010 << PAGE_SHIFT,
8011 ((u64)arch_zone_highest_possible_pfn[i]
8012 << PAGE_SHIFT) - 1);
8013 }
8014
8015 /* Print out the PFNs ZONE_MOVABLE begins at in each node */
8016 pr_info("Movable zone start for each node\n");
8017 for (i = 0; i < MAX_NUMNODES; i++) {
8018 if (zone_movable_pfn[i])
8019 pr_info(" Node %d: %#018Lx\n", i,
8020 (u64)zone_movable_pfn[i] << PAGE_SHIFT);
8021 }
8022
8023 /*
8024 * Print out the early node map, and initialize the
8025 * subsection-map relative to active online memory ranges to
8026 * enable future "sub-section" extensions of the memory map.
8027 */
8028 pr_info("Early memory node ranges\n");
8029 for_each_mem_pfn_range(i, MAX_NUMNODES, &start_pfn, &end_pfn, &nid) {
8030 pr_info(" node %3d: [mem %#018Lx-%#018Lx]\n", nid,
8031 (u64)start_pfn << PAGE_SHIFT,
8032 ((u64)end_pfn << PAGE_SHIFT) - 1);
8033 subsection_map_init(start_pfn, end_pfn - start_pfn);
8034 }
8035
8036 /* Initialise every node */
8037 mminit_verify_pageflags_layout();
8038 setup_nr_node_ids();
8039 for_each_node(nid) {
8040 pg_data_t *pgdat;
8041
8042 if (!node_online(nid)) {
8043 pr_warn("Node %d uninitialized by the platform. Please report with boot dmesg.\n", nid);
8044
8045 /* Allocator not initialized yet */
> 8046 pgdat = arch_alloc_nodedata(nid);
8047 if (!pgdat) {
8048 pr_err("Cannot allocate %zuB for node %d.\n",
8049 sizeof(*pgdat), nid);
8050 continue;
8051 }
> 8052 arch_refresh_nodedata(nid, pgdat);
8053 free_area_init_memoryless_node(nid);
8054 /*
8055 * not marking this node online because we do not want to
8056 * confuse userspace by sysfs files/directories for node
8057 * without any memory attached to it (see topology_init)
8058 * The pgdat will get fully initialized when a memory is
8059 * hotpluged into it by hotadd_init_pgdat
8060 */
8061 continue;
8062 }
8063
8064 pgdat = NODE_DATA(nid);
8065 free_area_init_node(nid);
8066
8067 /* Any memory on that node */
8068 if (pgdat->node_present_pages)
8069 node_set_state(nid, N_MEMORY);
8070 check_for_memory(pgdat, nid);
8071 }
8072
8073 memmap_init();
8074 }
8075
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 2 weeks