(no subject)
by Vinod Koul
Bcc:
Subject: Re: [usb:usb-testing 57/64] drivers/usb/host/xhci-pci.h:13:5:
warning: no previous prototype for 'renesas_xhci_check_request_fw'
Reply-To:
In-Reply-To: <202005191716.5gO1jQGg%lkp(a)intel.com>
On 19-05-20, 17:08, kbuild test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
> head: df00731cffa0edb454ee0c490696ce0c1745e680
> commit: a66d21d7dba84deeaf3b296c43eafc11094b6f09 [57/64] usb: xhci: Add support for Renesas controller with memory
> config: m68k-randconfig-r012-20200519 (attached as .config)
> compiler: m68k-linux-gcc (GCC) 9.3.0
> reproduce:
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> git checkout a66d21d7dba84deeaf3b296c43eafc11094b6f09
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kbuild test robot <lkp(a)intel.com>
Thanks for the report, yes missed making these symbols static when
CONFIG_USB_XHCI_PCI_RENESAS is not set
Greg,
Sending the patch now, and sorry for too much noise on these :(
--
~Vinod
2 years, 4 months
drivers/soc/fsl/qe/ucc_slow.c:81:18: sparse: sparse: incorrect type in argument 1 (different base types)
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 642b151f45dd54809ea00ecd3976a56c1ec9b53d
commit: 461c3ac0dc46ba7fc09628aadf63c81253c4c3de soc: fsl: qe: fix sparse warnings for ucc_slow.c
date: 8 weeks ago
config: powerpc-randconfig-s001-20200519 (attached as .config)
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-193-gb8fad4bc-dirty
git checkout 461c3ac0dc46ba7fc09628aadf63c81253c4c3de
# save the attached .config to linux build tree
make C=1 ARCH=powerpc CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/soc/fsl/qe/ucc_slow.c:81:18: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:81:18: sparse: expected unsigned int const volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:81:18: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:90:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:90:9: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:90:9: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:102:18: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:102:18: sparse: expected unsigned int const volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:102:18: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:111:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:111:9: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:111:9: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:197:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:197:9: sparse: expected unsigned short volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:197:9: sparse: got restricted __be16 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:225:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:225:17: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:225:17: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:231:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:231:9: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:231:9: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:240:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:240:17: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:240:17: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:245:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:245:9: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:245:9: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:266:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:266:9: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:266:9: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:279:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:279:9: sparse: expected unsigned int volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:279:9: sparse: got restricted __be32 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:289:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:289:9: sparse: expected unsigned short volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:289:9: sparse: got restricted __be16 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:290:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:290:9: sparse: expected unsigned short volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:290:9: sparse: got restricted __be16 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:320:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:320:9: sparse: expected unsigned short volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:320:9: sparse: got restricted __be16 [noderef] <asn:2> *
drivers/soc/fsl/qe/ucc_slow.c:327:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] <asn:2> *addr @@ got latile [noderef] [usertype] <asn:2> *addr @@
drivers/soc/fsl/qe/ucc_slow.c:327:9: sparse: expected unsigned short volatile [noderef] [usertype] <asn:2> *addr
drivers/soc/fsl/qe/ucc_slow.c:327:9: sparse: got restricted __be16 [noderef] <asn:2> *
vim +81 drivers/soc/fsl/qe/ucc_slow.c
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 72
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 73 void ucc_slow_enable(struct ucc_slow_private * uccs, enum comm_dir mode)
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 74 {
461c3ac0dc46ba drivers/soc/fsl/qe/ucc_slow.c Li Yang 2020-03-12 75 struct ucc_slow __iomem *us_regs;
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 76 u32 gumr_l;
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 77
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 78 us_regs = uccs->us_regs;
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 79
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 80 /* Enable reception and/or transmission on this UCC. */
77d7676a92d154 drivers/soc/fsl/qe/ucc_slow.c Rasmus Villemoes 2019-11-28 @81 gumr_l = qe_ioread32be(&us_regs->gumr_l);
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 82 if (mode & COMM_DIR_TX) {
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 83 gumr_l |= UCC_SLOW_GUMR_L_ENT;
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 84 uccs->enabled_tx = 1;
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 85 }
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 86 if (mode & COMM_DIR_RX) {
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 87 gumr_l |= UCC_SLOW_GUMR_L_ENR;
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 88 uccs->enabled_rx = 1;
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 89 }
77d7676a92d154 drivers/soc/fsl/qe/ucc_slow.c Rasmus Villemoes 2019-11-28 90 qe_iowrite32be(gumr_l, &us_regs->gumr_l);
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 91 }
845cf505cebd15 arch/powerpc/sysdev/qe_lib/ucc_slow.c Timur Tabi 2008-01-09 92 EXPORT_SYMBOL(ucc_slow_enable);
9865853851313e arch/powerpc/sysdev/qe_lib/ucc_slow.c Li Yang 2006-10-03 93
:::::: The code at line 81 was first introduced by commit
:::::: 77d7676a92d1541ac6245811a754c70c605a974d soc: fsl: qe: avoid ppc-specific io accessors
:::::: TO: Rasmus Villemoes <linux(a)rasmusvillemoes.dk>
:::::: CC: Li Yang <leoyang.li(a)nxp.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[usb:usb-testing 57/64] drivers/usb/host/xhci-pci.h:13:5: warning: no previous prototype for 'renesas_xhci_check_request_fw'
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
head: df00731cffa0edb454ee0c490696ce0c1745e680
commit: a66d21d7dba84deeaf3b296c43eafc11094b6f09 [57/64] usb: xhci: Add support for Renesas controller with memory
config: m68k-randconfig-r012-20200519 (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout a66d21d7dba84deeaf3b296c43eafc11094b6f09
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
In file included from arch/m68k/include/asm/bug.h:32,
from include/linux/bug.h:5,
from include/linux/thread_info.h:12,
from include/asm-generic/preempt.h:5,
from ./arch/m68k/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from arch/m68k/include/asm/irqflags.h:6,
from include/linux/irqflags.h:16,
from arch/m68k/include/asm/atomic.h:6,
from include/linux/atomic.h:7,
from include/linux/mutex.h:18,
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/usb/host/xhci-pci.c:11:
include/linux/dma-mapping.h: In function 'dma_map_resource':
arch/m68k/include/asm/page_mm.h:169:49: 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/asm-generic/bug.h:139:27: note: in definition of macro 'WARN_ON_ONCE'
139 | int __ret_warn_once = !!(condition); | ^~~~~~~~~
arch/m68k/include/asm/page_mm.h:170:25: note: in expansion of macro 'virt_addr_valid'
170 | #define pfn_valid(pfn) virt_addr_valid(pfn_to_virt(pfn))
| ^~~~~~~~~~~~~~~
include/linux/dma-mapping.h:352:19: note: in expansion of macro 'pfn_valid'
352 | if (WARN_ON_ONCE(pfn_valid(PHYS_PFN(phys_addr))))
| ^~~~~~~~~
In file included from drivers/usb/host/xhci-pci.c:18:
drivers/usb/host/xhci-pci.h: At top level:
>> drivers/usb/host/xhci-pci.h:13:5: warning: no previous prototype for 'renesas_xhci_check_request_fw' [-Wmissing-prototypes]
13 | int renesas_xhci_check_request_fw(struct pci_dev *dev,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/usb/host/xhci-pci.h:19:6: warning: no previous prototype for 'renesas_xhci_pci_exit' [-Wmissing-prototypes]
19 | void renesas_xhci_pci_exit(struct pci_dev *dev) { };
| ^~~~~~~~~~~~~~~~~~~~~
vim +/renesas_xhci_check_request_fw +13 drivers/usb/host/xhci-pci.h
8bd5741e3145e4 Christian Lamparter 2020-05-14 11
8bd5741e3145e4 Christian Lamparter 2020-05-14 12 #else
8bd5741e3145e4 Christian Lamparter 2020-05-14 @13 int renesas_xhci_check_request_fw(struct pci_dev *dev,
8bd5741e3145e4 Christian Lamparter 2020-05-14 14 const struct pci_device_id *id)
8bd5741e3145e4 Christian Lamparter 2020-05-14 15 {
8bd5741e3145e4 Christian Lamparter 2020-05-14 16 return 0;
8bd5741e3145e4 Christian Lamparter 2020-05-14 17 }
8bd5741e3145e4 Christian Lamparter 2020-05-14 18
8bd5741e3145e4 Christian Lamparter 2020-05-14 @19 void renesas_xhci_pci_exit(struct pci_dev *dev) { };
8bd5741e3145e4 Christian Lamparter 2020-05-14 20
:::::: The code at line 13 was first introduced by commit
:::::: 8bd5741e3145e40c1e4f422fa5f1b9d7fe0644b3 usb: renesas-xhci: Add the renesas xhci driver
:::::: TO: Christian Lamparter <chunkeey(a)googlemail.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
2 years, 4 months
sound/soc/codecs/tlv320adcx140.c:751:2: note: in expansion of macro 'if'
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 642b151f45dd54809ea00ecd3976a56c1ec9b53d
commit: 2e4249f58074ec93746df3a902d1835b7edfef49 ASoC: tlv320adcx140: Fix mic_bias and vref device tree verification
date: 3 months ago
config: nds32-randconfig-m001-20200519 (attached as .config)
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
sound/soc/codecs/tlv320adcx140.c: In function 'adcx140_reset':
sound/soc/codecs/tlv320adcx140.c:551:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
551 | int ret = 0;
| ^~~
In file included from include/linux/kernel.h:11,
from include/linux/list.h:9,
from include/linux/module.h:12,
from sound/soc/codecs/tlv320adcx140.c:5:
sound/soc/codecs/tlv320adcx140.c: In function 'adcx140_codec_probe':
sound/soc/codecs/tlv320adcx140.c:751:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]
751 | if (bias_source < ADCX140_MIC_BIAS_VAL_VREF ||
| ^
include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
>> sound/soc/codecs/tlv320adcx140.c:751:2: note: in expansion of macro 'if'
751 | if (bias_source < ADCX140_MIC_BIAS_VAL_VREF ||
| ^~
sound/soc/codecs/tlv320adcx140.c:751:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]
751 | if (bias_source < ADCX140_MIC_BIAS_VAL_VREF ||
| ^
include/linux/compiler.h:58:61: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
>> sound/soc/codecs/tlv320adcx140.c:751:2: note: in expansion of macro 'if'
751 | if (bias_source < ADCX140_MIC_BIAS_VAL_VREF ||
| ^~
sound/soc/codecs/tlv320adcx140.c:751:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]
751 | if (bias_source < ADCX140_MIC_BIAS_VAL_VREF ||
| ^
include/linux/compiler.h:69:3: note: in definition of macro '__trace_if_value'
69 | (cond) ? | ^~~~
include/linux/compiler.h:56:28: note: in expansion of macro '__trace_if_var'
56 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ^~~~~~~~~~~~~~
>> sound/soc/codecs/tlv320adcx140.c:751:2: note: in expansion of macro 'if'
751 | if (bias_source < ADCX140_MIC_BIAS_VAL_VREF ||
| ^~
sound/soc/codecs/tlv320adcx140.c:762:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]
762 | if (vref_source < ADCX140_MIC_BIAS_VREF_275V ||
| ^
include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
sound/soc/codecs/tlv320adcx140.c:762:2: note: in expansion of macro 'if'
762 | if (vref_source < ADCX140_MIC_BIAS_VREF_275V ||
| ^~
sound/soc/codecs/tlv320adcx140.c:762:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]
762 | if (vref_source < ADCX140_MIC_BIAS_VREF_275V ||
| ^
include/linux/compiler.h:58:61: note: in definition of macro '__trace_if_var'
58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
| ^~~~
sound/soc/codecs/tlv320adcx140.c:762:2: note: in expansion of macro 'if'
762 | if (vref_source < ADCX140_MIC_BIAS_VREF_275V ||
| ^~
sound/soc/codecs/tlv320adcx140.c:762:18: warning: comparison is always false due to limited range of data type [-Wtype-limits]
762 | if (vref_source < ADCX140_MIC_BIAS_VREF_275V ||
| ^
include/linux/compiler.h:69:3: note: in definition of macro '__trace_if_value'
69 | (cond) ? | ^~~~
include/linux/compiler.h:56:28: note: in expansion of macro '__trace_if_var'
56 | #define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
| ^~~~~~~~~~~~~~
sound/soc/codecs/tlv320adcx140.c:762:2: note: in expansion of macro 'if'
762 | if (vref_source < ADCX140_MIC_BIAS_VREF_275V ||
| ^~
vim +/if +751 sound/soc/codecs/tlv320adcx140.c
737
738 static int adcx140_codec_probe(struct snd_soc_component *component)
739 {
740 struct adcx140_priv *adcx140 = snd_soc_component_get_drvdata(component);
741 int sleep_cfg_val = ADCX140_WAKE_DEV;
742 u8 bias_source;
743 u8 vref_source;
744 int ret;
745
746 ret = device_property_read_u8(adcx140->dev, "ti,mic-bias-source",
747 &bias_source);
748 if (ret)
749 bias_source = ADCX140_MIC_BIAS_VAL_VREF;
750
> 751 if (bias_source < ADCX140_MIC_BIAS_VAL_VREF ||
752 bias_source > ADCX140_MIC_BIAS_VAL_AVDD) {
753 dev_err(adcx140->dev, "Mic Bias source value is invalid\n");
754 return -EINVAL;
755 }
756
757 ret = device_property_read_u8(adcx140->dev, "ti,vref-source",
758 &vref_source);
759 if (ret)
760 vref_source = ADCX140_MIC_BIAS_VREF_275V;
761
762 if (vref_source < ADCX140_MIC_BIAS_VREF_275V ||
763 vref_source > ADCX140_MIC_BIAS_VREF_1375V) {
764 dev_err(adcx140->dev, "Mic Bias source value is invalid\n");
765 return -EINVAL;
766 }
767
768 bias_source |= vref_source;
769
770 ret = adcx140_reset(adcx140);
771 if (ret)
772 goto out;
773
774 if(adcx140->supply_areg == NULL)
775 sleep_cfg_val |= ADCX140_AREG_INTERNAL;
776
777 ret = regmap_write(adcx140->regmap, ADCX140_SLEEP_CFG, sleep_cfg_val);
778 if (ret) {
779 dev_err(adcx140->dev, "setting sleep config failed %d\n", ret);
780 goto out;
781 }
782
783 /* 8.4.3: Wait >= 1ms after entering active mode. */
784 usleep_range(1000, 100000);
785
786 ret = regmap_update_bits(adcx140->regmap, ADCX140_BIAS_CFG,
787 ADCX140_MIC_BIAS_VAL_MSK |
788 ADCX140_MIC_BIAS_VREF_MSK, bias_source);
789 if (ret)
790 dev_err(adcx140->dev, "setting MIC bias failed %d\n", ret);
791 out:
792 return ret;
793 }
794
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[jkirsher-next-queue:dev-queue 182/183] drivers/net/ethernet/intel/iecm/iecm_lib.c:49:13: warning: no previous prototype for function 'iecm_mb_intr_clean'
by kbuild test robot
Hi Alice,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue.git dev-queue
head: 7c7dd63d321082aff5fb170d27beab8a756e3434
commit: cbcbf4f29548030710cedcaccbdacb5851a1f112 [182/183] iecm: Add iecm to the kernel build system
config: x86_64-allyesconfig (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 135b877874fae96b4372c8a3fbfaa8ff44ff86e3)
reproduce:
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 cbcbf4f29548030710cedcaccbdacb5851a1f112
# 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: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:49:13: warning: no previous prototype for function 'iecm_mb_intr_clean' [-Wmissing-prototypes]
irqreturn_t iecm_mb_intr_clean(int __always_unused irq, void *data)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:49:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
irqreturn_t iecm_mb_intr_clean(int __always_unused irq, void *data)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:63:6: warning: no previous prototype for function 'iecm_mb_irq_enable' [-Wmissing-prototypes]
void iecm_mb_irq_enable(struct iecm_adapter *adapter)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:63:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_mb_irq_enable(struct iecm_adapter *adapter)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:77:5: warning: no previous prototype for function 'iecm_mb_intr_req_irq' [-Wmissing-prototypes]
int iecm_mb_intr_req_irq(struct iecm_adapter *adapter)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:77:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int iecm_mb_intr_req_irq(struct iecm_adapter *adapter)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:104:6: warning: no previous prototype for function 'iecm_get_mb_vec_id' [-Wmissing-prototypes]
void iecm_get_mb_vec_id(struct iecm_adapter *adapter)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:104:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_get_mb_vec_id(struct iecm_adapter *adapter)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:122:5: warning: no previous prototype for function 'iecm_mb_intr_init' [-Wmissing-prototypes]
int iecm_mb_intr_init(struct iecm_adapter *adapter)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:122:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int iecm_mb_intr_init(struct iecm_adapter *adapter)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:140:6: warning: no previous prototype for function 'iecm_intr_distribute' [-Wmissing-prototypes]
void iecm_intr_distribute(struct iecm_adapter *adapter)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:140:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_intr_distribute(struct iecm_adapter *adapter)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:417:5: warning: no previous prototype for function 'iecm_vport_rel' [-Wmissing-prototypes]
int iecm_vport_rel(struct iecm_vport *vport)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:417:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int iecm_vport_rel(struct iecm_vport *vport)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:748:6: warning: no previous prototype for function 'iecm_deinit_task' [-Wmissing-prototypes]
void iecm_deinit_task(struct iecm_adapter *adapter)
^
drivers/net/ethernet/intel/iecm/iecm_lib.c:748:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_deinit_task(struct iecm_adapter *adapter)
^
static
8 warnings generated.
--
>> drivers/net/ethernet/intel/iecm/iecm_virtchnl.c:12:6: warning: no previous prototype for function 'iecm_recv_event_msg' [-Wmissing-prototypes]
void iecm_recv_event_msg(struct iecm_vport *vport)
^
drivers/net/ethernet/intel/iecm/iecm_virtchnl.c:12:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_recv_event_msg(struct iecm_vport *vport)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_virtchnl.c:61:1: warning: no previous prototype for function 'iecm_mb_clean' [-Wmissing-prototypes]
iecm_mb_clean(struct iecm_adapter *adapter)
^
drivers/net/ethernet/intel/iecm/iecm_virtchnl.c:60:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
enum iecm_status
^
static
2 warnings generated.
--
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:84:6: warning: no previous prototype for function 'iecm_tx_buf_rel_all' [-Wmissing-prototypes]
void iecm_tx_buf_rel_all(struct iecm_queue *txq)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:84:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_tx_buf_rel_all(struct iecm_queue *txq)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:115:6: warning: no previous prototype for function 'iecm_tx_desc_rel' [-Wmissing-prototypes]
void iecm_tx_desc_rel(struct iecm_queue *txq, bool bufq)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:115:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_tx_desc_rel(struct iecm_queue *txq, bool bufq)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:136:6: warning: no previous prototype for function 'iecm_tx_desc_rel_all' [-Wmissing-prototypes]
void iecm_tx_desc_rel_all(struct iecm_vport *vport)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:136:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_tx_desc_rel_all(struct iecm_vport *vport)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:312:6: warning: no previous prototype for function 'iecm_rx_buf_rel_all' [-Wmissing-prototypes]
void iecm_rx_buf_rel_all(struct iecm_queue *rxq)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:312:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_rx_buf_rel_all(struct iecm_queue *rxq)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:341:6: warning: no previous prototype for function 'iecm_rx_desc_rel' [-Wmissing-prototypes]
void iecm_rx_desc_rel(struct iecm_queue *rxq, bool bufq,
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:341:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_rx_desc_rel(struct iecm_queue *rxq, bool bufq,
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:371:6: warning: no previous prototype for function 'iecm_rx_desc_rel_all' [-Wmissing-prototypes]
void iecm_rx_desc_rel_all(struct iecm_vport *vport)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:371:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_rx_desc_rel_all(struct iecm_vport *vport)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:486:6: warning: no previous prototype for function 'iecm_rx_hdr_buf_hw_alloc' [-Wmissing-prototypes]
bool iecm_rx_hdr_buf_hw_alloc(struct iecm_queue *rxq,
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:486:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
bool iecm_rx_hdr_buf_hw_alloc(struct iecm_queue *rxq,
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:3565:5: warning: no previous prototype for function 'iecm_vport_splitq_napi_poll' [-Wmissing-prototypes]
int iecm_vport_splitq_napi_poll(struct napi_struct *napi, int budget)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:3565:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int iecm_vport_splitq_napi_poll(struct napi_struct *napi, int budget)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:3603:6: warning: no previous prototype for function 'iecm_vport_intr_map_vector_to_qs' [-Wmissing-prototypes]
void iecm_vport_intr_map_vector_to_qs(struct iecm_vport *vport)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:3603:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void iecm_vport_intr_map_vector_to_qs(struct iecm_vport *vport)
^
static
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:3715:5: warning: no previous prototype for function 'iecm_vport_intr_alloc' [-Wmissing-prototypes]
int iecm_vport_intr_alloc(struct iecm_vport *vport)
^
drivers/net/ethernet/intel/iecm/iecm_txrx.c:3715:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int iecm_vport_intr_alloc(struct iecm_vport *vport)
^
static
10 warnings generated.
vim +/iecm_mb_intr_clean +49 drivers/net/ethernet/intel/iecm/iecm_lib.c
abb358c18f4525 Alice Michael 2020-05-18 43
abb358c18f4525 Alice Michael 2020-05-18 44 /**
abb358c18f4525 Alice Michael 2020-05-18 45 * iecm_mb_intr_clean - Interrupt handler for the mailbox
abb358c18f4525 Alice Michael 2020-05-18 46 * @irq: interrupt number
abb358c18f4525 Alice Michael 2020-05-18 47 * @data: pointer to the adapter structure
abb358c18f4525 Alice Michael 2020-05-18 48 */
abb358c18f4525 Alice Michael 2020-05-18 @49 irqreturn_t iecm_mb_intr_clean(int __always_unused irq, void *data)
abb358c18f4525 Alice Michael 2020-05-18 50 {
4227a8f4f793dc Alice Michael 2020-05-18 51 struct iecm_adapter *adapter = (struct iecm_adapter *)data;
4227a8f4f793dc Alice Michael 2020-05-18 52
4227a8f4f793dc Alice Michael 2020-05-18 53 set_bit(__IECM_MB_INTR_TRIGGER, adapter->flags);
4227a8f4f793dc Alice Michael 2020-05-18 54 queue_delayed_work(adapter->serv_wq, &adapter->serv_task,
4227a8f4f793dc Alice Michael 2020-05-18 55 msecs_to_jiffies(0));
4227a8f4f793dc Alice Michael 2020-05-18 56 return IRQ_HANDLED;
abb358c18f4525 Alice Michael 2020-05-18 57 }
abb358c18f4525 Alice Michael 2020-05-18 58
abb358c18f4525 Alice Michael 2020-05-18 59 /**
abb358c18f4525 Alice Michael 2020-05-18 60 * iecm_mb_irq_enable - Enable MSIX interrupt for the mailbox
abb358c18f4525 Alice Michael 2020-05-18 61 * @adapter: adapter to get the hardware address for register write
abb358c18f4525 Alice Michael 2020-05-18 62 */
abb358c18f4525 Alice Michael 2020-05-18 @63 void iecm_mb_irq_enable(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 64 {
4227a8f4f793dc Alice Michael 2020-05-18 65 struct iecm_hw *hw = &adapter->hw;
4227a8f4f793dc Alice Michael 2020-05-18 66 struct iecm_intr_reg *intr = &adapter->mb_vector.intr_reg;
4227a8f4f793dc Alice Michael 2020-05-18 67 u32 val;
4227a8f4f793dc Alice Michael 2020-05-18 68
4227a8f4f793dc Alice Michael 2020-05-18 69 val = intr->dyn_ctl_intena_m | intr->dyn_ctl_itridx_m;
4227a8f4f793dc Alice Michael 2020-05-18 70 writel_relaxed(val, (u8 *)(hw->hw_addr + intr->dyn_ctl));
abb358c18f4525 Alice Michael 2020-05-18 71 }
abb358c18f4525 Alice Michael 2020-05-18 72
abb358c18f4525 Alice Michael 2020-05-18 73 /**
abb358c18f4525 Alice Michael 2020-05-18 74 * iecm_mb_intr_req_irq - Request irq for the mailbox interrupt
abb358c18f4525 Alice Michael 2020-05-18 75 * @adapter: adapter structure to pass to the mailbox irq handler
abb358c18f4525 Alice Michael 2020-05-18 76 */
abb358c18f4525 Alice Michael 2020-05-18 @77 int iecm_mb_intr_req_irq(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 78 {
4227a8f4f793dc Alice Michael 2020-05-18 79 struct iecm_q_vector *mb_vector = &adapter->mb_vector;
4227a8f4f793dc Alice Michael 2020-05-18 80 int irq_num, mb_vidx = 0, err;
4227a8f4f793dc Alice Michael 2020-05-18 81
4227a8f4f793dc Alice Michael 2020-05-18 82 irq_num = adapter->msix_entries[mb_vidx].vector;
4227a8f4f793dc Alice Michael 2020-05-18 83 snprintf(mb_vector->name, sizeof(mb_vector->name) - 1,
4227a8f4f793dc Alice Michael 2020-05-18 84 "%s-%s-%d", dev_driver_string(&adapter->pdev->dev),
4227a8f4f793dc Alice Michael 2020-05-18 85 "Mailbox", mb_vidx);
4227a8f4f793dc Alice Michael 2020-05-18 86 err = request_irq(irq_num, adapter->irq_mb_handler, 0,
4227a8f4f793dc Alice Michael 2020-05-18 87 mb_vector->name, adapter);
4227a8f4f793dc Alice Michael 2020-05-18 88 if (err) {
4227a8f4f793dc Alice Michael 2020-05-18 89 dev_err(&adapter->pdev->dev,
4227a8f4f793dc Alice Michael 2020-05-18 90 "Request_irq for mailbox failed, error: %d\n", err);
4227a8f4f793dc Alice Michael 2020-05-18 91 return err;
4227a8f4f793dc Alice Michael 2020-05-18 92 }
4227a8f4f793dc Alice Michael 2020-05-18 93 set_bit(__IECM_MB_INTR_MODE, adapter->flags);
4227a8f4f793dc Alice Michael 2020-05-18 94 return 0;
abb358c18f4525 Alice Michael 2020-05-18 95 }
abb358c18f4525 Alice Michael 2020-05-18 96
abb358c18f4525 Alice Michael 2020-05-18 97 /**
abb358c18f4525 Alice Michael 2020-05-18 98 * iecm_get_mb_vec_id - Get vector index for mailbox
abb358c18f4525 Alice Michael 2020-05-18 99 * @adapter: adapter structure to access the vector chunks
abb358c18f4525 Alice Michael 2020-05-18 100 *
abb358c18f4525 Alice Michael 2020-05-18 101 * The first vector id in the requested vector chunks from the CP is for
abb358c18f4525 Alice Michael 2020-05-18 102 * the mailbox
abb358c18f4525 Alice Michael 2020-05-18 103 */
abb358c18f4525 Alice Michael 2020-05-18 @104 void iecm_get_mb_vec_id(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 105 {
4227a8f4f793dc Alice Michael 2020-05-18 106 struct virtchnl_vector_chunks *vchunks;
4227a8f4f793dc Alice Michael 2020-05-18 107 struct virtchnl_vector_chunk *chunk;
4227a8f4f793dc Alice Michael 2020-05-18 108
4227a8f4f793dc Alice Michael 2020-05-18 109 if (adapter->req_vec_chunks) {
4227a8f4f793dc Alice Michael 2020-05-18 110 vchunks = &adapter->req_vec_chunks->vchunks;
4227a8f4f793dc Alice Michael 2020-05-18 111 chunk = &vchunks->num_vchunk[0];
4227a8f4f793dc Alice Michael 2020-05-18 112 adapter->mb_vector.v_idx = chunk->start_vector_id;
4227a8f4f793dc Alice Michael 2020-05-18 113 } else {
4227a8f4f793dc Alice Michael 2020-05-18 114 adapter->mb_vector.v_idx = 0;
4227a8f4f793dc Alice Michael 2020-05-18 115 }
abb358c18f4525 Alice Michael 2020-05-18 116 }
abb358c18f4525 Alice Michael 2020-05-18 117
abb358c18f4525 Alice Michael 2020-05-18 118 /**
abb358c18f4525 Alice Michael 2020-05-18 119 * iecm_mb_intr_init - Initialize the mailbox interrupt
abb358c18f4525 Alice Michael 2020-05-18 120 * @adapter: adapter structure to store the mailbox vector
abb358c18f4525 Alice Michael 2020-05-18 121 */
abb358c18f4525 Alice Michael 2020-05-18 @122 int iecm_mb_intr_init(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 123 {
4227a8f4f793dc Alice Michael 2020-05-18 124 int err = 0;
4227a8f4f793dc Alice Michael 2020-05-18 125
4227a8f4f793dc Alice Michael 2020-05-18 126 iecm_get_mb_vec_id(adapter);
4227a8f4f793dc Alice Michael 2020-05-18 127 adapter->dev_ops.reg_ops.mb_intr_reg_init(adapter);
4227a8f4f793dc Alice Michael 2020-05-18 128 adapter->irq_mb_handler = iecm_mb_intr_clean;
4227a8f4f793dc Alice Michael 2020-05-18 129 err = iecm_mb_intr_req_irq(adapter);
4227a8f4f793dc Alice Michael 2020-05-18 130 return err;
abb358c18f4525 Alice Michael 2020-05-18 131 }
abb358c18f4525 Alice Michael 2020-05-18 132
abb358c18f4525 Alice Michael 2020-05-18 133 /**
abb358c18f4525 Alice Michael 2020-05-18 134 * iecm_intr_distribute - Distribute MSIX vectors
abb358c18f4525 Alice Michael 2020-05-18 135 * @adapter: adapter structure to get the vports
abb358c18f4525 Alice Michael 2020-05-18 136 *
abb358c18f4525 Alice Michael 2020-05-18 137 * Distribute the MSIX vectors acquired from the OS to the vports based on the
abb358c18f4525 Alice Michael 2020-05-18 138 * num of vectors requested by each vport
abb358c18f4525 Alice Michael 2020-05-18 139 */
abb358c18f4525 Alice Michael 2020-05-18 @140 void iecm_intr_distribute(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 141 {
4227a8f4f793dc Alice Michael 2020-05-18 142 struct iecm_vport *vport;
4227a8f4f793dc Alice Michael 2020-05-18 143
4227a8f4f793dc Alice Michael 2020-05-18 144 vport = adapter->vports[0];
4227a8f4f793dc Alice Michael 2020-05-18 145 if (adapter->num_msix_entries != adapter->num_req_msix)
4227a8f4f793dc Alice Michael 2020-05-18 146 vport->num_q_vectors = adapter->num_msix_entries -
4227a8f4f793dc Alice Michael 2020-05-18 147 IECM_MAX_NONQ_VEC - IECM_MIN_RDMA_VEC;
abb358c18f4525 Alice Michael 2020-05-18 148 }
abb358c18f4525 Alice Michael 2020-05-18 149
:::::: The code at line 49 was first introduced by commit
:::::: abb358c18f452548c4540e1de514e231a4ff587a iecm: Common module introduction and function stubs
:::::: TO: Alice Michael <alice.michael(a)intel.com>
:::::: CC: Jeff Kirsher <jeffrey.t.kirsher(a)intel.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[saeed:net-next-mlx5 12/14] net/ethtool/linkmodes.c:260:2: warning: initializer overrides prior initialization of this subobject
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux.git net-next-mlx5
head: 74ad52eeafcf44957089a3ef1ce23041e194a0b5
commit: aa61dded520ff36aad032da0cf4f1ec5c0dabb74 [12/14] ethtool: Add support for 100Gbps per lane link modes
config: arm-randconfig-r003-20200519 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 135b877874fae96b4372c8a3fbfaa8ff44ff86e3)
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
git checkout aa61dded520ff36aad032da0cf4f1ec5c0dabb74
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> net/ethtool/linkmodes.c:260:2: warning: initializer overrides prior initialization of this subobject [-Winitializer-overrides]
__DEFINE_LINK_MODE_PARAMS(400000, CR8, Full),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/ethtool/linkmodes.c:169:48: note: expanded from macro '__DEFINE_LINK_MODE_PARAMS'
[ETHTOOL_LINK_MODE(_speed, _type, _duplex)] = { ^~~
net/ethtool/linkmodes.c:258:2: note: previous initialization is here
__DEFINE_LINK_MODE_PARAMS(400000, CR8, Full),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/ethtool/linkmodes.c:169:48: note: expanded from macro '__DEFINE_LINK_MODE_PARAMS'
[ETHTOOL_LINK_MODE(_speed, _type, _duplex)] = { ^~~
1 warning generated.
vim +260 net/ethtool/linkmodes.c
167
168 #define __DEFINE_LINK_MODE_PARAMS(_speed, _type, _duplex) \
169 [ETHTOOL_LINK_MODE(_speed, _type, _duplex)] = { \
170 .speed = SPEED_ ## _speed, \
171 .duplex = __DUPLEX_ ## _duplex \
172 }
173 #define __DUPLEX_Half DUPLEX_HALF
174 #define __DUPLEX_Full DUPLEX_FULL
175 #define __DEFINE_SPECIAL_MODE_PARAMS(_mode) \
176 [ETHTOOL_LINK_MODE_ ## _mode ## _BIT] = { \
177 .speed = SPEED_UNKNOWN, \
178 .duplex = DUPLEX_UNKNOWN, \
179 }
180
181 static const struct link_mode_info link_mode_params[] = {
182 __DEFINE_LINK_MODE_PARAMS(10, T, Half),
183 __DEFINE_LINK_MODE_PARAMS(10, T, Full),
184 __DEFINE_LINK_MODE_PARAMS(100, T, Half),
185 __DEFINE_LINK_MODE_PARAMS(100, T, Full),
186 __DEFINE_LINK_MODE_PARAMS(1000, T, Half),
187 __DEFINE_LINK_MODE_PARAMS(1000, T, Full),
188 __DEFINE_SPECIAL_MODE_PARAMS(Autoneg),
189 __DEFINE_SPECIAL_MODE_PARAMS(TP),
190 __DEFINE_SPECIAL_MODE_PARAMS(AUI),
191 __DEFINE_SPECIAL_MODE_PARAMS(MII),
192 __DEFINE_SPECIAL_MODE_PARAMS(FIBRE),
193 __DEFINE_SPECIAL_MODE_PARAMS(BNC),
194 __DEFINE_LINK_MODE_PARAMS(10000, T, Full),
195 __DEFINE_SPECIAL_MODE_PARAMS(Pause),
196 __DEFINE_SPECIAL_MODE_PARAMS(Asym_Pause),
197 __DEFINE_LINK_MODE_PARAMS(2500, X, Full),
198 __DEFINE_SPECIAL_MODE_PARAMS(Backplane),
199 __DEFINE_LINK_MODE_PARAMS(1000, KX, Full),
200 __DEFINE_LINK_MODE_PARAMS(10000, KX4, Full),
201 __DEFINE_LINK_MODE_PARAMS(10000, KR, Full),
202 [ETHTOOL_LINK_MODE_10000baseR_FEC_BIT] = {
203 .speed = SPEED_10000,
204 .duplex = DUPLEX_FULL,
205 },
206 __DEFINE_LINK_MODE_PARAMS(20000, MLD2, Full),
207 __DEFINE_LINK_MODE_PARAMS(20000, KR2, Full),
208 __DEFINE_LINK_MODE_PARAMS(40000, KR4, Full),
209 __DEFINE_LINK_MODE_PARAMS(40000, CR4, Full),
210 __DEFINE_LINK_MODE_PARAMS(40000, SR4, Full),
211 __DEFINE_LINK_MODE_PARAMS(40000, LR4, Full),
212 __DEFINE_LINK_MODE_PARAMS(56000, KR4, Full),
213 __DEFINE_LINK_MODE_PARAMS(56000, CR4, Full),
214 __DEFINE_LINK_MODE_PARAMS(56000, SR4, Full),
215 __DEFINE_LINK_MODE_PARAMS(56000, LR4, Full),
216 __DEFINE_LINK_MODE_PARAMS(25000, CR, Full),
217 __DEFINE_LINK_MODE_PARAMS(25000, KR, Full),
218 __DEFINE_LINK_MODE_PARAMS(25000, SR, Full),
219 __DEFINE_LINK_MODE_PARAMS(50000, CR2, Full),
220 __DEFINE_LINK_MODE_PARAMS(50000, KR2, Full),
221 __DEFINE_LINK_MODE_PARAMS(100000, KR4, Full),
222 __DEFINE_LINK_MODE_PARAMS(100000, SR4, Full),
223 __DEFINE_LINK_MODE_PARAMS(100000, CR4, Full),
224 __DEFINE_LINK_MODE_PARAMS(100000, LR4_ER4, Full),
225 __DEFINE_LINK_MODE_PARAMS(50000, SR2, Full),
226 __DEFINE_LINK_MODE_PARAMS(1000, X, Full),
227 __DEFINE_LINK_MODE_PARAMS(10000, CR, Full),
228 __DEFINE_LINK_MODE_PARAMS(10000, SR, Full),
229 __DEFINE_LINK_MODE_PARAMS(10000, LR, Full),
230 __DEFINE_LINK_MODE_PARAMS(10000, LRM, Full),
231 __DEFINE_LINK_MODE_PARAMS(10000, ER, Full),
232 __DEFINE_LINK_MODE_PARAMS(2500, T, Full),
233 __DEFINE_LINK_MODE_PARAMS(5000, T, Full),
234 __DEFINE_SPECIAL_MODE_PARAMS(FEC_NONE),
235 __DEFINE_SPECIAL_MODE_PARAMS(FEC_RS),
236 __DEFINE_SPECIAL_MODE_PARAMS(FEC_BASER),
237 __DEFINE_LINK_MODE_PARAMS(50000, KR, Full),
238 __DEFINE_LINK_MODE_PARAMS(50000, SR, Full),
239 __DEFINE_LINK_MODE_PARAMS(50000, CR, Full),
240 __DEFINE_LINK_MODE_PARAMS(50000, LR_ER_FR, Full),
241 __DEFINE_LINK_MODE_PARAMS(50000, DR, Full),
242 __DEFINE_LINK_MODE_PARAMS(100000, KR2, Full),
243 __DEFINE_LINK_MODE_PARAMS(100000, SR2, Full),
244 __DEFINE_LINK_MODE_PARAMS(100000, CR2, Full),
245 __DEFINE_LINK_MODE_PARAMS(100000, LR2_ER2_FR2, Full),
246 __DEFINE_LINK_MODE_PARAMS(100000, DR2, Full),
247 __DEFINE_LINK_MODE_PARAMS(200000, KR4, Full),
248 __DEFINE_LINK_MODE_PARAMS(200000, SR4, Full),
249 __DEFINE_LINK_MODE_PARAMS(200000, LR4_ER4_FR4, Full),
250 __DEFINE_LINK_MODE_PARAMS(200000, DR4, Full),
251 __DEFINE_LINK_MODE_PARAMS(200000, CR4, Full),
252 __DEFINE_LINK_MODE_PARAMS(100, T1, Full),
253 __DEFINE_LINK_MODE_PARAMS(1000, T1, Full),
254 __DEFINE_LINK_MODE_PARAMS(400000, KR8, Full),
255 __DEFINE_LINK_MODE_PARAMS(400000, SR8, Full),
256 __DEFINE_LINK_MODE_PARAMS(400000, LR8_ER8_FR8, Full),
257 __DEFINE_LINK_MODE_PARAMS(400000, DR8, Full),
258 __DEFINE_LINK_MODE_PARAMS(400000, CR8, Full),
259 __DEFINE_SPECIAL_MODE_PARAMS(FEC_LLRS),
> 260 __DEFINE_LINK_MODE_PARAMS(400000, CR8, Full),
261 __DEFINE_LINK_MODE_PARAMS(100000, KR, Full),
262 __DEFINE_LINK_MODE_PARAMS(100000, SR, Full),
263 __DEFINE_LINK_MODE_PARAMS(100000, LR_ER_FR, Full),
264 __DEFINE_LINK_MODE_PARAMS(100000, DR, Full),
265 __DEFINE_LINK_MODE_PARAMS(100000, CR, Full),
266 __DEFINE_LINK_MODE_PARAMS(200000, KR2, Full),
267 __DEFINE_LINK_MODE_PARAMS(200000, SR2, Full),
268 __DEFINE_LINK_MODE_PARAMS(200000, LR2_ER2_FR2, Full),
269 __DEFINE_LINK_MODE_PARAMS(200000, DR2, Full),
270 __DEFINE_LINK_MODE_PARAMS(200000, CR2, Full),
271 __DEFINE_LINK_MODE_PARAMS(400000, KR4, Full),
272 __DEFINE_LINK_MODE_PARAMS(400000, SR4, Full),
273 __DEFINE_LINK_MODE_PARAMS(400000, LR4_ER4_FR4, Full),
274 __DEFINE_LINK_MODE_PARAMS(400000, DR4, Full),
275 __DEFINE_LINK_MODE_PARAMS(400000, CR4, Full),
276 };
277
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[zen-kernel-zen-kernel:5.6/zen-sauce 2/26] arch/parisc/include/asm/pgtable.h:96:9: error: variable 'old_pte' set but not used
by kbuild test robot
tree: https://github.com/zen-kernel/zen-kernel 5.6/zen-sauce
head: 28b9700a330bb5957c6ad7263095d148d5c35242
commit: 571a78afe655a6e606ff127b57f7a01d3bc68614 [2/26] ZEN: Add VHBA driver
config: parisc-allyesconfig (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 571a78afe655a6e606ff127b57f7a01d3bc68614
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=parisc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
In file included from include/linux/mm.h:94,
from include/linux/highmem.h:8,
from drivers/scsi/vhba/vhba.c:25:
include/asm-generic/pgtable.h: In function 'pte_clear_not_present_full':
>> arch/parisc/include/asm/pgtable.h:96:9: error: variable 'old_pte' set but not used [-Werror=unused-but-set-variable]
96 | pte_t old_pte; | ^~~~~~~
arch/parisc/include/asm/pgtable.h:322:34: note: in expansion of macro 'set_pte_at'
322 | #define pte_clear(mm, addr, xp) set_pte_at(mm, addr, xp, __pte(0))
| ^~~~~~~~~~
include/asm-generic/pgtable.h:201:2: note: in expansion of macro 'pte_clear'
201 | pte_clear(mm, address, ptep);
| ^~~~~~~~~
include/asm-generic/pgtable.h: In function '__ptep_modify_prot_commit':
>> arch/parisc/include/asm/pgtable.h:96:9: error: variable 'old_pte' set but not used [-Werror=unused-but-set-variable]
96 | pte_t old_pte; | ^~~~~~~
include/asm-generic/pgtable.h:640:2: note: in expansion of macro 'set_pte_at'
640 | set_pte_at(vma->vm_mm, addr, ptep, pte);
| ^~~~~~~~~~
In file included from drivers/scsi/vhba/vhba.c:42:
drivers/scsi/vhba/vhba.c: At top level:
drivers/scsi/vhba/vhba.c:483:15: error: no previous prototype for 'vhba_queuecommand' [-Werror=missing-prototypes]
483 | DEF_SCSI_QCMD(vhba_queuecommand)
| ^~~~~~~~~~~~~~~~~
include/scsi/scsi_host.h:488:6: note: in definition of macro 'DEF_SCSI_QCMD'
488 | int func_name(struct Scsi_Host *shost, struct scsi_cmnd *cmd) | ^~~~~~~~~
cc1: all warnings being treated as errors
vim +/old_pte +96 arch/parisc/include/asm/pgtable.h
01ab60570427ca arch/parisc/include/asm/pgtable.h John David Anglin 2015-07-01 84
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 85 /* Certain architectures need to do special things when PTEs
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 86 * within a page table are directly modified. Thus, the following
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 87 * hook is made available.
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 88 */
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 89 #define set_pte(pteptr, pteval) \
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 90 do{ \
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 91 *(pteptr) = (pteval); \
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 92 } while(0)
7139bc1579901b arch/parisc/include/asm/pgtable.h John David Anglin 2013-01-14 93
7139bc1579901b arch/parisc/include/asm/pgtable.h John David Anglin 2013-01-14 94 #define set_pte_at(mm, addr, ptep, pteval) \
7139bc1579901b arch/parisc/include/asm/pgtable.h John David Anglin 2013-01-14 95 do { \
01ab60570427ca arch/parisc/include/asm/pgtable.h John David Anglin 2015-07-01 @96 pte_t old_pte; \
bda079d336cd81 arch/parisc/include/asm/pgtable.h John David Anglin 2013-04-23 97 unsigned long flags; \
b37d1c1898b288 arch/parisc/include/asm/pgtable.h Mikulas Patocka 2019-04-28 98 spin_lock_irqsave(pgd_spinlock((mm)->pgd), flags);\
01ab60570427ca arch/parisc/include/asm/pgtable.h John David Anglin 2015-07-01 99 old_pte = *ptep; \
4dd5b673fa625d arch/parisc/include/asm/pgtable.h John David Anglin 2018-09-20 100 set_pte(ptep, pteval); \
7139bc1579901b arch/parisc/include/asm/pgtable.h John David Anglin 2013-01-14 101 purge_tlb_entries(mm, addr); \
b37d1c1898b288 arch/parisc/include/asm/pgtable.h Mikulas Patocka 2019-04-28 102 spin_unlock_irqrestore(pgd_spinlock((mm)->pgd), flags);\
7139bc1579901b arch/parisc/include/asm/pgtable.h John David Anglin 2013-01-14 103 } while (0)
^1da177e4c3f41 include/asm-parisc/pgtable.h Linus Torvalds 2005-04-16 104
:::::: The code at line 96 was first introduced by commit
:::::: 01ab60570427caa24b9debc369e452e86cd9beb4 parisc: Fix some PTE/TLB race conditions and optimize __flush_tlb_range based on timing results
:::::: TO: John David Anglin <dave.anglin(a)bell.net>
:::::: CC: Helge Deller <deller(a)gmx.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[zen-kernel-zen-kernel:5.6/zen-sauce 2/26] arch/um/include/asm/uaccess.h:17:29: error: comparison of unsigned expression >= 0 is always true
by kbuild test robot
tree: https://github.com/zen-kernel/zen-kernel 5.6/zen-sauce
head: 28b9700a330bb5957c6ad7263095d148d5c35242
commit: 571a78afe655a6e606ff127b57f7a01d3bc68614 [2/26] ZEN: Add VHBA driver
config: um-allmodconfig (attached as .config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce:
git checkout 571a78afe655a6e606ff127b57f7a01d3bc68614
# save the attached .config to linux build tree
make ARCH=um
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> cc1: error: arch/um/include/uapi: No such file or directory [-Werror=missing-include-dirs]
In file included from include/linux/init.h:5:0,
from drivers/scsi/vhba/vhba.c:23:
include/asm-generic/fixmap.h: In function 'fix_to_virt':
>> include/asm-generic/fixmap.h:32:19: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits]
BUILD_BUG_ON(idx >= __end_of_fixed_addresses);
^
include/linux/compiler.h:330:9: note: in definition of macro '__compiletime_assert'
if (!(condition)) ^~~~~~~~~
include/linux/compiler.h:350:2: note: in expansion of macro '_compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __LINE__)
^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
#define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:2: note: in expansion of macro 'BUILD_BUG_ON_MSG'
BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
^~~~~~~~~~~~~~~~
include/asm-generic/fixmap.h:32:2: note: in expansion of macro 'BUILD_BUG_ON'
BUILD_BUG_ON(idx >= __end_of_fixed_addresses);
^~~~~~~~~~~~
In file included from include/linux/uaccess.h:11:0,
from include/linux/highmem.h:9,
from drivers/scsi/vhba/vhba.c:25:
arch/um/include/asm/uaccess.h: In function '__access_ok':
>> arch/um/include/asm/uaccess.h:17:29: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits]
(((unsigned long) (addr) >= FIXADDR_USER_START) && ^
arch/um/include/asm/uaccess.h:45:3: note: in expansion of macro '__access_ok_vsyscall'
__access_ok_vsyscall(addr, size) ||
^~~~~~~~~~~~~~~~~~~~
In file included from drivers/scsi/vhba/vhba.c:42:0:
drivers/scsi/vhba/vhba.c: At top level:
drivers/scsi/vhba/vhba.c:483:15: error: no previous prototype for 'vhba_queuecommand' [-Werror=missing-prototypes]
DEF_SCSI_QCMD(vhba_queuecommand)
^
include/scsi/scsi_host.h:488:6: note: in definition of macro 'DEF_SCSI_QCMD'
int func_name(struct Scsi_Host *shost, struct scsi_cmnd *cmd) ^~~~~~~~~
cc1: all warnings being treated as errors
vim +17 arch/um/include/asm/uaccess.h
^1da177e4c3f41 include/asm-um/uaccess.h Linus Torvalds 2005-04-16 11
fced95cacfc21b arch/um/include/asm/uaccess.h Al Viro 2011-08-18 12 #define __under_task_size(addr, size) \
fced95cacfc21b arch/um/include/asm/uaccess.h Al Viro 2011-08-18 13 (((unsigned long) (addr) < TASK_SIZE) && \
fced95cacfc21b arch/um/include/asm/uaccess.h Al Viro 2011-08-18 14 (((unsigned long) (addr) + (size)) < TASK_SIZE))
fced95cacfc21b arch/um/include/asm/uaccess.h Al Viro 2011-08-18 15
f8d65d27e677da arch/um/include/asm/uaccess.h Richard Weinberger 2015-05-12 16 #define __access_ok_vsyscall(addr, size) \
f8d65d27e677da arch/um/include/asm/uaccess.h Richard Weinberger 2015-05-12 @17 (((unsigned long) (addr) >= FIXADDR_USER_START) && \
fced95cacfc21b arch/um/include/asm/uaccess.h Al Viro 2011-08-18 18 ((unsigned long) (addr) + (size) <= FIXADDR_USER_END) && \
fced95cacfc21b arch/um/include/asm/uaccess.h Al Viro 2011-08-18 19 ((unsigned long) (addr) + (size) >= (unsigned long)(addr)))
fced95cacfc21b arch/um/include/asm/uaccess.h Al Viro 2011-08-18 20
:::::: The code at line 17 was first introduced by commit
:::::: f8d65d27e677da0ce33de570e3068308a77ed2b1 um: Rework uaccess code
:::::: TO: Richard Weinberger <richard(a)nod.at>
:::::: CC: Richard Weinberger <richard(a)nod.at>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[iommu:x86/vt-d 23/44] drivers/iommu/mtk_iommu_v1.c:467:25: warning: variable 'data' set but not used
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git x86/vt-d
head: 69cf449166987d9a041020be6422ee7bf94a7228
commit: 57dbf81f50c82a0ad895a57828ad1ab539785a25 [23/44] iommu/mediatek-v1 Convert to probe/release_device() call-backs
config: arm-allyesconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 57dbf81f50c82a0ad895a57828ad1ab539785a25
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
drivers/iommu/mtk_iommu_v1.c: In function 'mtk_iommu_release_device':
>> drivers/iommu/mtk_iommu_v1.c:467:25: warning: variable 'data' set but not used [-Wunused-but-set-variable]
467 | struct mtk_iommu_data *data;
| ^~~~
vim +/data +467 drivers/iommu/mtk_iommu_v1.c
b17336c55d8928c4 Honghui Zhang 2016-06-08 463
57dbf81f50c82a0a Joerg Roedel 2020-04-29 464 static void mtk_iommu_release_device(struct device *dev)
b17336c55d8928c4 Honghui Zhang 2016-06-08 465 {
a9bf2eec5a6fc01a Joerg Roedel 2018-11-29 466 struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(dev);
6f66ea099fc2f31d Joerg Roedel 2017-03-31 @467 struct mtk_iommu_data *data;
6f66ea099fc2f31d Joerg Roedel 2017-03-31 468
a9bf2eec5a6fc01a Joerg Roedel 2018-11-29 469 if (!fwspec || fwspec->ops != &mtk_iommu_ops)
b17336c55d8928c4 Honghui Zhang 2016-06-08 470 return;
b17336c55d8928c4 Honghui Zhang 2016-06-08 471
3524b5592cad638b Joerg Roedel 2020-03-26 472 data = dev_iommu_priv_get(dev);
84672f192671e64e Robin Murphy 2016-10-17 473 iommu_fwspec_free(dev);
b17336c55d8928c4 Honghui Zhang 2016-06-08 474 }
b17336c55d8928c4 Honghui Zhang 2016-06-08 475
:::::: The code at line 467 was first introduced by commit
:::::: 6f66ea099fc2f31d31d6cd39f3b13b23bdeb6196 iommu/mediatek: Teach MTK-IOMMUv1 about 'struct iommu_device'
:::::: TO: Joerg Roedel <jroedel(a)suse.de>
:::::: CC: Joerg Roedel <jroedel(a)suse.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[jkirsher-next-queue:dev-queue 182/183] drivers/net/ethernet/intel/iecm/iecm_lib.c:49:13: warning: no previous prototype for 'iecm_mb_intr_clean'
by kbuild test robot
Hi Alice,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue.git dev-queue
head: 7c7dd63d321082aff5fb170d27beab8a756e3434
commit: cbcbf4f29548030710cedcaccbdacb5851a1f112 [182/183] iecm: Add iecm to the kernel build system
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout cbcbf4f29548030710cedcaccbdacb5851a1f112
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:49:13: warning: no previous prototype for 'iecm_mb_intr_clean' [-Wmissing-prototypes]
49 | irqreturn_t iecm_mb_intr_clean(int __always_unused irq, void *data)
| ^~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:63:6: warning: no previous prototype for 'iecm_mb_irq_enable' [-Wmissing-prototypes]
63 | void iecm_mb_irq_enable(struct iecm_adapter *adapter)
| ^~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:77:5: warning: no previous prototype for 'iecm_mb_intr_req_irq' [-Wmissing-prototypes]
77 | int iecm_mb_intr_req_irq(struct iecm_adapter *adapter)
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:104:6: warning: no previous prototype for 'iecm_get_mb_vec_id' [-Wmissing-prototypes]
104 | void iecm_get_mb_vec_id(struct iecm_adapter *adapter)
| ^~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:122:5: warning: no previous prototype for 'iecm_mb_intr_init' [-Wmissing-prototypes]
122 | int iecm_mb_intr_init(struct iecm_adapter *adapter)
| ^~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:140:6: warning: no previous prototype for 'iecm_intr_distribute' [-Wmissing-prototypes]
140 | void iecm_intr_distribute(struct iecm_adapter *adapter)
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:417:5: warning: no previous prototype for 'iecm_vport_rel' [-Wmissing-prototypes]
417 | int iecm_vport_rel(struct iecm_vport *vport)
| ^~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_lib.c:748:6: warning: no previous prototype for 'iecm_deinit_task' [-Wmissing-prototypes]
748 | void iecm_deinit_task(struct iecm_adapter *adapter)
| ^~~~~~~~~~~~~~~~
In file included from drivers/net/ethernet/intel/include/iecm.h:50,
from drivers/net/ethernet/intel/iecm/iecm_lib.c:6:
drivers/net/ethernet/intel/include/iecm_txrx.h:293:30: warning: 'iecm_rx_ptype_lkup' defined but not used [-Wunused-const-variable=]
293 | struct iecm_rx_ptype_decoded iecm_rx_ptype_lkup[IECM_RX_SUPP_PTYPE] = {
| ^~~~~~~~~~~~~~~~~~
--
>> drivers/net/ethernet/intel/iecm/iecm_virtchnl.c:12:6: warning: no previous prototype for 'iecm_recv_event_msg' [-Wmissing-prototypes]
12 | void iecm_recv_event_msg(struct iecm_vport *vport)
| ^~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_virtchnl.c:61:1: warning: no previous prototype for 'iecm_mb_clean' [-Wmissing-prototypes]
61 | iecm_mb_clean(struct iecm_adapter *adapter)
| ^~~~~~~~~~~~~
--
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:84:6: warning: no previous prototype for 'iecm_tx_buf_rel_all' [-Wmissing-prototypes]
84 | void iecm_tx_buf_rel_all(struct iecm_queue *txq)
| ^~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:115:6: warning: no previous prototype for 'iecm_tx_desc_rel' [-Wmissing-prototypes]
115 | void iecm_tx_desc_rel(struct iecm_queue *txq, bool bufq)
| ^~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:136:6: warning: no previous prototype for 'iecm_tx_desc_rel_all' [-Wmissing-prototypes]
136 | void iecm_tx_desc_rel_all(struct iecm_vport *vport)
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:312:6: warning: no previous prototype for 'iecm_rx_buf_rel_all' [-Wmissing-prototypes]
312 | void iecm_rx_buf_rel_all(struct iecm_queue *rxq)
| ^~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:341:6: warning: no previous prototype for 'iecm_rx_desc_rel' [-Wmissing-prototypes]
341 | void iecm_rx_desc_rel(struct iecm_queue *rxq, bool bufq,
| ^~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:371:6: warning: no previous prototype for 'iecm_rx_desc_rel_all' [-Wmissing-prototypes]
371 | void iecm_rx_desc_rel_all(struct iecm_vport *vport)
| ^~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:486:6: warning: no previous prototype for 'iecm_rx_hdr_buf_hw_alloc' [-Wmissing-prototypes]
486 | bool iecm_rx_hdr_buf_hw_alloc(struct iecm_queue *rxq,
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/iecm/iecm_txrx.c: In function 'iecm_rx_can_reuse_page':
drivers/net/ethernet/intel/iecm/iecm_txrx.c:2510:28: error: 'last_offset' undeclared (first use in this function); did you mean 'page_offset'?
2510 | if (rx_buf->page_offset > last_offset)
| ^~~~~~~~~~~
| page_offset
drivers/net/ethernet/intel/iecm/iecm_txrx.c:2510:28: note: each undeclared identifier is reported only once for each function it appears in
drivers/net/ethernet/intel/iecm/iecm_txrx.c: At top level:
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:3565:5: warning: no previous prototype for 'iecm_vport_splitq_napi_poll' [-Wmissing-prototypes]
3565 | int iecm_vport_splitq_napi_poll(struct napi_struct *napi, int budget)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:3603:6: warning: no previous prototype for 'iecm_vport_intr_map_vector_to_qs' [-Wmissing-prototypes]
3603 | void iecm_vport_intr_map_vector_to_qs(struct iecm_vport *vport)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:3715:5: warning: no previous prototype for 'iecm_vport_intr_alloc' [-Wmissing-prototypes]
3715 | int iecm_vport_intr_alloc(struct iecm_vport *vport)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from drivers/net/ethernet/intel/include/iecm.h:50,
from drivers/net/ethernet/intel/iecm/iecm_txrx.c:4:
drivers/net/ethernet/intel/include/iecm_txrx.h:293:30: warning: 'iecm_rx_ptype_lkup' defined but not used [-Wunused-const-variable=]
293 | struct iecm_rx_ptype_decoded iecm_rx_ptype_lkup[IECM_RX_SUPP_PTYPE] = {
| ^~~~~~~~~~~~~~~~~~
vim +/iecm_mb_intr_clean +49 drivers/net/ethernet/intel/iecm/iecm_lib.c
abb358c18f4525 Alice Michael 2020-05-18 43
abb358c18f4525 Alice Michael 2020-05-18 44 /**
abb358c18f4525 Alice Michael 2020-05-18 45 * iecm_mb_intr_clean - Interrupt handler for the mailbox
abb358c18f4525 Alice Michael 2020-05-18 46 * @irq: interrupt number
abb358c18f4525 Alice Michael 2020-05-18 47 * @data: pointer to the adapter structure
abb358c18f4525 Alice Michael 2020-05-18 48 */
abb358c18f4525 Alice Michael 2020-05-18 @49 irqreturn_t iecm_mb_intr_clean(int __always_unused irq, void *data)
abb358c18f4525 Alice Michael 2020-05-18 50 {
4227a8f4f793dc Alice Michael 2020-05-18 51 struct iecm_adapter *adapter = (struct iecm_adapter *)data;
4227a8f4f793dc Alice Michael 2020-05-18 52
4227a8f4f793dc Alice Michael 2020-05-18 53 set_bit(__IECM_MB_INTR_TRIGGER, adapter->flags);
4227a8f4f793dc Alice Michael 2020-05-18 54 queue_delayed_work(adapter->serv_wq, &adapter->serv_task,
4227a8f4f793dc Alice Michael 2020-05-18 55 msecs_to_jiffies(0));
4227a8f4f793dc Alice Michael 2020-05-18 56 return IRQ_HANDLED;
abb358c18f4525 Alice Michael 2020-05-18 57 }
abb358c18f4525 Alice Michael 2020-05-18 58
abb358c18f4525 Alice Michael 2020-05-18 59 /**
abb358c18f4525 Alice Michael 2020-05-18 60 * iecm_mb_irq_enable - Enable MSIX interrupt for the mailbox
abb358c18f4525 Alice Michael 2020-05-18 61 * @adapter: adapter to get the hardware address for register write
abb358c18f4525 Alice Michael 2020-05-18 62 */
abb358c18f4525 Alice Michael 2020-05-18 @63 void iecm_mb_irq_enable(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 64 {
4227a8f4f793dc Alice Michael 2020-05-18 65 struct iecm_hw *hw = &adapter->hw;
4227a8f4f793dc Alice Michael 2020-05-18 66 struct iecm_intr_reg *intr = &adapter->mb_vector.intr_reg;
4227a8f4f793dc Alice Michael 2020-05-18 67 u32 val;
4227a8f4f793dc Alice Michael 2020-05-18 68
4227a8f4f793dc Alice Michael 2020-05-18 69 val = intr->dyn_ctl_intena_m | intr->dyn_ctl_itridx_m;
4227a8f4f793dc Alice Michael 2020-05-18 70 writel_relaxed(val, (u8 *)(hw->hw_addr + intr->dyn_ctl));
abb358c18f4525 Alice Michael 2020-05-18 71 }
abb358c18f4525 Alice Michael 2020-05-18 72
abb358c18f4525 Alice Michael 2020-05-18 73 /**
abb358c18f4525 Alice Michael 2020-05-18 74 * iecm_mb_intr_req_irq - Request irq for the mailbox interrupt
abb358c18f4525 Alice Michael 2020-05-18 75 * @adapter: adapter structure to pass to the mailbox irq handler
abb358c18f4525 Alice Michael 2020-05-18 76 */
abb358c18f4525 Alice Michael 2020-05-18 @77 int iecm_mb_intr_req_irq(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 78 {
4227a8f4f793dc Alice Michael 2020-05-18 79 struct iecm_q_vector *mb_vector = &adapter->mb_vector;
4227a8f4f793dc Alice Michael 2020-05-18 80 int irq_num, mb_vidx = 0, err;
4227a8f4f793dc Alice Michael 2020-05-18 81
4227a8f4f793dc Alice Michael 2020-05-18 82 irq_num = adapter->msix_entries[mb_vidx].vector;
4227a8f4f793dc Alice Michael 2020-05-18 83 snprintf(mb_vector->name, sizeof(mb_vector->name) - 1,
4227a8f4f793dc Alice Michael 2020-05-18 84 "%s-%s-%d", dev_driver_string(&adapter->pdev->dev),
4227a8f4f793dc Alice Michael 2020-05-18 85 "Mailbox", mb_vidx);
4227a8f4f793dc Alice Michael 2020-05-18 86 err = request_irq(irq_num, adapter->irq_mb_handler, 0,
4227a8f4f793dc Alice Michael 2020-05-18 87 mb_vector->name, adapter);
4227a8f4f793dc Alice Michael 2020-05-18 88 if (err) {
4227a8f4f793dc Alice Michael 2020-05-18 89 dev_err(&adapter->pdev->dev,
4227a8f4f793dc Alice Michael 2020-05-18 90 "Request_irq for mailbox failed, error: %d\n", err);
4227a8f4f793dc Alice Michael 2020-05-18 91 return err;
4227a8f4f793dc Alice Michael 2020-05-18 92 }
4227a8f4f793dc Alice Michael 2020-05-18 93 set_bit(__IECM_MB_INTR_MODE, adapter->flags);
4227a8f4f793dc Alice Michael 2020-05-18 94 return 0;
abb358c18f4525 Alice Michael 2020-05-18 95 }
abb358c18f4525 Alice Michael 2020-05-18 96
abb358c18f4525 Alice Michael 2020-05-18 97 /**
abb358c18f4525 Alice Michael 2020-05-18 98 * iecm_get_mb_vec_id - Get vector index for mailbox
abb358c18f4525 Alice Michael 2020-05-18 99 * @adapter: adapter structure to access the vector chunks
abb358c18f4525 Alice Michael 2020-05-18 100 *
abb358c18f4525 Alice Michael 2020-05-18 101 * The first vector id in the requested vector chunks from the CP is for
abb358c18f4525 Alice Michael 2020-05-18 102 * the mailbox
abb358c18f4525 Alice Michael 2020-05-18 103 */
abb358c18f4525 Alice Michael 2020-05-18 @104 void iecm_get_mb_vec_id(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 105 {
4227a8f4f793dc Alice Michael 2020-05-18 106 struct virtchnl_vector_chunks *vchunks;
4227a8f4f793dc Alice Michael 2020-05-18 107 struct virtchnl_vector_chunk *chunk;
4227a8f4f793dc Alice Michael 2020-05-18 108
4227a8f4f793dc Alice Michael 2020-05-18 109 if (adapter->req_vec_chunks) {
4227a8f4f793dc Alice Michael 2020-05-18 110 vchunks = &adapter->req_vec_chunks->vchunks;
4227a8f4f793dc Alice Michael 2020-05-18 111 chunk = &vchunks->num_vchunk[0];
4227a8f4f793dc Alice Michael 2020-05-18 112 adapter->mb_vector.v_idx = chunk->start_vector_id;
4227a8f4f793dc Alice Michael 2020-05-18 113 } else {
4227a8f4f793dc Alice Michael 2020-05-18 114 adapter->mb_vector.v_idx = 0;
4227a8f4f793dc Alice Michael 2020-05-18 115 }
abb358c18f4525 Alice Michael 2020-05-18 116 }
abb358c18f4525 Alice Michael 2020-05-18 117
abb358c18f4525 Alice Michael 2020-05-18 118 /**
abb358c18f4525 Alice Michael 2020-05-18 119 * iecm_mb_intr_init - Initialize the mailbox interrupt
abb358c18f4525 Alice Michael 2020-05-18 120 * @adapter: adapter structure to store the mailbox vector
abb358c18f4525 Alice Michael 2020-05-18 121 */
abb358c18f4525 Alice Michael 2020-05-18 @122 int iecm_mb_intr_init(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 123 {
4227a8f4f793dc Alice Michael 2020-05-18 124 int err = 0;
4227a8f4f793dc Alice Michael 2020-05-18 125
4227a8f4f793dc Alice Michael 2020-05-18 126 iecm_get_mb_vec_id(adapter);
4227a8f4f793dc Alice Michael 2020-05-18 127 adapter->dev_ops.reg_ops.mb_intr_reg_init(adapter);
4227a8f4f793dc Alice Michael 2020-05-18 128 adapter->irq_mb_handler = iecm_mb_intr_clean;
4227a8f4f793dc Alice Michael 2020-05-18 129 err = iecm_mb_intr_req_irq(adapter);
4227a8f4f793dc Alice Michael 2020-05-18 130 return err;
abb358c18f4525 Alice Michael 2020-05-18 131 }
abb358c18f4525 Alice Michael 2020-05-18 132
abb358c18f4525 Alice Michael 2020-05-18 133 /**
abb358c18f4525 Alice Michael 2020-05-18 134 * iecm_intr_distribute - Distribute MSIX vectors
abb358c18f4525 Alice Michael 2020-05-18 135 * @adapter: adapter structure to get the vports
abb358c18f4525 Alice Michael 2020-05-18 136 *
abb358c18f4525 Alice Michael 2020-05-18 137 * Distribute the MSIX vectors acquired from the OS to the vports based on the
abb358c18f4525 Alice Michael 2020-05-18 138 * num of vectors requested by each vport
abb358c18f4525 Alice Michael 2020-05-18 139 */
abb358c18f4525 Alice Michael 2020-05-18 @140 void iecm_intr_distribute(struct iecm_adapter *adapter)
abb358c18f4525 Alice Michael 2020-05-18 141 {
4227a8f4f793dc Alice Michael 2020-05-18 142 struct iecm_vport *vport;
4227a8f4f793dc Alice Michael 2020-05-18 143
4227a8f4f793dc Alice Michael 2020-05-18 144 vport = adapter->vports[0];
4227a8f4f793dc Alice Michael 2020-05-18 145 if (adapter->num_msix_entries != adapter->num_req_msix)
4227a8f4f793dc Alice Michael 2020-05-18 146 vport->num_q_vectors = adapter->num_msix_entries -
4227a8f4f793dc Alice Michael 2020-05-18 147 IECM_MAX_NONQ_VEC - IECM_MIN_RDMA_VEC;
abb358c18f4525 Alice Michael 2020-05-18 148 }
abb358c18f4525 Alice Michael 2020-05-18 149
:::::: The code at line 49 was first introduced by commit
:::::: abb358c18f452548c4540e1de514e231a4ff587a iecm: Common module introduction and function stubs
:::::: TO: Alice Michael <alice.michael(a)intel.com>
:::::: CC: Jeff Kirsher <jeffrey.t.kirsher(a)intel.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months