[intel-tdx:tdx/guest-rebased 37/133] drivers/firmware/efi/libstub/x86-stub.c:646:31: warning: cast from pointer to integer of different size
by kernel test robot
tree: https://github.com/intel/tdx.git tdx/guest-rebased
head: e3995864d37c56f431c93fc3dc454d9c65f5e9ea
commit: c1d3539441f0c99bf0b530748d6ea9f3cf497719 [37/133] efi/x86: Implement support for unaccepted memory
config: i386-allyesconfig (https://download.01.org/0day-ci/archive/20220114/202201140508.SjqMqVuQ-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/intel/tdx/commit/c1d3539441f0c99bf0b530748d6ea9f3cf497719
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx tdx/guest-rebased
git checkout c1d3539441f0c99bf0b530748d6ea9f3cf497719
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/firmware/efi/libstub/
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/firmware/efi/libstub/x86-stub.c: In function 'allocate_e820':
>> drivers/firmware/efi/libstub/x86-stub.c:646:31: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
646 | params->unaccepted_memory = (u64)unaccepted_memory;
| ^
vim +646 drivers/firmware/efi/libstub/x86-stub.c
579
580 static efi_status_t allocate_e820(struct boot_params *params,
581 struct efi_boot_memmap *map,
582 struct setup_data **e820ext,
583 u32 *e820ext_size)
584 {
585 efi_status_t status;
586 __u32 nr_desc;
587 bool unaccepted_memory_present = false;
588 u64 max_addr = 0;
589 int i;
590
591 status = efi_get_memory_map(map);
592 if (status != EFI_SUCCESS)
593 return status;
594
595 nr_desc = *map->map_size / *map->desc_size;
596 if (nr_desc > ARRAY_SIZE(params->e820_table) - EFI_MMAP_NR_SLACK_SLOTS) {
597 u32 nr_e820ext = nr_desc - ARRAY_SIZE(params->e820_table) +
598 EFI_MMAP_NR_SLACK_SLOTS;
599
600 status = alloc_e820ext(nr_e820ext, e820ext, e820ext_size);
601 if (status != EFI_SUCCESS)
602 goto out;
603 }
604
605 if (!IS_ENABLED(CONFIG_UNACCEPTED_MEMORY))
606 goto out;
607
608 /* Check if there's any unaccepted memory and find the max address */
609 for (i = 0; i < nr_desc; i++) {
610 efi_memory_desc_t *d;
611
612 d = efi_early_memdesc_ptr(*map->map, *map->desc_size, i);
613 if (d->type == EFI_UNACCEPTED_MEMORY)
614 unaccepted_memory_present = true;
615 if (d->phys_addr + d->num_pages * PAGE_SIZE > max_addr)
616 max_addr = d->phys_addr + d->num_pages * PAGE_SIZE;
617 }
618
619 /*
620 * If unaccepted memory present allocate a bitmap to track what memory
621 * has to be accepted before access.
622 *
623 * One bit in the bitmap represents 2MiB in the address space: one 4k
624 * page is enough to track 64GiB or physical address space.
625 *
626 * In the worst case scenario -- a huge hole in the middle of the
627 * address space -- It needs 256MiB to handle 4PiB of the address
628 * space.
629 *
630 * TODO: handle situation if params->unaccepted_memory has already set.
631 * It's required to deal with kexec.
632 *
633 * The bitmap will be populated in setup_e820() according to the memory
634 * map after efi_exit_boot_services().
635 */
636 if (unaccepted_memory_present) {
637 unsigned long *unaccepted_memory = NULL;
638 u64 size = DIV_ROUND_UP(max_addr, PMD_SIZE * BITS_PER_BYTE);
639
640 status = efi_allocate_pages(size,
641 (unsigned long *)&unaccepted_memory,
642 ULONG_MAX);
643 if (status != EFI_SUCCESS)
644 goto out;
645 memset(unaccepted_memory, 0, size);
> 646 params->unaccepted_memory = (u64)unaccepted_memory;
647 }
648
649 out:
650 efi_bs_call(free_pool, *map->map);
651 return status;
652
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
Re: [PATCH 2/3] drm/msm/dpu1: Add MSM8998 to hw catalog
by kernel test robot
Hi Jami,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on drm/drm-next]
[also build test WARNING on next-20220113]
[cannot apply to v5.16]
[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/Jami-Kettunen/drm-msm-dpu1-Add-D...
base: git://anongit.freedesktop.org/drm/drm drm-next
config: hexagon-randconfig-r013-20220113 (https://download.01.org/0day-ci/archive/20220114/202201140501.XVy5Bpjg-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d1021978b8e7e35dcc30201ca1731d64b5a602a8)
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/413561c584134b5ae119218d5bb7276ab...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jami-Kettunen/drm-msm-dpu1-Add-DMA2-DMA3-clock-control-to-enum/20220113-235237
git checkout 413561c584134b5ae119218d5bb7276ab4e34daf
# 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=hexagon SHELL=/bin/bash drivers/gpu/drm/msm/
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/msm/disp/dpu1/dpu_hw_catalog.c:855:34: warning: unused variable 'msm8998_dspp' [-Wunused-const-variable]
static const struct dpu_dspp_cfg msm8998_dspp[] = {
^
1 warning generated.
vim +/msm8998_dspp +855 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c
846
847 #define DSPP_BLK(_name, _id, _base, _mask, _sblk) \
848 {\
849 .name = _name, .id = _id, \
850 .base = _base, .len = 0x1800, \
851 .features = _mask, \
852 .sblk = _sblk \
853 }
854
> 855 static const struct dpu_dspp_cfg msm8998_dspp[] = {
856 DSPP_BLK("dspp_0", DSPP_0, 0x54000, DSPP_MSM8998_MASK,
857 &msm8998_dspp_sblk),
858 DSPP_BLK("dspp_1", DSPP_1, 0x56000, DSPP_MSM8998_MASK,
859 &msm8998_dspp_sblk),
860 };
861
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
[intel-tdx:tdx/guest-rebased 118/133] kernel/dma/swiotlb.c:388:15: warning: cast to 'struct io_tlb_area *' from smaller integer type 'int'
by kernel test robot
tree: https://github.com/intel/tdx.git tdx/guest-rebased
head: e3995864d37c56f431c93fc3dc454d9c65f5e9ea
commit: 8c696e48187c5ffa881e639e1108622debbe6741 [118/133] swiotlb: Split up single swiotlb lock
config: s390-randconfig-r033-20220113 (https://download.01.org/0day-ci/archive/20220114/202201140505.rrWmRq01-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d1021978b8e7e35dcc30201ca1731d64b5a602a8)
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 s390 cross compiling tool for clang build
# apt-get install binutils-s390x-linux-gnu
# https://github.com/intel/tdx/commit/8c696e48187c5ffa881e639e1108622debbe6741
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx tdx/guest-rebased
git checkout 8c696e48187c5ffa881e639e1108622debbe6741
# 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=s390 SHELL=/bin/bash kernel/dma/
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 >>):
In file included from kernel/dma/swiotlb.c:24:
In file included from include/linux/dma-direct.h:9:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:75:
include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __raw_readb(PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:36:59: note: expanded from macro '__le16_to_cpu'
#define __le16_to_cpu(x) __swab16((__force __u16)(__le16)(x))
^
include/uapi/linux/swab.h:102:54: note: expanded from macro '__swab16'
#define __swab16(x) (__u16)__builtin_bswap16((__u16)(x))
^
In file included from kernel/dma/swiotlb.c:24:
In file included from include/linux/dma-direct.h:9:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:75:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:115:54: note: expanded from macro '__swab32'
#define __swab32(x) (__u32)__builtin_bswap32((__u32)(x))
^
In file included from kernel/dma/swiotlb.c:24:
In file included from include/linux/dma-direct.h:9:
In file included from include/linux/dma-mapping.h:10:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:75:
include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:609:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:617:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:625:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:634:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:643:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
kernel/dma/swiotlb.c:379:16: error: implicit declaration of function 'kzalloc' [-Werror,-Wimplicit-function-declaration]
mem->bitmap = kzalloc(DIV_ROUND_UP(nslabs, BITS_PER_BYTE), GFP_KERNEL);
^
kernel/dma/swiotlb.c:379:16: note: did you mean 'vzalloc'?
include/linux/vmalloc.h:140:14: note: 'vzalloc' declared here
extern void *vzalloc(unsigned long size) __alloc_size(1);
^
kernel/dma/swiotlb.c:379:14: warning: incompatible integer to pointer conversion assigning to 'unsigned long *' from 'int' [-Wint-conversion]
mem->bitmap = kzalloc(DIV_ROUND_UP(nslabs, BITS_PER_BYTE), GFP_KERNEL);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/dma/swiotlb.c:383:3: error: implicit declaration of function 'kfree' [-Werror,-Wimplicit-function-declaration]
kfree(mem->bitmap);
^
kernel/dma/swiotlb.c:383:3: note: did you mean 'vfree'?
include/linux/vmalloc.h:155:13: note: 'vfree' declared here
extern void vfree(const void *addr);
^
kernel/dma/swiotlb.c:388:37: error: implicit declaration of function 'kcalloc' [-Werror,-Wimplicit-function-declaration]
mem->areas = (struct io_tlb_area *)kcalloc(num_areas,
^
kernel/dma/swiotlb.c:388:37: note: did you mean 'kzalloc'?
kernel/dma/swiotlb.c:379:16: note: 'kzalloc' declared here
mem->bitmap = kzalloc(DIV_ROUND_UP(nslabs, BITS_PER_BYTE), GFP_KERNEL);
^
>> kernel/dma/swiotlb.c:388:15: warning: cast to 'struct io_tlb_area *' from smaller integer type 'int' [-Wint-to-pointer-cast]
mem->areas = (struct io_tlb_area *)kcalloc(num_areas,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
kernel/dma/swiotlb.c:420:3: error: implicit declaration of function 'kfree' [-Werror,-Wimplicit-function-declaration]
kfree(mem->areas);
^
14 warnings and 4 errors generated.
vim +388 kernel/dma/swiotlb.c
364
365 int
366 swiotlb_late_init_with_tbl(char *tlb, unsigned long nslabs)
367 {
368 struct io_tlb_mem *mem = &io_tlb_default_mem;
369 unsigned long bytes = nslabs << IO_TLB_SHIFT;
370 int order;
371
372 if (swiotlb_force == SWIOTLB_NO_FORCE)
373 return 0;
374
375 /* protect against double initialization */
376 if (WARN_ON_ONCE(mem->nslabs))
377 return -ENOMEM;
378
379 mem->bitmap = kzalloc(DIV_ROUND_UP(nslabs, BITS_PER_BYTE), GFP_KERNEL);
380 order = get_order(array_size(sizeof(*mem->slots), nslabs));
381 mem->slots = (void *)__get_free_pages(GFP_KERNEL | __GFP_ZERO, order);
382 if (!mem->slots || !mem->bitmap) {
383 kfree(mem->bitmap);
384 kfree(mem->slots);
385 return -ENOMEM;
386 }
387
> 388 mem->areas = (struct io_tlb_area *)kcalloc(num_areas,
389 sizeof(struct io_tlb_area),
390 GFP_KERNEL);
391 if (!mem->areas) {
392 free_pages((unsigned long)mem->slots, order);
393 return -ENOMEM;
394 }
395
396 set_memory_decrypted((unsigned long)tlb, bytes >> PAGE_SHIFT);
397 swiotlb_init_io_tlb_mem(mem, virt_to_phys(tlb), nslabs, true);
398
399 swiotlb_print_info();
400 swiotlb_set_max_segment(mem->nslabs << IO_TLB_SHIFT);
401 return 0;
402 }
403
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week
[intel-tdx:tdx/guest-rebased 108/133] arch/x86/kernel/tdx.c:692:15: warning: no previous prototype for 'tdx_mmio_readq'
by kernel test robot
tree: https://github.com/intel/tdx.git tdx/guest-rebased
head: e3995864d37c56f431c93fc3dc454d9c65f5e9ea
commit: 756e9ea1c2ce5a460d5e3edc980255eea5f0fecf [108/133] x86/tdx: Enable direct iomap MMIO optimizations
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20220114/202201140431.dg81It8G-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/intel/tdx/commit/756e9ea1c2ce5a460d5e3edc980255eea5f0fecf
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx tdx/guest-rebased
git checkout 756e9ea1c2ce5a460d5e3edc980255eea5f0fecf
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kernel/
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 >>):
arch/x86/kernel/tdx.c:268:5: warning: no previous prototype for 'tdx_hcall_set_notify_intr' [-Wmissing-prototypes]
268 | int tdx_hcall_set_notify_intr(u8 vector)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/kernel/tdx.c:509:14: warning: no previous prototype for 'tdx_write_msr' [-Wmissing-prototypes]
509 | void notrace tdx_write_msr(unsigned int msr, u32 low, u32 high)
| ^~~~~~~~~~~~~
>> arch/x86/kernel/tdx.c:692:15: warning: no previous prototype for 'tdx_mmio_readq' [-Wmissing-prototypes]
692 | unsigned long tdx_mmio_readq(void __iomem *addr)
| ^~~~~~~~~~~~~~
vim +/tdx_mmio_readq +692 arch/x86/kernel/tdx.c
691
> 692 unsigned long tdx_mmio_readq(void __iomem *addr)
693 {
694 unsigned long val;
695
696 if (tdx_virt_mmio(8, false, (unsigned long)addr, &val))
697 return 0xffffffffffffffff;
698 return val;
699 }
700
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months, 1 week