[hch-misc:um-set_fs 1/1] arch/x86/include/asm/page_64_types.h:64: warning: "TASK_SIZE_MAX" redefined
by kernel test robot
tree: git://git.infradead.org/users/hch/misc.git um-set_fs
head: f2ca804e5394b7fc0a45a9393aa32a8c1d168b8a
commit: f2ca804e5394b7fc0a45a9393aa32a8c1d168b8a [1/1] um: remove set_fs
config: um-allmodconfig (https://download.01.org/0day-ci/archive/20211214/202112141117.d5JONEvS-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
git remote add hch-misc git://git.infradead.org/users/hch/misc.git
git fetch --no-tags hch-misc um-set_fs
git checkout f2ca804e5394b7fc0a45a9393aa32a8c1d168b8a
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=um SHELL=/bin/bash drivers/infiniband/hw/qib/
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 arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_types.h:11: warning: "PAGE_SIZE" redefined
11 | #define PAGE_SIZE (_AC(1,UL) << PAGE_SHIFT)
|
In file included from arch/um/include/asm/thread_info.h:15,
from include/linux/thread_info.h:60,
from include/asm-generic/current.h:5,
from ./arch/um/include/generated/asm/current.h:1,
from include/linux/mutex.h:14,
from include/linux/kernfs.h:12,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/pci.h:35,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
arch/um/include/asm/page.h:14: note: this is the location of the previous definition
14 | #define PAGE_SIZE (_AC(1, UL) << PAGE_SHIFT)
|
In file included from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_types.h:36: warning: "PAGE_OFFSET" redefined
36 | #define PAGE_OFFSET ((unsigned long)__PAGE_OFFSET)
|
In file included from arch/um/include/asm/thread_info.h:15,
from include/linux/thread_info.h:60,
from include/asm-generic/current.h:5,
from ./arch/um/include/generated/asm/current.h:1,
from include/linux/mutex.h:14,
from include/linux/kernfs.h:12,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/pci.h:35,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
arch/um/include/asm/page.h:93: note: this is the location of the previous definition
93 | #define PAGE_OFFSET (uml_physmem)
|
In file included from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_types.h:38: warning: "VM_DATA_DEFAULT_FLAGS" redefined
38 | #define VM_DATA_DEFAULT_FLAGS VM_DATA_FLAGS_TSK_EXEC
|
In file included from include/linux/scatterlist.h:8,
from include/linux/dmapool.h:14,
from include/linux/pci.h:1509,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
include/linux/mm.h:382: note: this is the location of the previous definition
382 | #define VM_DATA_DEFAULT_FLAGS VM_DATA_FLAGS_EXEC
|
In file included from arch/x86/include/asm/page_types.h:46,
from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_64_types.h:15: warning: "THREAD_SIZE_ORDER" redefined
15 | #define THREAD_SIZE_ORDER (2 + KASAN_STACK_ORDER)
|
In file included from include/linux/thread_info.h:60,
from include/asm-generic/current.h:5,
from ./arch/um/include/generated/asm/current.h:1,
from include/linux/mutex.h:14,
from include/linux/kernfs.h:12,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/pci.h:35,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
arch/um/include/asm/thread_info.h:9: note: this is the location of the previous definition
9 | #define THREAD_SIZE_ORDER CONFIG_KERNEL_STACK_ORDER
|
In file included from arch/x86/include/asm/page_types.h:46,
from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_64_types.h:16: warning: "THREAD_SIZE" redefined
16 | #define THREAD_SIZE (PAGE_SIZE << THREAD_SIZE_ORDER)
|
In file included from include/linux/thread_info.h:60,
from include/asm-generic/current.h:5,
from ./arch/um/include/generated/asm/current.h:1,
from include/linux/mutex.h:14,
from include/linux/kernfs.h:12,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/pci.h:35,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
arch/um/include/asm/thread_info.h:10: note: this is the location of the previous definition
10 | #define THREAD_SIZE ((1 << CONFIG_KERNEL_STACK_ORDER) * PAGE_SIZE)
|
In file included from arch/x86/include/asm/page_types.h:46,
from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
>> arch/x86/include/asm/page_64_types.h:64: warning: "TASK_SIZE_MAX" redefined
64 | #define TASK_SIZE_MAX task_size_max()
|
In file included from include/linux/sched/task.h:11,
from include/linux/sched/signal.h:9,
from include/linux/rcuwait.h:6,
from include/linux/percpu-rwsem.h:7,
from include/linux/fs.h:33,
from include/linux/huge_mm.h:8,
from include/linux/mm.h:717,
from include/linux/scatterlist.h:8,
from include/linux/dmapool.h:14,
from include/linux/pci.h:1509,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
include/linux/uaccess.h:37: note: this is the location of the previous definition
37 | #define TASK_SIZE_MAX TASK_SIZE
|
In file included from arch/x86/include/asm/page_types.h:46,
from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_64_types.h:75: warning: "TASK_SIZE" redefined
75 | #define TASK_SIZE (test_thread_flag(TIF_ADDR32) ? \
|
In file included from arch/x86/um/asm/processor.h:41,
from include/linux/mutex.h:19,
from include/linux/kernfs.h:12,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/pci.h:35,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
arch/um/include/asm/processor-generic.h:73: note: this is the location of the previous definition
73 | #define TASK_SIZE (task_size)
|
In file included from arch/x86/include/asm/page_types.h:46,
from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_64_types.h:77: warning: "TASK_SIZE_OF" redefined
77 | #define TASK_SIZE_OF(child) ((test_tsk_thread_flag(child, TIF_ADDR32)) ? \
|
In file included from include/linux/ratelimit.h:6,
from include/linux/dev_printk.h:16,
from include/linux/device.h:15,
from include/linux/pci.h:37,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
include/linux/sched.h:2170: note: this is the location of the previous definition
2170 | #define TASK_SIZE_OF(tsk) TASK_SIZE
|
In file included from arch/x86/include/asm/page_types.h:46,
from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_64_types.h:80: warning: "STACK_TOP" redefined
80 | #define STACK_TOP TASK_SIZE_LOW
|
In file included from arch/x86/um/asm/processor.h:41,
from include/linux/mutex.h:19,
from include/linux/kernfs.h:12,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/pci.h:35,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
arch/um/include/asm/processor-generic.h:81: note: this is the location of the previous definition
81 | #define STACK_TOP (TASK_SIZE - 2 * PAGE_SIZE)
|
In file included from arch/x86/include/asm/page_types.h:46,
from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_64_types.h:81: warning: "STACK_TOP_MAX" redefined
81 | #define STACK_TOP_MAX TASK_SIZE_MAX
|
In file included from arch/x86/um/asm/processor.h:41,
from include/linux/mutex.h:19,
from include/linux/kernfs.h:12,
from include/linux/sysfs.h:16,
from include/linux/kobject.h:20,
from include/linux/pci.h:35,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:40:
arch/um/include/asm/processor-generic.h:82: note: this is the location of the previous definition
82 | #define STACK_TOP_MAX STACK_TOP
|
In file included from arch/x86/include/asm/pgtable_types.h:8,
from arch/x86/include/asm/memtype.h:6,
from arch/x86/include/asm/mtrr.h:27,
from drivers/infiniband/hw/qib/qib_wc_x86_64.c:41:
arch/x86/include/asm/page_types.h:47: warning: "IOREMAP_MAX_ORDER" redefined
47 | #define IOREMAP_MAX_ORDER (PUD_SHIFT)
|
In file included from include/asm-generic/io.h:911,
from arch/um/include/asm/io.h:24,
from include/linux/io.h:13,
from include/linux/irq.h:20,
from include/asm-generic/hardirq.h:17,
from arch/um/include/asm/hardirq.h:5,
from include/linux/hardirq.h:11,
vim +/TASK_SIZE_MAX +64 arch/x86/include/asm/page_64_types.h
51c78eb3f0eb033 Jeremy Fitzhardinge 2009-02-08 63
025768a966a3dde Linus Torvalds 2021-05-04 @64 #define TASK_SIZE_MAX task_size_max()
999c83e8ffd90ca Christoph Hellwig 2020-09-03 65 #define DEFAULT_MAP_WINDOW ((1UL << 47) - PAGE_SIZE)
999c83e8ffd90ca Christoph Hellwig 2020-09-03 66
:::::: The code at line 64 was first introduced by commit
:::::: 025768a966a3dde8455de46d1f121a51bacb6a77 x86/cpu: Use alternative to generate the TASK_SIZE_MAX constant
:::::: TO: Linus Torvalds <torvalds(a)linux-foundation.org>
:::::: CC: Ingo Molnar <mingo(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
Re: [PATCH v3 2/2] misc: open-dice: Add driver to expose DICE data to userspace
by kernel test robot
Hi David,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on robh/for-next]
[also build test WARNING on char-misc/char-misc-testing soc/for-next v5.16-rc5]
[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/David-Brazdil/Driver-for-Open-Pr...
base: https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
config: sh-allmodconfig (https://download.01.org/0day-ci/archive/20211214/202112141128.lBBmmIuE-lk...)
compiler: sh4-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/6fb8e9472d98abcc2dfabd43e95fc4ec5...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review David-Brazdil/Driver-for-Open-Profile-for-DICE/20211214-040051
git checkout 6fb8e9472d98abcc2dfabd43e95fc4ec5819ecd0
# 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=sh SHELL=/bin/bash drivers/misc/
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/misc/open-dice.c:74: warning: Function parameter or member 'filp' not described in 'open_dice_read'
drivers/misc/open-dice.c:74: warning: Function parameter or member 'ptr' not described in 'open_dice_read'
drivers/misc/open-dice.c:74: warning: Function parameter or member 'len' not described in 'open_dice_read'
drivers/misc/open-dice.c:74: warning: Function parameter or member 'off' not described in 'open_dice_read'
>> drivers/misc/open-dice.c:74: warning: expecting prototype for Returns the size of the reserved memory region. The user(). Prototype was for open_dice_read() instead
drivers/misc/open-dice.c:84: warning: Function parameter or member 'filp' not described in 'open_dice_write'
drivers/misc/open-dice.c:84: warning: Function parameter or member 'ptr' not described in 'open_dice_write'
drivers/misc/open-dice.c:84: warning: Function parameter or member 'len' not described in 'open_dice_write'
drivers/misc/open-dice.c:84: warning: Function parameter or member 'off' not described in 'open_dice_write'
>> drivers/misc/open-dice.c:84: warning: expecting prototype for Triggers a wipe of the reserved memory region. The user(). Prototype was for open_dice_write() instead
>> drivers/misc/open-dice.c:89: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
* Creates a mapping of the reserved memory region in a user address space.
vim +74 drivers/misc/open-dice.c
67
68 /**
69 * Returns the size of the reserved memory region. The user-provided pointer is
70 * never dereferenced.
71 */
72 static ssize_t open_dice_read(struct file *filp, char __user *ptr, size_t len,
73 loff_t *off)
> 74 {
75 return open_dice_size(to_open_dice_drvdata(filp));
76 }
77
78 /**
79 * Triggers a wipe of the reserved memory region. The user-provided pointer is
80 * never dereferenced.
81 */
82 static ssize_t open_dice_write(struct file *filp, const char __user *ptr,
83 size_t len, loff_t *off)
> 84 {
85 return open_dice_wipe(to_open_dice_drvdata(filp));
86 }
87
88 /**
> 89 * Creates a mapping of the reserved memory region in a user address space.
90 */
91 static int open_dice_mmap(struct file *filp, struct vm_area_struct *vma)
92 {
93 struct open_dice_drvdata *drvdata = to_open_dice_drvdata(filp);
94
95 /* Do not allow userspace to modify the underlying data. */
96 if ((vma->vm_flags & VM_WRITE) && (vma->vm_flags & VM_SHARED))
97 return -EPERM;
98
99 /* Create write-combine mapping so all clients observe a wipe. */
100 vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot);
101 vma->vm_flags |= VM_DONTCOPY | VM_DONTDUMP;
102 return vm_iomap_memory(vma, drvdata->rmem->base, drvdata->rmem->size);
103 }
104
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
[linux-stable-rc:linux-5.10.y 644/2670] drivers/staging/comedi/drivers/comedi_isadma.c:25:17: error: implicit declaration of function 'claim_dma_lock'
by kernel test robot
Hi Arnd,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.10.y
head: f6a609e247c6d6f15ec8c4a87c9aef37b7c8e5a5
commit: 87ae522e467e17a13b796e2cb595f9c3943e4d5e [644/2670] m68knommu: only set CONFIG_ISA_DMA_API for ColdFire sub-arch
config: m68k-randconfig-r001-20211213 (https://download.01.org/0day-ci/archive/20211214/202112141146.SF4ebTTl-lk...)
compiler: m68k-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://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gi...
git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git fetch --no-tags linux-stable-rc linux-5.10.y
git checkout 87ae522e467e17a13b796e2cb595f9c3943e4d5e
# 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=m68k SHELL=/bin/bash drivers/staging/comedi/drivers/
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 include/linux/kernel.h:11,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers/staging/comedi/drivers/comedi_isadma.c:7:
include/linux/scatterlist.h: In function 'sg_set_buf':
arch/m68k/include/asm/page_mm.h:169:50: warning: ordered comparison of pointer with null pointer [-Wextra]
169 | #define virt_addr_valid(kaddr) ((void *)(kaddr) >= (void *)PAGE_OFFSET && (void *)(kaddr) < high_memory)
| ^~
include/linux/compiler.h:78:45: note: in definition of macro 'unlikely'
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
include/linux/scatterlist.h:143:9: note: in expansion of macro 'BUG_ON'
143 | BUG_ON(!virt_addr_valid(buf));
| ^~~~~~
include/linux/scatterlist.h:143:17: note: in expansion of macro 'virt_addr_valid'
143 | BUG_ON(!virt_addr_valid(buf));
| ^~~~~~~~~~~~~~~
drivers/staging/comedi/drivers/comedi_isadma.c: In function 'comedi_isadma_program':
>> drivers/staging/comedi/drivers/comedi_isadma.c:25:17: error: implicit declaration of function 'claim_dma_lock' [-Werror=implicit-function-declaration]
25 | flags = claim_dma_lock();
| ^~~~~~~~~~~~~~
>> drivers/staging/comedi/drivers/comedi_isadma.c:31:9: error: implicit declaration of function 'release_dma_lock'; did you mean 'release_task'? [-Werror=implicit-function-declaration]
31 | release_dma_lock(flags);
| ^~~~~~~~~~~~~~~~
| release_task
cc1: some warnings being treated as errors
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for NEED_MULTIPLE_NODES
Depends on DISCONTIGMEM || NUMA
Selected by
- SINGLE_MEMORY_CHUNK && MMU
vim +/claim_dma_lock +25 drivers/staging/comedi/drivers/comedi_isadma.c
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 16
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 17 /**
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 18 * comedi_isadma_program - program and enable an ISA DMA transfer
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 19 * @desc: the ISA DMA cookie to program and enable
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 20 */
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 21 void comedi_isadma_program(struct comedi_isadma_desc *desc)
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 22 {
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 23 unsigned long flags;
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 24
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 @25 flags = claim_dma_lock();
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 26 clear_dma_ff(desc->chan);
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 27 set_dma_mode(desc->chan, desc->mode);
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 28 set_dma_addr(desc->chan, desc->hw_addr);
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 29 set_dma_count(desc->chan, desc->size);
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 30 enable_dma(desc->chan);
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 @31 release_dma_lock(flags);
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 32 }
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 33 EXPORT_SYMBOL_GPL(comedi_isadma_program);
20a1ea7d6ba184 H Hartley Sweeten 2015-01-14 34
:::::: The code at line 25 was first introduced by commit
:::::: 20a1ea7d6ba184a1f6e25e85786738003387cada staging: comedi: comedi_isadma: introduce helper module for ISA DMA
:::::: TO: H Hartley Sweeten <hsweeten(a)visionengravers.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, 1 week
Re: [PATCH v3 2/3] drm/vc4: plane: Add support for DRM_FORMAT_P030
by kernel test robot
Hi Maxime,
I love your patch! Perhaps something to improve:
[auto build test WARNING on drm/drm-next]
[also build test WARNING on drm-intel/for-linux-next drm-tip/drm-tip v5.16-rc5]
[cannot apply to anholt/for-next]
[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/Maxime-Ripard/drm-vc4-Support-fo...
base: git://anongit.freedesktop.org/drm/drm drm-next
config: arm64-randconfig-r031-20211213 (https://download.01.org/0day-ci/archive/20211214/202112141058.EBPlKMSk-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project b6a2ddb6c8ac29412b1361810972e15221fa021c)
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 arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# https://github.com/0day-ci/linux/commit/58b0d045769ea7e075fd1968a0da080b1...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Maxime-Ripard/drm-vc4-Support-for-30-bits-YUV-formats/20211214-005817
git checkout 58b0d045769ea7e075fd1968a0da080b14b9ab70
# 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=arm64 SHELL=/bin/bash drivers/gpu/drm/vc4/
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/vc4/vc4_plane.c:841:5: warning: variable 'tile_w' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
default:
^~~~~~~
drivers/gpu/drm/vc4/vc4_plane.c:844:20: note: uninitialized use occurs here
pix_per_tile = tile_w / fb->format->cpp[0];
^~~~~~
drivers/gpu/drm/vc4/vc4_plane.c:812:14: note: initialize the variable 'tile_w' to silence this warning
u32 tile_w, tile, x_off, pix_per_tile;
^
= 0
1 warning generated.
vim +/tile_w +841 drivers/gpu/drm/vc4/vc4_plane.c
625
626 /* Writes out a full display list for an active plane to the plane's
627 * private dlist state.
628 */
629 static int vc4_plane_mode_set(struct drm_plane *plane,
630 struct drm_plane_state *state)
631 {
632 struct vc4_dev *vc4 = to_vc4_dev(plane->dev);
633 struct vc4_plane_state *vc4_state = to_vc4_plane_state(state);
634 struct drm_framebuffer *fb = state->fb;
635 u32 ctl0_offset = vc4_state->dlist_count;
636 const struct hvs_format *format = vc4_get_hvs_format(fb->format->format);
637 u64 base_format_mod = fourcc_mod_broadcom_mod(fb->modifier);
638 int num_planes = fb->format->num_planes;
639 u32 h_subsample = fb->format->hsub;
640 u32 v_subsample = fb->format->vsub;
641 bool mix_plane_alpha;
642 bool covers_screen;
643 u32 scl0, scl1, pitch0;
644 u32 tiling, src_y;
645 u32 hvs_format = format->hvs;
646 unsigned int rotation;
647 int ret, i;
648
649 if (vc4_state->dlist_initialized)
650 return 0;
651
652 ret = vc4_plane_setup_clipping_and_scaling(state);
653 if (ret)
654 return ret;
655
656 /* SCL1 is used for Cb/Cr scaling of planar formats. For RGB
657 * and 4:4:4, scl1 should be set to scl0 so both channels of
658 * the scaler do the same thing. For YUV, the Y plane needs
659 * to be put in channel 1 and Cb/Cr in channel 0, so we swap
660 * the scl fields here.
661 */
662 if (num_planes == 1) {
663 scl0 = vc4_get_scl_field(state, 0);
664 scl1 = scl0;
665 } else {
666 scl0 = vc4_get_scl_field(state, 1);
667 scl1 = vc4_get_scl_field(state, 0);
668 }
669
670 rotation = drm_rotation_simplify(state->rotation,
671 DRM_MODE_ROTATE_0 |
672 DRM_MODE_REFLECT_X |
673 DRM_MODE_REFLECT_Y);
674
675 /* We must point to the last line when Y reflection is enabled. */
676 src_y = vc4_state->src_y;
677 if (rotation & DRM_MODE_REFLECT_Y)
678 src_y += vc4_state->src_h[0] - 1;
679
680 switch (base_format_mod) {
681 case DRM_FORMAT_MOD_LINEAR:
682 tiling = SCALER_CTL0_TILING_LINEAR;
683 pitch0 = VC4_SET_FIELD(fb->pitches[0], SCALER_SRC_PITCH);
684
685 /* Adjust the base pointer to the first pixel to be scanned
686 * out.
687 */
688 for (i = 0; i < num_planes; i++) {
689 vc4_state->offsets[i] += src_y /
690 (i ? v_subsample : 1) *
691 fb->pitches[i];
692
693 vc4_state->offsets[i] += vc4_state->src_x /
694 (i ? h_subsample : 1) *
695 fb->format->cpp[i];
696 }
697
698 break;
699
700 case DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED: {
701 u32 tile_size_shift = 12; /* T tiles are 4kb */
702 /* Whole-tile offsets, mostly for setting the pitch. */
703 u32 tile_w_shift = fb->format->cpp[0] == 2 ? 6 : 5;
704 u32 tile_h_shift = 5; /* 16 and 32bpp are 32 pixels high */
705 u32 tile_w_mask = (1 << tile_w_shift) - 1;
706 /* The height mask on 32-bit-per-pixel tiles is 63, i.e. twice
707 * the height (in pixels) of a 4k tile.
708 */
709 u32 tile_h_mask = (2 << tile_h_shift) - 1;
710 /* For T-tiled, the FB pitch is "how many bytes from one row to
711 * the next, such that
712 *
713 * pitch * tile_h == tile_size * tiles_per_row
714 */
715 u32 tiles_w = fb->pitches[0] >> (tile_size_shift - tile_h_shift);
716 u32 tiles_l = vc4_state->src_x >> tile_w_shift;
717 u32 tiles_r = tiles_w - tiles_l;
718 u32 tiles_t = src_y >> tile_h_shift;
719 /* Intra-tile offsets, which modify the base address (the
720 * SCALER_PITCH0_TILE_Y_OFFSET tells HVS how to walk from that
721 * base address).
722 */
723 u32 tile_y = (src_y >> 4) & 1;
724 u32 subtile_y = (src_y >> 2) & 3;
725 u32 utile_y = src_y & 3;
726 u32 x_off = vc4_state->src_x & tile_w_mask;
727 u32 y_off = src_y & tile_h_mask;
728
729 /* When Y reflection is requested we must set the
730 * SCALER_PITCH0_TILE_LINE_DIR flag to tell HVS that all lines
731 * after the initial one should be fetched in descending order,
732 * which makes sense since we start from the last line and go
733 * backward.
734 * Don't know why we need y_off = max_y_off - y_off, but it's
735 * definitely required (I guess it's also related to the "going
736 * backward" situation).
737 */
738 if (rotation & DRM_MODE_REFLECT_Y) {
739 y_off = tile_h_mask - y_off;
740 pitch0 = SCALER_PITCH0_TILE_LINE_DIR;
741 } else {
742 pitch0 = 0;
743 }
744
745 tiling = SCALER_CTL0_TILING_256B_OR_T;
746 pitch0 |= (VC4_SET_FIELD(x_off, SCALER_PITCH0_SINK_PIX) |
747 VC4_SET_FIELD(y_off, SCALER_PITCH0_TILE_Y_OFFSET) |
748 VC4_SET_FIELD(tiles_l, SCALER_PITCH0_TILE_WIDTH_L) |
749 VC4_SET_FIELD(tiles_r, SCALER_PITCH0_TILE_WIDTH_R));
750 vc4_state->offsets[0] += tiles_t * (tiles_w << tile_size_shift);
751 vc4_state->offsets[0] += subtile_y << 8;
752 vc4_state->offsets[0] += utile_y << 4;
753
754 /* Rows of tiles alternate left-to-right and right-to-left. */
755 if (tiles_t & 1) {
756 pitch0 |= SCALER_PITCH0_TILE_INITIAL_LINE_DIR;
757 vc4_state->offsets[0] += (tiles_w - tiles_l) <<
758 tile_size_shift;
759 vc4_state->offsets[0] -= (1 + !tile_y) << 10;
760 } else {
761 vc4_state->offsets[0] += tiles_l << tile_size_shift;
762 vc4_state->offsets[0] += tile_y << 10;
763 }
764
765 break;
766 }
767
768 case DRM_FORMAT_MOD_BROADCOM_SAND64:
769 case DRM_FORMAT_MOD_BROADCOM_SAND128:
770 case DRM_FORMAT_MOD_BROADCOM_SAND256: {
771 uint32_t param = fourcc_mod_broadcom_param(fb->modifier);
772
773 if (param > SCALER_TILE_HEIGHT_MASK) {
774 DRM_DEBUG_KMS("SAND height too large (%d)\n",
775 param);
776 return -EINVAL;
777 }
778
779 if (fb->format->format == DRM_FORMAT_P030) {
780 hvs_format = HVS_PIXEL_FORMAT_YCBCR_10BIT;
781 tiling = SCALER_CTL0_TILING_128B;
782 } else {
783 hvs_format = HVS_PIXEL_FORMAT_H264;
784
785 switch (base_format_mod) {
786 case DRM_FORMAT_MOD_BROADCOM_SAND64:
787 tiling = SCALER_CTL0_TILING_64B;
788 break;
789 case DRM_FORMAT_MOD_BROADCOM_SAND128:
790 tiling = SCALER_CTL0_TILING_128B;
791 break;
792 case DRM_FORMAT_MOD_BROADCOM_SAND256:
793 tiling = SCALER_CTL0_TILING_256B_OR_T;
794 break;
795 default:
796 return -EINVAL;
797 break;
798 }
799 }
800
801 /* Adjust the base pointer to the first pixel to be scanned
802 * out.
803 *
804 * For P030, y_ptr [31:4] is the 128bit word for the start pixel
805 * y_ptr [3:0] is the pixel (0-11) contained within that 128bit
806 * word that should be taken as the first pixel.
807 * Ditto uv_ptr [31:4] vs [3:0], however [3:0] contains the
808 * element within the 128bit word, eg for pixel 3 the value
809 * should be 6.
810 */
811 for (i = 0; i < num_planes; i++) {
812 u32 tile_w, tile, x_off, pix_per_tile;
813
814 if (fb->format->format == DRM_FORMAT_P030) {
815 /*
816 * Spec says: bits [31:4] of the given address
817 * should point to the 128-bit word containing
818 * the desired starting pixel, and bits[3:0]
819 * should be between 0 and 11, indicating which
820 * of the 12-pixels in that 128-bit word is the
821 * first pixel to be used
822 */
823 u32 remaining_pixels = vc4_state->src_x % 96;
824 u32 aligned = remaining_pixels / 12;
825 u32 last_bits = remaining_pixels % 12;
826
827 x_off = aligned * 16 + last_bits;
828 tile_w = 128;
829 pix_per_tile = 96;
830 } else {
831 switch (base_format_mod) {
832 case DRM_FORMAT_MOD_BROADCOM_SAND64:
833 tile_w = 64;
834 break;
835 case DRM_FORMAT_MOD_BROADCOM_SAND128:
836 tile_w = 128;
837 break;
838 case DRM_FORMAT_MOD_BROADCOM_SAND256:
839 tile_w = 256;
840 break;
> 841 default:
842 break;
843 }
844 pix_per_tile = tile_w / fb->format->cpp[0];
845 x_off = (vc4_state->src_x % pix_per_tile) /
846 (i ? h_subsample : 1) *
847 fb->format->cpp[i];
848 }
849
850 tile = vc4_state->src_x / pix_per_tile;
851
852 vc4_state->offsets[i] += param * tile_w * tile;
853 vc4_state->offsets[i] += src_y /
854 (i ? v_subsample : 1) *
855 tile_w;
856 vc4_state->offsets[i] += x_off & ~(i ? 1 : 0);
857 }
858
859 pitch0 = VC4_SET_FIELD(param, SCALER_TILE_HEIGHT);
860 break;
861 }
862
863 default:
864 DRM_DEBUG_KMS("Unsupported FB tiling flag 0x%16llx",
865 (long long)fb->modifier);
866 return -EINVAL;
867 }
868
869 /* Don't waste cycles mixing with plane alpha if the set alpha
870 * is opaque or there is no per-pixel alpha information.
871 * In any case we use the alpha property value as the fixed alpha.
872 */
873 mix_plane_alpha = state->alpha != DRM_BLEND_ALPHA_OPAQUE &&
874 fb->format->has_alpha;
875
876 if (!vc4->hvs->hvs5) {
877 /* Control word */
878 vc4_dlist_write(vc4_state,
879 SCALER_CTL0_VALID |
880 (rotation & DRM_MODE_REFLECT_X ? SCALER_CTL0_HFLIP : 0) |
881 (rotation & DRM_MODE_REFLECT_Y ? SCALER_CTL0_VFLIP : 0) |
882 VC4_SET_FIELD(SCALER_CTL0_RGBA_EXPAND_ROUND, SCALER_CTL0_RGBA_EXPAND) |
883 (format->pixel_order << SCALER_CTL0_ORDER_SHIFT) |
884 (hvs_format << SCALER_CTL0_PIXEL_FORMAT_SHIFT) |
885 VC4_SET_FIELD(tiling, SCALER_CTL0_TILING) |
886 (vc4_state->is_unity ? SCALER_CTL0_UNITY : 0) |
887 VC4_SET_FIELD(scl0, SCALER_CTL0_SCL0) |
888 VC4_SET_FIELD(scl1, SCALER_CTL0_SCL1));
889
890 /* Position Word 0: Image Positions and Alpha Value */
891 vc4_state->pos0_offset = vc4_state->dlist_count;
892 vc4_dlist_write(vc4_state,
893 VC4_SET_FIELD(state->alpha >> 8, SCALER_POS0_FIXED_ALPHA) |
894 VC4_SET_FIELD(vc4_state->crtc_x, SCALER_POS0_START_X) |
895 VC4_SET_FIELD(vc4_state->crtc_y, SCALER_POS0_START_Y));
896
897 /* Position Word 1: Scaled Image Dimensions. */
898 if (!vc4_state->is_unity) {
899 vc4_dlist_write(vc4_state,
900 VC4_SET_FIELD(vc4_state->crtc_w,
901 SCALER_POS1_SCL_WIDTH) |
902 VC4_SET_FIELD(vc4_state->crtc_h,
903 SCALER_POS1_SCL_HEIGHT));
904 }
905
906 /* Position Word 2: Source Image Size, Alpha */
907 vc4_state->pos2_offset = vc4_state->dlist_count;
908 vc4_dlist_write(vc4_state,
909 VC4_SET_FIELD(fb->format->has_alpha ?
910 SCALER_POS2_ALPHA_MODE_PIPELINE :
911 SCALER_POS2_ALPHA_MODE_FIXED,
912 SCALER_POS2_ALPHA_MODE) |
913 (mix_plane_alpha ? SCALER_POS2_ALPHA_MIX : 0) |
914 (fb->format->has_alpha ?
915 SCALER_POS2_ALPHA_PREMULT : 0) |
916 VC4_SET_FIELD(vc4_state->src_w[0],
917 SCALER_POS2_WIDTH) |
918 VC4_SET_FIELD(vc4_state->src_h[0],
919 SCALER_POS2_HEIGHT));
920
921 /* Position Word 3: Context. Written by the HVS. */
922 vc4_dlist_write(vc4_state, 0xc0c0c0c0);
923
924 } else {
925 u32 hvs_pixel_order = format->pixel_order;
926
927 if (format->pixel_order_hvs5)
928 hvs_pixel_order = format->pixel_order_hvs5;
929
930 /* Control word */
931 vc4_dlist_write(vc4_state,
932 SCALER_CTL0_VALID |
933 (hvs_pixel_order << SCALER_CTL0_ORDER_SHIFT) |
934 (hvs_format << SCALER_CTL0_PIXEL_FORMAT_SHIFT) |
935 VC4_SET_FIELD(tiling, SCALER_CTL0_TILING) |
936 (vc4_state->is_unity ?
937 SCALER5_CTL0_UNITY : 0) |
938 VC4_SET_FIELD(scl0, SCALER_CTL0_SCL0) |
939 VC4_SET_FIELD(scl1, SCALER_CTL0_SCL1) |
940 SCALER5_CTL0_ALPHA_EXPAND |
941 SCALER5_CTL0_RGB_EXPAND);
942
943 /* Position Word 0: Image Positions and Alpha Value */
944 vc4_state->pos0_offset = vc4_state->dlist_count;
945 vc4_dlist_write(vc4_state,
946 (rotation & DRM_MODE_REFLECT_Y ?
947 SCALER5_POS0_VFLIP : 0) |
948 VC4_SET_FIELD(vc4_state->crtc_x,
949 SCALER_POS0_START_X) |
950 (rotation & DRM_MODE_REFLECT_X ?
951 SCALER5_POS0_HFLIP : 0) |
952 VC4_SET_FIELD(vc4_state->crtc_y,
953 SCALER5_POS0_START_Y)
954 );
955
956 /* Control Word 2 */
957 vc4_dlist_write(vc4_state,
958 VC4_SET_FIELD(state->alpha >> 4,
959 SCALER5_CTL2_ALPHA) |
960 (fb->format->has_alpha ?
961 SCALER5_CTL2_ALPHA_PREMULT : 0) |
962 (mix_plane_alpha ?
963 SCALER5_CTL2_ALPHA_MIX : 0) |
964 VC4_SET_FIELD(fb->format->has_alpha ?
965 SCALER5_CTL2_ALPHA_MODE_PIPELINE :
966 SCALER5_CTL2_ALPHA_MODE_FIXED,
967 SCALER5_CTL2_ALPHA_MODE)
968 );
969
970 /* Position Word 1: Scaled Image Dimensions. */
971 if (!vc4_state->is_unity) {
972 vc4_dlist_write(vc4_state,
973 VC4_SET_FIELD(vc4_state->crtc_w,
974 SCALER5_POS1_SCL_WIDTH) |
975 VC4_SET_FIELD(vc4_state->crtc_h,
976 SCALER5_POS1_SCL_HEIGHT));
977 }
978
979 /* Position Word 2: Source Image Size */
980 vc4_state->pos2_offset = vc4_state->dlist_count;
981 vc4_dlist_write(vc4_state,
982 VC4_SET_FIELD(vc4_state->src_w[0],
983 SCALER5_POS2_WIDTH) |
984 VC4_SET_FIELD(vc4_state->src_h[0],
985 SCALER5_POS2_HEIGHT));
986
987 /* Position Word 3: Context. Written by the HVS. */
988 vc4_dlist_write(vc4_state, 0xc0c0c0c0);
989 }
990
991
992 /* Pointer Word 0/1/2: RGB / Y / Cb / Cr Pointers
993 *
994 * The pointers may be any byte address.
995 */
996 vc4_state->ptr0_offset = vc4_state->dlist_count;
997 for (i = 0; i < num_planes; i++)
998 vc4_dlist_write(vc4_state, vc4_state->offsets[i]);
999
1000 /* Pointer Context Word 0/1/2: Written by the HVS */
1001 for (i = 0; i < num_planes; i++)
1002 vc4_dlist_write(vc4_state, 0xc0c0c0c0);
1003
1004 /* Pitch word 0 */
1005 vc4_dlist_write(vc4_state, pitch0);
1006
1007 /* Pitch word 1/2 */
1008 for (i = 1; i < num_planes; i++) {
1009 if (hvs_format != HVS_PIXEL_FORMAT_H264 &&
1010 hvs_format != HVS_PIXEL_FORMAT_YCBCR_10BIT) {
1011 vc4_dlist_write(vc4_state,
1012 VC4_SET_FIELD(fb->pitches[i],
1013 SCALER_SRC_PITCH));
1014 } else {
1015 vc4_dlist_write(vc4_state, pitch0);
1016 }
1017 }
1018
1019 /* Colorspace conversion words */
1020 if (vc4_state->is_yuv) {
1021 vc4_dlist_write(vc4_state, SCALER_CSC0_ITR_R_601_5);
1022 vc4_dlist_write(vc4_state, SCALER_CSC1_ITR_R_601_5);
1023 vc4_dlist_write(vc4_state, SCALER_CSC2_ITR_R_601_5);
1024 }
1025
1026 vc4_state->lbm_offset = 0;
1027
1028 if (vc4_state->x_scaling[0] != VC4_SCALING_NONE ||
1029 vc4_state->x_scaling[1] != VC4_SCALING_NONE ||
1030 vc4_state->y_scaling[0] != VC4_SCALING_NONE ||
1031 vc4_state->y_scaling[1] != VC4_SCALING_NONE) {
1032 /* Reserve a slot for the LBM Base Address. The real value will
1033 * be set when calling vc4_plane_allocate_lbm().
1034 */
1035 if (vc4_state->y_scaling[0] != VC4_SCALING_NONE ||
1036 vc4_state->y_scaling[1] != VC4_SCALING_NONE) {
1037 vc4_state->lbm_offset = vc4_state->dlist_count;
1038 vc4_dlist_counter_increment(vc4_state);
1039 }
1040
1041 if (num_planes > 1) {
1042 /* Emit Cb/Cr as channel 0 and Y as channel
1043 * 1. This matches how we set up scl0/scl1
1044 * above.
1045 */
1046 vc4_write_scaling_parameters(state, 1);
1047 }
1048 vc4_write_scaling_parameters(state, 0);
1049
1050 /* If any PPF setup was done, then all the kernel
1051 * pointers get uploaded.
1052 */
1053 if (vc4_state->x_scaling[0] == VC4_SCALING_PPF ||
1054 vc4_state->y_scaling[0] == VC4_SCALING_PPF ||
1055 vc4_state->x_scaling[1] == VC4_SCALING_PPF ||
1056 vc4_state->y_scaling[1] == VC4_SCALING_PPF) {
1057 u32 kernel = VC4_SET_FIELD(vc4->hvs->mitchell_netravali_filter.start,
1058 SCALER_PPF_KERNEL_OFFSET);
1059
1060 /* HPPF plane 0 */
1061 vc4_dlist_write(vc4_state, kernel);
1062 /* VPPF plane 0 */
1063 vc4_dlist_write(vc4_state, kernel);
1064 /* HPPF plane 1 */
1065 vc4_dlist_write(vc4_state, kernel);
1066 /* VPPF plane 1 */
1067 vc4_dlist_write(vc4_state, kernel);
1068 }
1069 }
1070
1071 vc4_state->dlist[ctl0_offset] |=
1072 VC4_SET_FIELD(vc4_state->dlist_count, SCALER_CTL0_SIZE);
1073
1074 /* crtc_* are already clipped coordinates. */
1075 covers_screen = vc4_state->crtc_x == 0 && vc4_state->crtc_y == 0 &&
1076 vc4_state->crtc_w == state->crtc->mode.hdisplay &&
1077 vc4_state->crtc_h == state->crtc->mode.vdisplay;
1078 /* Background fill might be necessary when the plane has per-pixel
1079 * alpha content or a non-opaque plane alpha and could blend from the
1080 * background or does not cover the entire screen.
1081 */
1082 vc4_state->needs_bg_fill = fb->format->has_alpha || !covers_screen ||
1083 state->alpha != DRM_BLEND_ALPHA_OPAQUE;
1084
1085 /* Flag the dlist as initialized to avoid checking it twice in case
1086 * the async update check already called vc4_plane_mode_set() and
1087 * decided to fallback to sync update because async update was not
1088 * possible.
1089 */
1090 vc4_state->dlist_initialized = 1;
1091
1092 vc4_plane_calc_load(state);
1093
1094 return 0;
1095 }
1096
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
[frank-w-bpi-r2-4.14:5.16-r2pro 7/35] drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1384:23: warning: variable 'prGlueInfo' set but not used
by kernel test robot
tree: https://github.com/frank-w/BPI-R2-4.14 5.16-r2pro
head: 4308d050a46a2ee47866d2c6f0200462dfd84d18
commit: 4511c37ac89f210b67a8654f0d15f44fffff165c [7/35] mt6625l: disable {get,set}_fs as these are dropped in 5.15 source
config: arm-randconfig-r005-20211213 (https://download.01.org/0day-ci/archive/20211214/202112140932.KLHzI3P9-lk...)
compiler: arm-linux-gnueabi-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/frank-w/BPI-R2-4.14/commit/4511c37ac89f210b67a8654f0d1...
git remote add frank-w-bpi-r2-4.14 https://github.com/frank-w/BPI-R2-4.14
git fetch --no-tags frank-w-bpi-r2-4.14 5.16-r2pro
git checkout 4511c37ac89f210b67a8654f0d15f44fffff165c
# 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=arm SHELL=/bin/bash drivers/hwtracing/coresight/ drivers/misc/mediatek/connectivity/wlan/gen2/
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 >>):
cc1: warning: drivers/misc/mediatek/base/power/include: No such file or directory [-Wmissing-include-dirs]
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidQueryBssidList':
>> drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1384:23: warning: variable 'prGlueInfo' set but not used [-Wunused-but-set-variable]
1384 | P_GLUE_INFO_T prGlueInfo;
| ^~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetBssid':
>> drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1704:16: warning: variable 'i4Idx' set but not used [-Wunused-but-set-variable]
1704 | INT_32 i4Idx = -1;
| ^~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetSsid':
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1963:16: warning: variable 'i4Idx' set but not used [-Wunused-but-set-variable]
1963 | INT_32 i4Idx = -1, i4MaxRSSI = INT_MIN;
| ^~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetInfrastructureMode':
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:2218:23: warning: variable 'prGlueInfo' set but not used [-Wunused-but-set-variable]
2218 | P_GLUE_INFO_T prGlueInfo;
| ^~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetAuthMode':
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:2388:23: warning: variable 'prGlueInfo' set but not used [-Wunused-but-set-variable]
2388 | P_GLUE_INFO_T prGlueInfo;
| ^~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetEncryptionStatus':
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:3496:23: warning: variable 'prGlueInfo' set but not used [-Wunused-but-set-variable]
3496 | P_GLUE_INFO_T prGlueInfo;
| ^~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetSwCtrlWrite':
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:5428:23: warning: variable 'prGlueInfo' set but not used [-Wunused-but-set-variable]
5428 | P_GLUE_INFO_T prGlueInfo;
| ^~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetGSCNAction':
>> drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:10356:23: warning: variable 'prScanInfo' set but not used [-Wunused-but-set-variable]
10356 | P_SCAN_INFO_T prScanInfo;
| ^~~~~~~~~~
In file included from include/linux/kernel.h:20,
from drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_os.h:529,
from drivers/misc/mediatek/connectivity/wlan/gen2/include/precomp.h:171,
from drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1061:
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c: In function 'wlanoidSetAcpiDevicePowerState':
include/linux/printk.h:133:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
133 | 0; \
| ^
include/linux/printk.h:580:9: note: in expansion of macro 'no_printk'
580 | no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_kal.h:940:53: note: in expansion of macro 'pr_debug'
940 | #define kalPrint pr_debug
| ^~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/include/debug.h:258:33: note: in expansion of macro 'kalPrint'
258 | #define LOG_FUNC kalPrint
| ^~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/include/debug.h:265:17: note: in expansion of macro 'LOG_FUNC'
265 | LOG_FUNC("%s:(" #_Module " " #_Class ")"_Fmt, __func__, ##__VA_ARGS__); \
| ^~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:6554:17: note: in expansion of macro 'DBGLOG'
6554 | DBGLOG(OID, INFO, "Set Power State: D1\n");
| ^~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:6557:9: note: here
6557 | case ParamDeviceStateD2:
| ^~~~
In file included from include/linux/kernel.h:20,
from drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_os.h:529,
from drivers/misc/mediatek/connectivity/wlan/gen2/include/precomp.h:171,
from drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1061:
include/linux/printk.h:133:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
133 | 0; \
| ^
include/linux/printk.h:580:9: note: in expansion of macro 'no_printk'
580 | no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_kal.h:940:53: note: in expansion of macro 'pr_debug'
940 | #define kalPrint pr_debug
| ^~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/include/debug.h:258:33: note: in expansion of macro 'kalPrint'
258 | #define LOG_FUNC kalPrint
| ^~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/include/debug.h:265:17: note: in expansion of macro 'LOG_FUNC'
265 | LOG_FUNC("%s:(" #_Module " " #_Class ")"_Fmt, __func__, ##__VA_ARGS__); \
| ^~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:6558:17: note: in expansion of macro 'DBGLOG'
6558 | DBGLOG(OID, INFO, "Set Power State: D2\n");
| ^~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:6561:9: note: here
6561 | case ParamDeviceStateD3:
| ^~~~
In file included from drivers/misc/mediatek/connectivity/wlan/gen2/include/mgmt/scan.h:269,
from drivers/misc/mediatek/connectivity/wlan/gen2/include/precomp.h:237,
from drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1061:
At top level:
drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_vendor.h:152:1: warning: 'lstats_vendor_test_policy' defined but not used [-Wunused-const-variable=]
152 | lstats_vendor_test_policy[LSTATS_SUBCMD_MAX + 1] = {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_vendor.h:140:1: warning: 'rtt_vendor_test_policy' defined but not used [-Wunused-const-variable=]
140 | rtt_vendor_test_policy[RTT_SUBCMD_MAX + 1] = {
| ^~~~~~~~~~~~~~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_vendor.h:120:1: warning: 'gscan_vendor_test_policy' defined but not used [-Wunused-const-variable=]
120 | gscan_vendor_test_policy[GSCAN_SUBCMD_MAX + 1] = {
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_vendor.h:93:1: warning: 'wifi_vendor_test_policy' defined but not used [-Wunused-const-variable=]
93 | wifi_vendor_test_policy[WIFI_SUBCMD_MAX + 1] = {
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_kal.h:543,
from drivers/misc/mediatek/connectivity/wlan/gen2/os/linux/include/gl_os.h:594,
from drivers/misc/mediatek/connectivity/wlan/gen2/include/precomp.h:171,
from drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c:1061:
drivers/misc/mediatek/connectivity/wlan/gen2/include/nic/wlan_def.h:935:21: warning: 'aucRateTableSize' defined but not used [-Wunused-const-variable=]
935 | static const UINT_8 aucRateTableSize[PREAMBLE_OPTION_NUM] = {
| ^~~~~~~~~~~~~~~~
drivers/misc/mediatek/connectivity/wlan/gen2/include/nic/wlan_def.h:878:21: warning: 'aucRateIndex2RateCode' defined but not used [-Wunused-const-variable=]
878 | static const UINT_8 aucRateIndex2RateCode[PREAMBLE_OPTION_NUM][RATE_NUM] = {
| ^~~~~~~~~~~~~~~~~~~~~
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for MTK_GPS
Depends on ARM && GPS
Selected by
- MTK_GPS_SUPPORT && ARM
vim +/prGlueInfo +1384 drivers/misc/mediatek/connectivity/wlan/gen2/common/wlan_oid.c
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1360
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1361 /*----------------------------------------------------------------------------*/
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1362 /*!
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1363 * \brief This routine is called to query the list of all BSSIDs detected by
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1364 * the driver.
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1365 *
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1366 * \param[in] prAdapter Pointer to the Adapter structure.
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1367 * \param[out] pvQueryBuffer A pointer to the buffer that holds the result of
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1368 * the query.
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1369 * \param[in] u4QueryBufferLen The length of the query buffer.
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1370 * \param[out] pu4QueryInfoLen If the call is successful, returns the number of
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1371 * bytes written into the query buffer. If the call
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1372 * failed due to invalid length of the query buffer,
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1373 * returns the amount of storage needed.
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1374 *
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1375 * \retval WLAN_STATUS_SUCCESS
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1376 * \retval WLAN_STATUS_INVALID_LENGTH
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1377 * \retval WLAN_STATUS_ADAPTER_NOT_READY
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1378 */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1379 /*----------------------------------------------------------------------------*/
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1380 WLAN_STATUS
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1381 wlanoidQueryBssidList(IN P_ADAPTER_T prAdapter,
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1382 OUT PVOID pvQueryBuffer, IN UINT_32 u4QueryBufferLen, OUT PUINT_32 pu4QueryInfoLen)
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1383 {
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 @1384 P_GLUE_INFO_T prGlueInfo;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1385 UINT_32 i, u4BssidListExLen;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1386 P_PARAM_BSSID_LIST_EX_T prList;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1387 P_PARAM_BSSID_EX_T prBssidEx;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1388 PUINT_8 cp;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1389
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1390 DEBUGFUNC("wlanoidQueryBssidList");
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1391
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1392 ASSERT(prAdapter);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1393 ASSERT(pu4QueryInfoLen);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1394
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1395 if (u4QueryBufferLen) {
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1396 ASSERT(pvQueryBuffer);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1397
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1398 if (!pvQueryBuffer)
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1399 return WLAN_STATUS_INVALID_DATA;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1400 }
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1401
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1402 prGlueInfo = prAdapter->prGlueInfo;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1403
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1404 if (prAdapter->rAcpiState == ACPI_STATE_D3) {
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1405 DBGLOG(OID, WARN, "Fail in qeury BSSID list! (Adapter not ready). ACPI=D%d, Radio=%d\n",
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1406 prAdapter->rAcpiState, prAdapter->fgIsRadioOff);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1407 return WLAN_STATUS_ADAPTER_NOT_READY;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1408 }
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1409
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1410 u4BssidListExLen = 0;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1411
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1412 if (prAdapter->fgIsRadioOff == FALSE) {
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1413 for (i = 0; i < prAdapter->rWlanInfo.u4ScanResultNum; i++)
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1414 u4BssidListExLen += ALIGN_4(prAdapter->rWlanInfo.arScanResult[i].u4Length);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1415 }
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1416
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1417 if (u4BssidListExLen)
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1418 u4BssidListExLen += 4; /* u4NumberOfItems. */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1419 else
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1420 u4BssidListExLen = sizeof(PARAM_BSSID_LIST_EX_T);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1421
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1422 *pu4QueryInfoLen = u4BssidListExLen;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1423
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1424 if (u4QueryBufferLen < *pu4QueryInfoLen)
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1425 return WLAN_STATUS_INVALID_LENGTH;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1426
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1427 /* Clear the buffer */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1428 kalMemZero(pvQueryBuffer, u4BssidListExLen);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1429
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1430 prList = (P_PARAM_BSSID_LIST_EX_T) pvQueryBuffer;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1431 cp = (PUINT_8) &prList->arBssid[0];
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1432
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1433 if (prAdapter->fgIsRadioOff == FALSE && prAdapter->rWlanInfo.u4ScanResultNum > 0) {
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1434 /* fill up for each entry */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1435 for (i = 0; i < prAdapter->rWlanInfo.u4ScanResultNum; i++) {
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1436 prBssidEx = (P_PARAM_BSSID_EX_T) cp;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1437
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1438 /* copy structure */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1439 kalMemCopy(prBssidEx,
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1440 &(prAdapter->rWlanInfo.arScanResult[i]), OFFSET_OF(PARAM_BSSID_EX_T, aucIEs));
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1441
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1442 /*For WHQL test, Rssi should be in range -10 ~ -200 dBm */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1443 if (prBssidEx->rRssi > PARAM_WHQL_RSSI_MAX_DBM)
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1444 prBssidEx->rRssi = PARAM_WHQL_RSSI_MAX_DBM;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1445
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1446 if (prAdapter->rWlanInfo.arScanResult[i].u4IELength > 0) {
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1447 /* copy IEs */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1448 kalMemCopy(prBssidEx->aucIEs,
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1449 prAdapter->rWlanInfo.apucScanResultIEs[i],
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1450 prAdapter->rWlanInfo.arScanResult[i].u4IELength);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1451 }
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1452 /* 4-bytes alignement */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1453 prBssidEx->u4Length = ALIGN_4(prBssidEx->u4Length);
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1454
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1455 cp += prBssidEx->u4Length;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1456 prList->u4NumberOfItems++;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1457 }
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1458 }
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1459
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1460 return WLAN_STATUS_SUCCESS;
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1461 } /* wlanoidQueryBssidList */
d03a149ef0a8e6 Frank Wunderlich 2021-08-29 1462
:::::: The code at line 1384 was first introduced by commit
:::::: d03a149ef0a8e6180c7c086fc189dedb7ecb8af5 mt6625l: add driver folder from 5.14
:::::: TO: Frank Wunderlich <frank-w(a)public-files.de>
:::::: CC: Frank Wunderlich <frank-w(a)public-files.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
[luxis1999-iommufd:iommufd-v5.16-rc3 31/37] undefined reference to `interval_tree_iter_first'
by kernel test robot
tree: https://github.com/luxis1999/iommufd iommufd-v5.16-rc3
head: 39eca2be15451cc145f912190c4e5637362f6122
commit: 74814fdbefe2fb370111a0ce00641c64376447cb [31/37] vfio/pci: Add bind_iommufd() support
config: parisc-randconfig-r036-20211213 (https://download.01.org/0day-ci/archive/20211214/202112140915.8XQn8g07-lk...)
compiler: hppa-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/luxis1999/iommufd/commit/74814fdbefe2fb370111a0ce00641...
git remote add luxis1999-iommufd https://github.com/luxis1999/iommufd
git fetch --no-tags luxis1999-iommufd iommufd-v5.16-rc3
git checkout 74814fdbefe2fb370111a0ce00641c64376447cb
# 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=parisc 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 >>):
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_area_iter_first':
>> (.text+0x2e0): undefined reference to `interval_tree_iter_first'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_pages_get_exact_user':
(.text+0x4d4): undefined reference to `interval_tree_iter_first'
>> hppa-linux-ld: (.text+0x528): undefined reference to `interval_tree_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_area_iter_next':
>> (.text+0x544): undefined reference to `interval_tree_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_remove_reserved_iova':
(.text+0x5ac): undefined reference to `interval_tree_iter_first'
hppa-linux-ld: (.text+0x600): undefined reference to `interval_tree_iter_next'
>> hppa-linux-ld: (.text+0x618): undefined reference to `interval_tree_remove'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_pages_clean_xarray':
>> (.text+0x674): undefined reference to `interval_tree_span_iter_first'
>> hppa-linux-ld: (.text+0x71c): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_alloc_area':
(.text+0xf88): undefined reference to `interval_tree_iter_first'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `__iopt_area_unpin_domain':
(.text+0x1340): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x13d4): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `__iopt_unpopulate_domain':
(.text+0x1654): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x16d0): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `__iopt_unmap_iova':
>> (.text+0x189c): undefined reference to `interval_tree_remove'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_pages_unpin_xarray':
(.text+0x1a88): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x1aec): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_area_pin_domain':
(.text+0x1c1c): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x1d44): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_pages_fill_pinned_pfns':
(.text+0x2198): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x2234): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_area_finalize':
>> (.text+0x253c): undefined reference to `interval_tree_insert'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_alloc_iova':
(.text+0x28f8): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x2930): undefined reference to `interval_tree_span_iter_next'
>> hppa-linux-ld: (.text+0x2948): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x2974): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_access_pages':
(.text+0x3220): undefined reference to `interval_tree_span_iter_first'
>> hppa-linux-ld: (.text+0x3248): undefined reference to `interval_tree_insert'
hppa-linux-ld: (.text+0x3274): undefined reference to `interval_tree_span_iter_next'
hppa-linux-ld: drivers/iommu/iommufd/io_pagetable.o: in function `iopt_reserve_iova':
(.text+0x3420): undefined reference to `interval_tree_insert'
hppa-linux-ld: drivers/iommu/iommufd/ioas_pt.o: in function `iommufd_ioas_pagetable_iova_ranges':
(.text+0x388): undefined reference to `interval_tree_span_iter_first'
hppa-linux-ld: (.text+0x3c4): undefined reference to `interval_tree_span_iter_next'
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for IOMMUFD
Depends on IOMMU_SUPPORT
Selected by
- VFIO_PCI_CORE && VFIO && PCI && MMU
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week