[linuxppc:merge-test 597/597] aic94xx_init.c:undefined reference to `ata_scsi_dma_need_drain'
by kernel test robot
tree: https://github.com/linuxppc/linux merge-test
head: 7dffbf2fde33e8e9b445e3f13a93f2f7267b21c2
commit: 7dffbf2fde33e8e9b445e3f13a93f2f7267b21c2 [597/597] scsi: Wire up ata_scsi_dma_need_drain for SAS HBA drivers
config: riscv-randconfig-c022-20200621 (attached as .config)
compiler: riscv32-linux-gcc (GCC) 9.3.0
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 >>):
riscv32-linux-ld: drivers/scsi/aic94xx/aic94xx_init.o: in function `.LANCHOR1':
>> aic94xx_init.c:(.data+0x1a8): undefined reference to `ata_scsi_dma_need_drain'
riscv32-linux-ld: drivers/scsi/pm8001/pm8001_init.o: in function `.LANCHOR0':
>> pm8001_init.c:(.data+0x138): undefined reference to `ata_scsi_dma_need_drain'
riscv32-linux-ld: drivers/scsi/mvsas/mv_init.o: in function `.LANCHOR0':
>> mv_init.c:(.data+0x138): undefined reference to `ata_scsi_dma_need_drain'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
ll_temac_main.c:undefined reference to `devm_ioremap'
by kernel test robot
Hi Johannes,
It's probably a bug fix that unveils the link errors.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4333a9b0b67bb4e8bcd91bdd80da80b0ec151162
commit: d0e20fd4c1db7cb28874402f78f39870d84398e9 um: Fix xor.h include
date: 7 weeks ago
config: um-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce (this is a W=1 build):
git checkout d0e20fd4c1db7cb28874402f78f39870d84398e9
# save the attached .config to linux build tree
make W=1 ARCH=um
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 >>):
/usr/bin/ld: drivers/gpio/gpiolib.o: in function `gpiolib_dev_init':
gpiolib.c:(.init.text+0x180): undefined reference to `gpio_of_notifier'
/usr/bin/ld: drivers/net/ethernet/xilinx/ll_temac_main.o: in function `temac_probe':
>> ll_temac_main.c:(.text+0x1f84): undefined reference to `devm_ioremap'
>> /usr/bin/ld: ll_temac_main.c:(.text+0x2164): undefined reference to `devm_of_iomap'
/usr/bin/ld: drivers/net/ethernet/xilinx/xilinx_axienet_main.o: in function `axienet_probe':
xilinx_axienet_main.c:(.text+0x1593): undefined reference to `devm_ioremap_resource'
/usr/bin/ld: xilinx_axienet_main.c:(.text+0x1831): undefined reference to `devm_ioremap_resource'
/usr/bin/ld: xilinx_axienet_main.c:(.text+0x1a6b): undefined reference to `devm_ioremap_resource'
/usr/bin/ld: drivers/ptp/ptp_ines.o: in function `ines_ptp_ctrl_probe':
ptp_ines.c:(.text+0x17eb): undefined reference to `devm_ioremap_resource'
collect2: error: ld returned 1 exit status
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
[fsgsbase:adl-po-presilicon 6119/9999] arch/x86/include/asm/cmpxchg.h:162:30: error: invalid type argument of unary (have 'int')
by kernel test robot
Hi Yu-cheng,
FYI, the error/warning still remains.
tree: https://github.com/changbae/Linux-kernel adl-po-presilicon
head: 6173b90dca1633db3ad2ddb01b0825969c0aa8e3
commit: 80099214d3f4c0f2773d9b7fd12d08ca6abda03a [6119/9999] x86/mm: Update ptep_set_wrprotect() and pmdp_set_wrprotect() for transition from _PAGE_DIRTY_HW to _PAGE_COW
config: i386-allmodconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
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/mm.h:95,
from include/linux/kallsyms.h:12,
from include/linux/bpf.h:21,
from include/linux/bpf-cgroup.h:5,
from include/linux/cgroup-defs.h:22,
from include/linux/cgroup.h:28,
from include/linux/memcontrol.h:13,
from include/linux/swap.h:9,
from include/linux/suspend.h:5,
from arch/x86/kernel/asm-offsets.c:13:
arch/x86/include/asm/pgtable.h: In function 'pte_wrprotect':
arch/x86/include/asm/pgtable.h:359:26: warning: left shift count >= width of type [-Wshift-count-overflow]
359 | _PAGE_BIT_DIRTY_HW << _PAGE_BIT_COW;
| ^~
arch/x86/include/asm/pgtable.h: In function 'pmd_wrprotect':
arch/x86/include/asm/pgtable.h:485:7: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
485 | pmd.pmd |= (pmd.pmd & _PAGE_DIRTY_HW) >>
| ^~~
| pud
arch/x86/include/asm/pgtable.h:485:19: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
485 | pmd.pmd |= (pmd.pmd & _PAGE_DIRTY_HW) >>
| ^~~
| pud
arch/x86/include/asm/pgtable.h: In function 'pud_wrprotect':
arch/x86/include/asm/pgtable.h:570:7: error: 'pud_t' {aka 'struct <anonymous>'} has no member named 'pud'; did you mean 'p4d'?
570 | pud.pud |= (pud.pud & _PAGE_DIRTY_HW) >>
| ^~~
| p4d
arch/x86/include/asm/pgtable.h:570:19: error: 'pud_t' {aka 'struct <anonymous>'} has no member named 'pud'; did you mean 'p4d'?
570 | pud.pud |= (pud.pud & _PAGE_DIRTY_HW) >>
| ^~~
| p4d
In file included from arch/x86/include/asm/atomic.h:8,
from include/linux/atomic.h:7,
from include/linux/crypto.h:15,
from arch/x86/kernel/asm-offsets.c:9:
arch/x86/include/asm/pgtable.h: In function 'pmdp_set_wrprotect':
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:161:13: note: in definition of macro '__raw_try_cmpxchg'
161 | __typeof__(_ptr) _old = (__typeof__(_ptr))(_pold); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:161:38: note: in definition of macro '__raw_try_cmpxchg'
161 | __typeof__(_ptr) _old = (__typeof__(_ptr))(_pold); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:46: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:161:45: note: in definition of macro '__raw_try_cmpxchg'
161 | __typeof__(_ptr) _old = (__typeof__(_ptr))(_pold); \
| ^~~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:162:15: note: in definition of macro '__raw_try_cmpxchg'
162 | __typeof__(*(_ptr)) __old = *_old; \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
>> arch/x86/include/asm/cmpxchg.h:162:30: error: invalid type argument of unary '*' (have 'int')
162 | __typeof__(*(_ptr)) __old = *_old; \
| ^~~~~
arch/x86/include/asm/cmpxchg.h:222:2: note: in expansion of macro '__raw_try_cmpxchg'
222 | __raw_try_cmpxchg((ptr), (pold), (new), (size), LOCK_PREFIX)
| ^~~~~~~~~~~~~~~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:163:15: note: in definition of macro '__raw_try_cmpxchg'
163 | __typeof__(*(_ptr)) __new = (_new); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:59: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:163:31: note: in definition of macro '__raw_try_cmpxchg'
163 | __typeof__(*(_ptr)) __new = (_new); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:164:10: note: in definition of macro '__raw_try_cmpxchg'
164 | switch (size) { \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:167:40: note: in definition of macro '__raw_try_cmpxchg'
167 | volatile u8 *__ptr = (volatile u8 *)(_ptr); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:179:42: note: in definition of macro '__raw_try_cmpxchg'
179 | volatile u16 *__ptr = (volatile u16 *)(_ptr); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:191:42: note: in definition of macro '__raw_try_cmpxchg'
191 | volatile u32 *__ptr = (volatile u32 *)(_ptr); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:32: error: 'pmd_t' {aka 'struct <anonymous>'} has no member named 'pmd'; did you mean 'pud'?
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~
arch/x86/include/asm/cmpxchg.h:203:42: note: in definition of macro '__raw_try_cmpxchg'
203 | volatile u64 *__ptr = (volatile u64 *)(_ptr); \
| ^~~~
arch/x86/include/asm/cmpxchg.h:225:2: note: in expansion of macro '__try_cmpxchg'
225 | __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr)))
| ^~~~~~~~~~~~~
arch/x86/include/asm/pgtable.h:1421:13: note: in expansion of macro 'try_cmpxchg'
1421 | } while (!try_cmpxchg(&pmdp->pmd, &old_pmd.pmd, new_pmd.pmd));
| ^~~~~~~~~~~
arch/x86/include/asm/cmpxchg.h:217:3: error: invalid type argument of unary '*' (have 'int')
217 | *_old = __old; \
| ^~~~~
arch/x86/include/asm/cmpxchg.h:222:2: note: in expansion of macro '__raw_try_cmpxchg'
222 | __raw_try_cmpxchg((ptr), (pold), (new), (size), LOCK_PREFIX)
vim +162 arch/x86/include/asm/cmpxchg.h
e9826380d83d1b Jeremy Fitzhardinge 2011-08-18 147
8bf705d130396e Dmitry Vyukov 2018-01-29 148 #define arch_cmpxchg(ptr, old, new) \
fc395b9291925b Jan Beulich 2012-01-26 149 __cmpxchg(ptr, old, new, sizeof(*(ptr)))
e9826380d83d1b Jeremy Fitzhardinge 2011-08-18 150
8bf705d130396e Dmitry Vyukov 2018-01-29 151 #define arch_sync_cmpxchg(ptr, old, new) \
fc395b9291925b Jan Beulich 2012-01-26 152 __sync_cmpxchg(ptr, old, new, sizeof(*(ptr)))
e9826380d83d1b Jeremy Fitzhardinge 2011-08-18 153
8bf705d130396e Dmitry Vyukov 2018-01-29 154 #define arch_cmpxchg_local(ptr, old, new) \
fc395b9291925b Jan Beulich 2012-01-26 155 __cmpxchg_local(ptr, old, new, sizeof(*(ptr)))
e9826380d83d1b Jeremy Fitzhardinge 2011-08-18 156
a9ebf306f52c75 Peter Zijlstra 2017-02-01 157
a9ebf306f52c75 Peter Zijlstra 2017-02-01 158 #define __raw_try_cmpxchg(_ptr, _pold, _new, size, lock) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 159 ({ \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 160 bool success; \
007d185b44620f Dmitry Vyukov 2017-06-17 161 __typeof__(_ptr) _old = (__typeof__(_ptr))(_pold); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 @162 __typeof__(*(_ptr)) __old = *_old; \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 163 __typeof__(*(_ptr)) __new = (_new); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 164 switch (size) { \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 165 case __X86_CASE_B: \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 166 { \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 167 volatile u8 *__ptr = (volatile u8 *)(_ptr); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 168 asm volatile(lock "cmpxchgb %[new], %[ptr]" \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 169 CC_SET(z) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 170 : CC_OUT(z) (success), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 171 [ptr] "+m" (*__ptr), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 172 [old] "+a" (__old) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 173 : [new] "q" (__new) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 174 : "memory"); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 175 break; \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 176 } \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 177 case __X86_CASE_W: \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 178 { \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 179 volatile u16 *__ptr = (volatile u16 *)(_ptr); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 180 asm volatile(lock "cmpxchgw %[new], %[ptr]" \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 181 CC_SET(z) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 182 : CC_OUT(z) (success), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 183 [ptr] "+m" (*__ptr), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 184 [old] "+a" (__old) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 185 : [new] "r" (__new) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 186 : "memory"); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 187 break; \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 188 } \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 189 case __X86_CASE_L: \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 190 { \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 191 volatile u32 *__ptr = (volatile u32 *)(_ptr); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 192 asm volatile(lock "cmpxchgl %[new], %[ptr]" \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 193 CC_SET(z) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 194 : CC_OUT(z) (success), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 195 [ptr] "+m" (*__ptr), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 196 [old] "+a" (__old) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 197 : [new] "r" (__new) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 198 : "memory"); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 199 break; \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 200 } \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 201 case __X86_CASE_Q: \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 202 { \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 203 volatile u64 *__ptr = (volatile u64 *)(_ptr); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 204 asm volatile(lock "cmpxchgq %[new], %[ptr]" \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 205 CC_SET(z) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 206 : CC_OUT(z) (success), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 207 [ptr] "+m" (*__ptr), \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 208 [old] "+a" (__old) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 209 : [new] "r" (__new) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 210 : "memory"); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 211 break; \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 212 } \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 213 default: \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 214 __cmpxchg_wrong_size(); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 215 } \
44fe84459faf1a Peter Zijlstra 2017-03-27 216 if (unlikely(!success)) \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 217 *_old = __old; \
44fe84459faf1a Peter Zijlstra 2017-03-27 218 likely(success); \
a9ebf306f52c75 Peter Zijlstra 2017-02-01 219 })
a9ebf306f52c75 Peter Zijlstra 2017-02-01 220
:::::: The code at line 162 was first introduced by commit
:::::: a9ebf306f52c756c4f9e50ee9a60cd6389d71344 locking/atomic: Introduce atomic_try_cmpxchg()
:::::: TO: Peter Zijlstra <peterz(a)infradead.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
2 years, 3 months
Re: [PATCH v7 31/36] staging: tegra-vde: fix common struct sg_table related issues
by kernel test robot
Hi Marek,
I love your patch! Yet something to improve:
[auto build test ERROR on next-20200618]
[also build test ERROR on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-...
base: ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: c6x-allyesconfig (attached as .config)
compiler: c6x-elf-gcc (GCC) 9.3.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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=c6x
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 >>):
drivers/staging/media/tegra-vde/iommu.c: In function 'tegra_vde_iommu_map':
>> drivers/staging/media/tegra-vde/iommu.c:39:9: error: implicit declaration of function 'iommu_map_sgtable'; did you mean 'dma_map_sgtable'? [-Werror=implicit-function-declaration]
39 | size = iommu_map_sgtable(vde->domain, addr, sgt,
| ^~~~~~~~~~~~~~~~~
| dma_map_sgtable
cc1: some warnings being treated as errors
vim +39 drivers/staging/media/tegra-vde/iommu.c
18
19 int tegra_vde_iommu_map(struct tegra_vde *vde,
20 struct sg_table *sgt,
21 struct iova **iovap,
22 size_t size)
23 {
24 struct iova *iova;
25 unsigned long shift;
26 unsigned long end;
27 dma_addr_t addr;
28
29 end = vde->domain->geometry.aperture_end;
30 size = iova_align(&vde->iova, size);
31 shift = iova_shift(&vde->iova);
32
33 iova = alloc_iova(&vde->iova, size >> shift, end >> shift, true);
34 if (!iova)
35 return -ENOMEM;
36
37 addr = iova_dma_addr(&vde->iova, iova);
38
> 39 size = iommu_map_sgtable(vde->domain, addr, sgt,
40 IOMMU_READ | IOMMU_WRITE);
41 if (!size) {
42 __free_iova(&vde->iova, iova);
43 return -ENXIO;
44 }
45
46 *iovap = iova;
47
48 return 0;
49 }
50
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/mmc/host/owl-mmc.c:677:34: warning: unused variable 'owl_mmc_of_match'
by kernel test robot
Hi Manivannan,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4333a9b0b67bb4e8bcd91bdd80da80b0ec151162
commit: ff65ffe46d2839b434dbab77dd3af0cb4f6d2a98 mmc: Add Actions Semi Owl SoCs SD/MMC driver
date: 7 months ago
config: x86_64-randconfig-a001-20200621 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project f5bbe390d23d7da0ffb110cdb24b583c2dc87eba)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout ff65ffe46d2839b434dbab77dd3af0cb4f6d2a98
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
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 >>, old ones prefixed by <<):
>> drivers/mmc/host/owl-mmc.c:677:34: warning: unused variable 'owl_mmc_of_match' [-Wunused-const-variable]
static const struct of_device_id owl_mmc_of_match[] = {
^
1 warning generated.
vim +/owl_mmc_of_match +677 drivers/mmc/host/owl-mmc.c
676
> 677 static const struct of_device_id owl_mmc_of_match[] = {
678 {.compatible = "actions,owl-mmc",},
679 { /* sentinel */ }
680 };
681 MODULE_DEVICE_TABLE(of, owl_mmc_of_match);
682
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/usb/gadget/udc/max3420_udc.c:844:12: warning: stack frame size of 12888 bytes in function 'max3420_thread'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4333a9b0b67bb4e8bcd91bdd80da80b0ec151162
commit: 48ba02b2e2b1a1c80718e93fefe99c8319597c4a usb: gadget: add udc driver for max3420
date: 3 months ago
config: x86_64-randconfig-a014-20200620 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project f5bbe390d23d7da0ffb110cdb24b583c2dc87eba)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout 48ba02b2e2b1a1c80718e93fefe99c8319597c4a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
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 >>, old ones prefixed by <<):
>> drivers/usb/gadget/udc/max3420_udc.c:844:12: warning: stack frame size of 12888 bytes in function 'max3420_thread' [-Wframe-larger-than=]
static int max3420_thread(void *dev_id)
^
1 warning generated.
vim +/max3420_thread +844 drivers/usb/gadget/udc/max3420_udc.c
843
> 844 static int max3420_thread(void *dev_id)
845 {
846 struct max3420_udc *udc = dev_id;
847 struct spi_device *spi = udc->spi;
848 int i, loop_again = 1;
849 unsigned long flags;
850
851 while (!kthread_should_stop()) {
852 if (!loop_again) {
853 ktime_t kt = ns_to_ktime(1000 * 1000 * 250); /* 250ms */
854
855 set_current_state(TASK_INTERRUPTIBLE);
856
857 spin_lock_irqsave(&udc->lock, flags);
858 if (udc->todo & ENABLE_IRQ) {
859 enable_irq(spi->irq);
860 udc->todo &= ~ENABLE_IRQ;
861 }
862 spin_unlock_irqrestore(&udc->lock, flags);
863
864 schedule_hrtimeout(&kt, HRTIMER_MODE_REL);
865 }
866 loop_again = 0;
867
868 mutex_lock(&udc->spi_bus_mutex);
869
870 /* If bus-vbus_active and disconnected */
871 if (!udc->vbus_active || !udc->softconnect)
872 goto loop;
873
874 if (max3420_start(udc)) {
875 loop_again = 1;
876 goto loop;
877 }
878
879 if (max3420_handle_irqs(udc)) {
880 loop_again = 1;
881 goto loop;
882 }
883
884 if (spi_max3420_rwkup(udc)) {
885 loop_again = 1;
886 goto loop;
887 }
888
889 max3420_do_data(udc, 0, 1); /* get done with the EP0 ZLP */
890
891 for (i = 1; i < MAX3420_MAX_EPS; i++) {
892 struct max3420_ep *ep = &udc->ep[i];
893
894 if (spi_max3420_enable(ep))
895 loop_again = 1;
896 if (spi_max3420_stall(ep))
897 loop_again = 1;
898 }
899 loop:
900 mutex_unlock(&udc->spi_bus_mutex);
901 }
902
903 set_current_state(TASK_RUNNING);
904 dev_info(udc->dev, "SPI thread exiting");
905 return 0;
906 }
907
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months
drivers/gpu/drm/i915/gt/intel_workarounds.c:1082:20: error: function 'is_nonpriv_flags_valid' is not needed and will not be emitted
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4333a9b0b67bb4e8bcd91bdd80da80b0ec151162
commit: 9f4069b055d1508c833115df7493b6e0001e5c9b drm/i915: re-disable -Wframe-address
date: 8 weeks ago
config: x86_64-randconfig-r031-20200619 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project f5bbe390d23d7da0ffb110cdb24b583c2dc87eba)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout 9f4069b055d1508c833115df7493b6e0001e5c9b
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
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 >>):
>> drivers/gpu/drm/i915/gt/intel_workarounds.c:1082:20: error: function 'is_nonpriv_flags_valid' is not needed and will not be emitted [-Werror,-Wunneeded-internal-declaration]
static inline bool is_nonpriv_flags_valid(u32 flags)
^
1 error generated.
--
>> drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c:259:19: error: unused function 'rq_prio' [-Werror,-Wunused-function]
static inline int rq_prio(const struct i915_request *rq)
^
1 error generated.
vim +/is_nonpriv_flags_valid +1082 drivers/gpu/drm/i915/gt/intel_workarounds.c
094304beb4e1f4 drivers/gpu/drm/i915/intel_workarounds.c Tvrtko Ursulin 2018-12-03 1081
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 @1082 static inline bool is_nonpriv_flags_valid(u32 flags)
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1083 {
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1084 /* Check only valid flag bits are set */
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1085 if (flags & ~RING_FORCE_TO_NONPRIV_MASK_VALID)
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1086 return false;
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1087
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1088 /* NB: Only 3 out of 4 enum values are valid for access field */
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1089 if ((flags & RING_FORCE_TO_NONPRIV_ACCESS_MASK) ==
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1090 RING_FORCE_TO_NONPRIV_ACCESS_INVALID)
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1091 return false;
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1092
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1093 return true;
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1094 }
1e2b7f497c28a4 drivers/gpu/drm/i915/gt/intel_workarounds.c John Harrison 2019-07-12 1095
:::::: The code at line 1082 was first introduced by commit
:::::: 1e2b7f497c28a47793a95d8f0cc8e135899827f1 drm/i915: Add test for invalid flag bits in whitelist entries
:::::: TO: John Harrison <John.C.Harrison(a)Intel.com>
:::::: CC: Tvrtko Ursulin <tvrtko.ursulin(a)intel.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 3 months