Re: [PATCH 20/43] instrumented.h: add KMSAN support
by kernel test robot
Hi Alexander,
I love your patch! Perhaps something to improve:
[auto build test WARNING on tip/x86/mm]
[also build test WARNING on linus/master v5.16-rc5]
[cannot apply to tip/x86/core hnaz-mm/master next-20211214]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Alexander-Potapenko/Add-KernelMe...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 35fa745286ac44ee26ed100c2bd2553368ad193b
config: x86_64-randconfig-s021-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151809.wxOe39yF-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/0day-ci/linux/commit/9faa0d15bc0e13d7f3d4737ac4b8b9f7d...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Alexander-Potapenko/Add-KernelMemorySanitizer-infrastructure/20211215-003033
git checkout 9faa0d15bc0e13d7f3d4737ac4b8b9f7d33bc641
# save the config file to linux build tree
mkdir build_dir
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kernel/fpu/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
arch/x86/kernel/fpu/signal.c: note: in included file (through include/asm-generic/bitops/instrumented-atomic.h, arch/x86/include/asm/bitops.h, include/linux/bitops.h, ...):
>> include/linux/instrumented.h:121:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *to @@ got void [noderef] __user *to @@
include/linux/instrumented.h:121:28: sparse: expected void const *to
include/linux/instrumented.h:121:28: sparse: got void [noderef] __user *to
>> include/linux/instrumented.h:121:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *to @@ got void [noderef] __user *to @@
include/linux/instrumented.h:121:28: sparse: expected void const *to
include/linux/instrumented.h:121:28: sparse: got void [noderef] __user *to
vim +121 include/linux/instrumented.h
105
106 /**
107 * instrument_copy_to_user - instrument reads of copy_to_user
108 *
109 * Instrument reads from kernel memory, that are due to copy_to_user (and
110 * variants). The instrumentation must be inserted before the accesses.
111 *
112 * @to destination address
113 * @from source address
114 * @n number of bytes to copy
115 */
116 static __always_inline void
117 instrument_copy_to_user(void __user *to, const void *from, unsigned long n)
118 {
119 kasan_check_read(from, n);
120 kcsan_check_read(from, n);
> 121 kmsan_copy_to_user(to, from, n, 0);
122 }
123
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
Re: [PATCH v2 01/15] clk: qcom: gpucc-sdm660: fix two clocks with parent_names
by kernel test robot
Hi Dmitry,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on clk/clk-next]
[also build test ERROR on v5.16-rc5 next-20211214]
[cannot apply to agross-msm/qcom/for-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Dmitry-Baryshkov/clk-qcom-anothe...
base: https://git.kernel.org/pub/scm/linux/kernel/git/clk/linux.git clk-next
config: nios2-buildonly-randconfig-r005-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151703.HPWFiC3t-lk...)
compiler: nios2-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/a93be2f54e6825699913bbe0aab77dd7e...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Dmitry-Baryshkov/clk-qcom-another-round-of-clock-drivers-cleanup/20211215-085637
git checkout a93be2f54e6825699913bbe0aab77dd7e4837fde
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=nios2 SHELL=/bin/bash drivers/clk/qcom/
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/clk/qcom/gpucc-sdm660.c:208:52: error: 'struct clk_rcg2' has no member named 'clr'; did you mean 'clkr'?
208 | &rbbmtimer_clk_src.clr.hw,
| ^~~
| clkr
vim +208 drivers/clk/qcom/gpucc-sdm660.c
198
199 static struct clk_branch gpucc_rbbmtimer_clk = {
200 .halt_reg = 0x10d0,
201 .halt_check = BRANCH_HALT,
202 .clkr = {
203 .enable_reg = 0x10d0,
204 .enable_mask = BIT(0),
205 .hw.init = &(struct clk_init_data){
206 .name = "gpucc_rbbmtimer_clk",
207 .parent_hws = (const struct clk_hw*[]){
> 208 &rbbmtimer_clk_src.clr.hw,
209 },
210 .num_parents = 1,
211 .flags = CLK_SET_RATE_PARENT,
212 .ops = &clk_branch2_ops,
213 },
214 },
215 };
216
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
[arm:zii 119/186] drivers/net/dsa/mt7530.c:2707:27: error: no member named 'phylink_pcs' in 'struct mt753x_pcs'
by kernel test robot
tree: git://git.armlinux.org.uk/~rmk/linux-arm.git zii
head: d3ebd79d7fb6476e2409c147e4dcc304733f7ae6
commit: 76c8c505247c567d0883b44bab8b678bc9238bfb [119/186] net: dsa: mt7530: partially convert to phylink_pcs *EXPERIMENTAL*
config: x86_64-randconfig-r016-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151746.9DgbKRad-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project b6a2ddb6c8ac29412b1361810972e15221fa021c)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add arm git://git.armlinux.org.uk/~rmk/linux-arm.git
git fetch --no-tags arm zii
git checkout 76c8c505247c567d0883b44bab8b678bc9238bfb
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/net/
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/net/dsa/mt7530.c:2707:27: error: no member named 'phylink_pcs' in 'struct mt753x_pcs'
return &priv->pcs[port].phylink_pcs;
~~~~~~~~~~~~~~~ ^
drivers/net/dsa/mt7530.c:2882:46: error: no member named 'phylink_pcs' in 'struct mt753x_pcs'
mt753x_phylink_pcs_link_up(&priv->pcs[port].phylink_pcs, MLO_AN_FIXED,
~~~~~~~~~~~~~~~ ^
drivers/net/dsa/mt7530.c:3026:18: error: incompatible function pointer types initializing 'int (*)(struct phylink_pcs *, unsigned long *, const struct phylink_link_state *)' with an expression of type 'void (struct phylink_pcs *, unsigned long *, const struct phylink_link_state *)' [-Werror,-Wincompatible-function-pointer-types]
.pcs_validate = mt753x_pcs_validate,
^~~~~~~~~~~~~~~~~~~
drivers/net/dsa/mt7530.c:3033:18: error: incompatible function pointer types initializing 'int (*)(struct phylink_pcs *, unsigned long *, const struct phylink_link_state *)' with an expression of type 'void (struct phylink_pcs *, unsigned long *, const struct phylink_link_state *)' [-Werror,-Wincompatible-function-pointer-types]
.pcs_validate = mt753x_pcs_validate,
^~~~~~~~~~~~~~~~~~~
>> drivers/net/dsa/mt7530.c:3060:19: error: member reference type 'struct phylink_pcs *' is a pointer; did you mean to use '->'?
priv->pcs[i].pcs.ops = priv->pcs_ops;
~~~~~~~~~~~~~~~~^
->
>> drivers/net/dsa/mt7530.c:3060:32: error: no member named 'pcs_ops' in 'struct mt7530_priv'
priv->pcs[i].pcs.ops = priv->pcs_ops;
~~~~ ^
6 errors generated.
vim +2707 drivers/net/dsa/mt7530.c
2695
2696 static struct phylink_pcs *
2697 mt753x_phylink_mac_select_pcs(struct dsa_switch *ds, int port,
2698 phy_interface_t interface)
2699 {
2700 struct mt7530_priv *priv = ds->priv;
2701
2702 switch (interface) {
2703 case PHY_INTERFACE_MODE_TRGMII:
2704 case PHY_INTERFACE_MODE_SGMII:
2705 case PHY_INTERFACE_MODE_1000BASEX:
2706 case PHY_INTERFACE_MODE_2500BASEX:
> 2707 return &priv->pcs[port].phylink_pcs;
2708
2709 default:
2710 return NULL;
2711 }
2712 }
2713
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
[linux-stable-rc:queue/4.14 3742/9999] arch/powerpc/kernel/traps.c:1658:6: error: no previous declaration for 'DebugException'
by kernel test robot
Hi Dirk,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git queue/4.14
head: 93489bfff5495e498b3932e011b0221ff242e0b7
commit: 88f7a6aa7fb9aa5076b65489146045dac865f1d3 [3742/9999] scripts/dtc: Remove redundant YYLOC global declaration
config: powerpc-randconfig-r003-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151740.QoiLaP9D-lk...)
compiler: powerpc-linux-gcc (GCC) 7.5.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.gi...
git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git fetch --no-tags linux-stable-rc queue/4.14
git checkout 88f7a6aa7fb9aa5076b65489146045dac865f1d3
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-7.5.0 make.cross O=build_dir ARCH=powerpc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from include/linux/uaccess.h:14:0,
from arch/powerpc/include/asm/sections.h:7,
from include/linux/interrupt.h:22,
from arch/powerpc/kernel/traps.c:27:
arch/powerpc/kernel/traps.c: In function 'emulate_string_inst':
arch/powerpc/include/asm/uaccess.h:52:35: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits]
(((size) == 0) || (((size) - 1) <= ((segment).seg - (addr)))))
^
arch/powerpc/include/asm/uaccess.h:58:3: note: in expansion of macro '__access_ok'
__access_ok((__force unsigned long)(addr), (size), get_fs()))
^~~~~~~~~~~
arch/powerpc/include/asm/uaccess.h:253:6: note: in expansion of macro 'access_ok'
if (access_ok(VERIFY_READ, __gu_addr, (size))) { \
^~~~~~~~~
arch/powerpc/include/asm/uaccess.h:80:2: note: in expansion of macro '__get_user_check'
__get_user_check((x), (ptr), sizeof(*(ptr)))
^~~~~~~~~~~~~~~~
arch/powerpc/kernel/traps.c:889:9: note: in expansion of macro 'get_user'
if (get_user(val, (u8 __user *)EA))
^~~~~~~~
arch/powerpc/include/asm/uaccess.h:52:35: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits]
(((size) == 0) || (((size) - 1) <= ((segment).seg - (addr)))))
^
arch/powerpc/include/asm/uaccess.h:58:3: note: in expansion of macro '__access_ok'
__access_ok((__force unsigned long)(addr), (size), get_fs()))
^~~~~~~~~~~
arch/powerpc/include/asm/uaccess.h:160:6: note: in expansion of macro 'access_ok'
if (access_ok(VERIFY_WRITE, __pu_addr, size)) \
^~~~~~~~~
arch/powerpc/include/asm/uaccess.h:82:2: note: in expansion of macro '__put_user_check'
__put_user_check((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)))
^~~~~~~~~~~~~~~~
arch/powerpc/kernel/traps.c:900:9: note: in expansion of macro 'put_user'
if (put_user(val, (u8 __user *)EA))
^~~~~~~~
arch/powerpc/kernel/traps.c: At top level:
arch/powerpc/kernel/traps.c:1281:6: error: no previous declaration for 'slb_miss_bad_addr' [-Werror=missing-declarations]
void slb_miss_bad_addr(struct pt_regs *regs)
^~~~~~~~~~~~~~~~~
>> arch/powerpc/kernel/traps.c:1658:6: error: no previous declaration for 'DebugException' [-Werror=missing-declarations]
void DebugException(struct pt_regs *regs, unsigned long debug_status)
^~~~~~~~~~~~~~
>> arch/powerpc/kernel/traps.c:1771:6: error: no previous declaration for 'CacheLockingException' [-Werror=missing-declarations]
void CacheLockingException(struct pt_regs *regs, unsigned long address,
^~~~~~~~~~~~~~~~~~~~~
arch/powerpc/kernel/traps.c:1785:6: error: no previous declaration for 'SPEFloatingPointException' [-Werror=missing-declarations]
void SPEFloatingPointException(struct pt_regs *regs)
^~~~~~~~~~~~~~~~~~~~~~~~~
>> arch/powerpc/kernel/traps.c:1833:6: error: no previous declaration for 'SPEFloatingPointRoundException' [-Werror=missing-declarations]
void SPEFloatingPointRoundException(struct pt_regs *regs)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/powerpc/kernel/traps.c:1884:29: error: no previous declaration for 'WatchdogHandler' [-Werror=missing-declarations]
void __attribute__ ((weak)) WatchdogHandler(struct pt_regs *regs)
^~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
--
In file included from include/linux/uaccess.h:14:0,
from include/asm-generic/termios-base.h:8,
from arch/powerpc/include/asm/termios.h:20,
from include/uapi/linux/termios.h:6,
from include/linux/tty.h:7,
from arch/powerpc/kernel/setup_32.c:13:
include/asm-generic/termios-base.h: In function 'user_termio_to_kernel_termios':
arch/powerpc/include/asm/uaccess.h:52:35: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits]
(((size) == 0) || (((size) - 1) <= ((segment).seg - (addr)))))
^
arch/powerpc/include/asm/uaccess.h:58:3: note: in expansion of macro '__access_ok'
__access_ok((__force unsigned long)(addr), (size), get_fs()))
^~~~~~~~~~~
arch/powerpc/include/asm/uaccess.h:253:6: note: in expansion of macro 'access_ok'
if (access_ok(VERIFY_READ, __gu_addr, (size))) { \
^~~~~~~~~
arch/powerpc/include/asm/uaccess.h:80:2: note: in expansion of macro '__get_user_check'
__get_user_check((x), (ptr), sizeof(*(ptr)))
^~~~~~~~~~~~~~~~
include/asm-generic/termios-base.h:36:6: note: in expansion of macro 'get_user'
if (get_user(termios->c_line, &termio->c_line) < 0)
^~~~~~~~
include/asm-generic/termios-base.h: In function 'kernel_termios_to_user_termio':
arch/powerpc/include/asm/uaccess.h:52:35: error: comparison of unsigned expression >= 0 is always true [-Werror=type-limits]
(((size) == 0) || (((size) - 1) <= ((segment).seg - (addr)))))
^
arch/powerpc/include/asm/uaccess.h:58:3: note: in expansion of macro '__access_ok'
__access_ok((__force unsigned long)(addr), (size), get_fs()))
^~~~~~~~~~~
arch/powerpc/include/asm/uaccess.h:160:6: note: in expansion of macro 'access_ok'
if (access_ok(VERIFY_WRITE, __pu_addr, size)) \
^~~~~~~~~
arch/powerpc/include/asm/uaccess.h:82:2: note: in expansion of macro '__put_user_check'
__put_user_check((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)))
^~~~~~~~~~~~~~~~
include/asm-generic/termios-base.h:58:6: note: in expansion of macro 'put_user'
put_user(termios->c_line, &termio->c_line) < 0 ||
^~~~~~~~
arch/powerpc/kernel/setup_32.c: At top level:
arch/powerpc/kernel/setup_32.c:68:30: error: no previous declaration for 'early_init' [-Werror=missing-declarations]
notrace unsigned long __init early_init(unsigned long dt_ptr)
^~~~~~~~~~
arch/powerpc/kernel/setup_32.c:99:21: error: no previous declaration for 'machine_init' [-Werror=missing-declarations]
notrace void __init machine_init(u64 dt_ptr)
^~~~~~~~~~~~
arch/powerpc/kernel/setup_32.c:124:12: error: no previous declaration for 'ppc_setup_l2cr' [-Werror=missing-declarations]
int __init ppc_setup_l2cr(char *str)
^~~~~~~~~~~~~~
arch/powerpc/kernel/setup_32.c:137:12: error: no previous declaration for 'ppc_setup_l3cr' [-Werror=missing-declarations]
int __init ppc_setup_l3cr(char *str)
^~~~~~~~~~~~~~
arch/powerpc/kernel/setup_32.c:183:12: error: no previous declaration for 'ppc_init' [-Werror=missing-declarations]
int __init ppc_init(void)
^~~~~~~~
arch/powerpc/kernel/setup_32.c:198:13: error: no previous declaration for 'irqstack_early_init' [-Werror=missing-declarations]
void __init irqstack_early_init(void)
^~~~~~~~~~~~~~~~~~~
>> arch/powerpc/kernel/setup_32.c:213:13: error: no previous declaration for 'exc_lvl_early_init' [-Werror=missing-declarations]
void __init exc_lvl_early_init(void)
^~~~~~~~~~~~~~~~~~
arch/powerpc/kernel/setup_32.c:238:13: error: no previous declaration for 'setup_power_save' [-Werror=missing-declarations]
void __init setup_power_save(void)
^~~~~~~~~~~~~~~~
arch/powerpc/kernel/setup_32.c:253:13: error: no previous declaration for 'initialize_cache_info' [-Werror=missing-declarations]
__init void initialize_cache_info(void)
^~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
--
>> arch/powerpc/mm/fsl_booke_mmu.c:70:15: error: no previous declaration for 'tlbcam_sz' [-Werror=missing-declarations]
unsigned long tlbcam_sz(int idx)
^~~~~~~~~
>> arch/powerpc/mm/fsl_booke_mmu.c:269:21: error: no previous declaration for 'relocate_init' [-Werror=missing-declarations]
notrace void __init relocate_init(u64 dt_ptr, phys_addr_t start)
^~~~~~~~~~~~~
cc1: all warnings being treated as errors
--
In file included from include/linux/hugetlb.h:444:0,
from arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:50:
arch/powerpc/include/asm/hugetlb.h: In function 'huge_ptep_clear_flush':
arch/powerpc/include/asm/hugetlb.h:167:8: error: variable 'pte' set but not used [-Werror=unused-but-set-variable]
pte_t pte;
^~~
arch/powerpc/kvm/../../../virt/kvm/kvm_main.c: At top level:
>> arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:140:13: error: no previous declaration for 'kvm_arch_mmu_notifier_invalidate_range' [-Werror=missing-declarations]
__weak void kvm_arch_mmu_notifier_invalidate_range(struct kvm *kvm,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:635:12: error: no previous declaration for 'kvm_arch_post_init_vm' [-Werror=missing-declarations]
int __weak kvm_arch_post_init_vm(struct kvm *kvm)
^~~~~~~~~~~~~~~~~~~~~
>> arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:644:13: error: no previous declaration for 'kvm_arch_pre_destroy_vm' [-Werror=missing-declarations]
void __weak kvm_arch_pre_destroy_vm(struct kvm *kvm)
^~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/kvm_host.h:14:0,
from arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:21:
include/linux/signal.h: In function 'sigemptyset':
include/linux/signal.h:178:22: error: this statement may fall through [-Werror=implicit-fallthrough=]
case 2: set->sig[1] = 0;
~~~~~~~~~~~~^~~
include/linux/signal.h:179:2: note: here
case 1: set->sig[0] = 0;
^~~~
cc1: all warnings being treated as errors
--
>> arch/powerpc/kvm/booke.c:602:6: error: no previous declaration for 'kvmppc_watchdog_func' [-Werror=missing-declarations]
void kvmppc_watchdog_func(unsigned long data)
^~~~~~~~~~~~~~~~~~~~
>> arch/powerpc/kvm/booke.c:985:5: error: no previous declaration for 'kvmppc_handle_exit' [-Werror=missing-declarations]
int kvmppc_handle_exit(struct kvm_run *run, struct kvm_vcpu *vcpu,
^~~~~~~~~~~~~~~~~~
>> arch/powerpc/kvm/booke.c:1921:6: error: no previous declaration for 'kvm_guest_protect_msr' [-Werror=missing-declarations]
void kvm_guest_protect_msr(struct kvm_vcpu *vcpu, ulong prot_bitmap, bool set)
^~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
--
In file included from include/linux/hugetlb.h:444:0,
from arch/powerpc/kvm/e500_mmu.c:31:
arch/powerpc/include/asm/hugetlb.h: In function 'huge_ptep_clear_flush':
arch/powerpc/include/asm/hugetlb.h:167:8: error: variable 'pte' set but not used [-Werror=unused-but-set-variable]
pte_t pte;
^~~
arch/powerpc/kvm/e500_mmu.c: At top level:
>> arch/powerpc/kvm/e500_mmu.c:539:6: error: no previous declaration for 'kvmppc_mmu_destroy_e500' [-Werror=missing-declarations]
void kvmppc_mmu_destroy_e500(struct kvm_vcpu *vcpu)
^~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
--
arch/powerpc/kvm/mpic.c: In function 'kvmppc_mpic_connect_vcpu':
>> arch/powerpc/kvm/mpic.c:1743:10: error: comparison of unsigned expression < 0 is always false [-Werror=type-limits]
if (cpu < 0 || cpu >= MAX_CPU)
^
cc1: all warnings being treated as errors
vim +/DebugException +1658 arch/powerpc/kernel/traps.c
14cf11af6cf608 Paul Mackerras 2005-09-26 1657
03465f899bdac7 Nicholas Piggin 2016-09-16 @1658 void DebugException(struct pt_regs *regs, unsigned long debug_status)
14cf11af6cf608 Paul Mackerras 2005-09-26 1659 {
51ae8d4a2b9e4a Bharat Bhushan 2013-07-04 1660 current->thread.debug.dbsr = debug_status;
3bffb6529cf10d Dave Kleikamp 2010-02-08 1661
ec097c84dff175 Roland McGrath 2009-05-28 1662 /* Hack alert: On BookE, Branch Taken stops on the branch itself, while
ec097c84dff175 Roland McGrath 2009-05-28 1663 * on server, it stops on the target of the branch. In order to simulate
ec097c84dff175 Roland McGrath 2009-05-28 1664 * the server behaviour, we thus restart right away with a single step
ec097c84dff175 Roland McGrath 2009-05-28 1665 * instead of stopping here when hitting a BT
ec097c84dff175 Roland McGrath 2009-05-28 1666 */
ec097c84dff175 Roland McGrath 2009-05-28 1667 if (debug_status & DBSR_BT) {
ec097c84dff175 Roland McGrath 2009-05-28 1668 regs->msr &= ~MSR_DE;
ec097c84dff175 Roland McGrath 2009-05-28 1669
ec097c84dff175 Roland McGrath 2009-05-28 1670 /* Disable BT */
ec097c84dff175 Roland McGrath 2009-05-28 1671 mtspr(SPRN_DBCR0, mfspr(SPRN_DBCR0) & ~DBCR0_BT);
ec097c84dff175 Roland McGrath 2009-05-28 1672 /* Clear the BT event */
ec097c84dff175 Roland McGrath 2009-05-28 1673 mtspr(SPRN_DBSR, DBSR_BT);
ec097c84dff175 Roland McGrath 2009-05-28 1674
ec097c84dff175 Roland McGrath 2009-05-28 1675 /* Do the single step trick only when coming from userspace */
ec097c84dff175 Roland McGrath 2009-05-28 1676 if (user_mode(regs)) {
51ae8d4a2b9e4a Bharat Bhushan 2013-07-04 1677 current->thread.debug.dbcr0 &= ~DBCR0_BT;
51ae8d4a2b9e4a Bharat Bhushan 2013-07-04 1678 current->thread.debug.dbcr0 |= DBCR0_IDM | DBCR0_IC;
ec097c84dff175 Roland McGrath 2009-05-28 1679 regs->msr |= MSR_DE;
ec097c84dff175 Roland McGrath 2009-05-28 1680 return;
ec097c84dff175 Roland McGrath 2009-05-28 1681 }
ec097c84dff175 Roland McGrath 2009-05-28 1682
6cc89bad60a673 Naveen N. Rao 2016-11-21 1683 if (kprobe_post_handler(regs))
6cc89bad60a673 Naveen N. Rao 2016-11-21 1684 return;
6cc89bad60a673 Naveen N. Rao 2016-11-21 1685
ec097c84dff175 Roland McGrath 2009-05-28 1686 if (notify_die(DIE_SSTEP, "block_step", regs, 5,
ec097c84dff175 Roland McGrath 2009-05-28 1687 5, SIGTRAP) == NOTIFY_STOP) {
ec097c84dff175 Roland McGrath 2009-05-28 1688 return;
ec097c84dff175 Roland McGrath 2009-05-28 1689 }
ec097c84dff175 Roland McGrath 2009-05-28 1690 if (debugger_sstep(regs))
ec097c84dff175 Roland McGrath 2009-05-28 1691 return;
ec097c84dff175 Roland McGrath 2009-05-28 1692 } else if (debug_status & DBSR_IC) { /* Instruction complete */
14cf11af6cf608 Paul Mackerras 2005-09-26 1693 regs->msr &= ~MSR_DE;
f82796214a95b1 Kumar Gala 2008-06-26 1694
14cf11af6cf608 Paul Mackerras 2005-09-26 1695 /* Disable instruction completion */
14cf11af6cf608 Paul Mackerras 2005-09-26 1696 mtspr(SPRN_DBCR0, mfspr(SPRN_DBCR0) & ~DBCR0_IC);
14cf11af6cf608 Paul Mackerras 2005-09-26 1697 /* Clear the instruction completion event */
14cf11af6cf608 Paul Mackerras 2005-09-26 1698 mtspr(SPRN_DBSR, DBSR_IC);
f82796214a95b1 Kumar Gala 2008-06-26 1699
6cc89bad60a673 Naveen N. Rao 2016-11-21 1700 if (kprobe_post_handler(regs))
6cc89bad60a673 Naveen N. Rao 2016-11-21 1701 return;
6cc89bad60a673 Naveen N. Rao 2016-11-21 1702
f82796214a95b1 Kumar Gala 2008-06-26 1703 if (notify_die(DIE_SSTEP, "single_step", regs, 5,
f82796214a95b1 Kumar Gala 2008-06-26 1704 5, SIGTRAP) == NOTIFY_STOP) {
f82796214a95b1 Kumar Gala 2008-06-26 1705 return;
f82796214a95b1 Kumar Gala 2008-06-26 1706 }
f82796214a95b1 Kumar Gala 2008-06-26 1707
14cf11af6cf608 Paul Mackerras 2005-09-26 1708 if (debugger_sstep(regs))
14cf11af6cf608 Paul Mackerras 2005-09-26 1709 return;
f82796214a95b1 Kumar Gala 2008-06-26 1710
d6a61bfc06d6f2 Luis Machado 2008-07-24 1711 if (user_mode(regs)) {
51ae8d4a2b9e4a Bharat Bhushan 2013-07-04 1712 current->thread.debug.dbcr0 &= ~DBCR0_IC;
51ae8d4a2b9e4a Bharat Bhushan 2013-07-04 1713 if (DBCR_ACTIVE_EVENTS(current->thread.debug.dbcr0,
51ae8d4a2b9e4a Bharat Bhushan 2013-07-04 1714 current->thread.debug.dbcr1))
3bffb6529cf10d Dave Kleikamp 2010-02-08 1715 regs->msr |= MSR_DE;
3bffb6529cf10d Dave Kleikamp 2010-02-08 1716 else
3bffb6529cf10d Dave Kleikamp 2010-02-08 1717 /* Make sure the IDM bit is off */
51ae8d4a2b9e4a Bharat Bhushan 2013-07-04 1718 current->thread.debug.dbcr0 &= ~DBCR0_IDM;
14cf11af6cf608 Paul Mackerras 2005-09-26 1719 }
3bffb6529cf10d Dave Kleikamp 2010-02-08 1720
3bffb6529cf10d Dave Kleikamp 2010-02-08 1721 _exception(SIGTRAP, regs, TRAP_TRACE, regs->nip);
3bffb6529cf10d Dave Kleikamp 2010-02-08 1722 } else
3bffb6529cf10d Dave Kleikamp 2010-02-08 1723 handle_debug(regs, debug_status);
14cf11af6cf608 Paul Mackerras 2005-09-26 1724 }
03465f899bdac7 Nicholas Piggin 2016-09-16 1725 NOKPROBE_SYMBOL(DebugException);
172ae2e7f8ff90 Dave Kleikamp 2010-02-08 1726 #endif /* CONFIG_PPC_ADV_DEBUG_REGS */
14cf11af6cf608 Paul Mackerras 2005-09-26 1727
14cf11af6cf608 Paul Mackerras 2005-09-26 1728 #if !defined(CONFIG_TAU_INT)
14cf11af6cf608 Paul Mackerras 2005-09-26 1729 void TAUException(struct pt_regs *regs)
14cf11af6cf608 Paul Mackerras 2005-09-26 1730 {
14cf11af6cf608 Paul Mackerras 2005-09-26 1731 printk("TAU trap at PC: %lx, MSR: %lx, vector=%lx %s\n",
14cf11af6cf608 Paul Mackerras 2005-09-26 1732 regs->nip, regs->msr, regs->trap, print_tainted());
14cf11af6cf608 Paul Mackerras 2005-09-26 1733 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1734 #endif /* CONFIG_INT_TAU */
14cf11af6cf608 Paul Mackerras 2005-09-26 1735
14cf11af6cf608 Paul Mackerras 2005-09-26 1736 #ifdef CONFIG_ALTIVEC
dc1c1ca3dcd94c Stephen Rothwell 2005-10-01 1737 void altivec_assist_exception(struct pt_regs *regs)
14cf11af6cf608 Paul Mackerras 2005-09-26 1738 {
14cf11af6cf608 Paul Mackerras 2005-09-26 1739 int err;
14cf11af6cf608 Paul Mackerras 2005-09-26 1740
14cf11af6cf608 Paul Mackerras 2005-09-26 1741 if (!user_mode(regs)) {
14cf11af6cf608 Paul Mackerras 2005-09-26 1742 printk(KERN_EMERG "VMX/Altivec assist exception in kernel mode"
14cf11af6cf608 Paul Mackerras 2005-09-26 1743 " at %lx\n", regs->nip);
8dad3f9257414f Paul Mackerras 2005-10-06 1744 die("Kernel VMX/Altivec assist exception", regs, SIGILL);
14cf11af6cf608 Paul Mackerras 2005-09-26 1745 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1746
dc1c1ca3dcd94c Stephen Rothwell 2005-10-01 1747 flush_altivec_to_thread(current);
dc1c1ca3dcd94c Stephen Rothwell 2005-10-01 1748
eecff81d1fcda2 Anton Blanchard 2009-10-27 1749 PPC_WARN_EMULATED(altivec, regs);
14cf11af6cf608 Paul Mackerras 2005-09-26 1750 err = emulate_altivec(regs);
14cf11af6cf608 Paul Mackerras 2005-09-26 1751 if (err == 0) {
14cf11af6cf608 Paul Mackerras 2005-09-26 1752 regs->nip += 4; /* skip emulated instruction */
14cf11af6cf608 Paul Mackerras 2005-09-26 1753 emulate_single_step(regs);
14cf11af6cf608 Paul Mackerras 2005-09-26 1754 return;
14cf11af6cf608 Paul Mackerras 2005-09-26 1755 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1756
14cf11af6cf608 Paul Mackerras 2005-09-26 1757 if (err == -EFAULT) {
14cf11af6cf608 Paul Mackerras 2005-09-26 1758 /* got an error reading the instruction */
14cf11af6cf608 Paul Mackerras 2005-09-26 1759 _exception(SIGSEGV, regs, SEGV_ACCERR, regs->nip);
14cf11af6cf608 Paul Mackerras 2005-09-26 1760 } else {
14cf11af6cf608 Paul Mackerras 2005-09-26 1761 /* didn't recognize the instruction */
14cf11af6cf608 Paul Mackerras 2005-09-26 1762 /* XXX quick hack for now: set the non-Java bit in the VSCR */
76462232c21dc0 Christian Dietrich 2011-06-04 1763 printk_ratelimited(KERN_ERR "Unrecognized altivec instruction "
14cf11af6cf608 Paul Mackerras 2005-09-26 1764 "in %s at %lx\n", current->comm, regs->nip);
de79f7b9f6f92e Paul Mackerras 2013-09-10 1765 current->thread.vr_state.vscr.u[3] |= 0x10000;
14cf11af6cf608 Paul Mackerras 2005-09-26 1766 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1767 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1768 #endif /* CONFIG_ALTIVEC */
14cf11af6cf608 Paul Mackerras 2005-09-26 1769
14cf11af6cf608 Paul Mackerras 2005-09-26 1770 #ifdef CONFIG_FSL_BOOKE
14cf11af6cf608 Paul Mackerras 2005-09-26 @1771 void CacheLockingException(struct pt_regs *regs, unsigned long address,
14cf11af6cf608 Paul Mackerras 2005-09-26 1772 unsigned long error_code)
14cf11af6cf608 Paul Mackerras 2005-09-26 1773 {
14cf11af6cf608 Paul Mackerras 2005-09-26 1774 /* We treat cache locking instructions from the user
14cf11af6cf608 Paul Mackerras 2005-09-26 1775 * as priv ops, in the future we could try to do
14cf11af6cf608 Paul Mackerras 2005-09-26 1776 * something smarter
14cf11af6cf608 Paul Mackerras 2005-09-26 1777 */
14cf11af6cf608 Paul Mackerras 2005-09-26 1778 if (error_code & (ESR_DLK|ESR_ILK))
14cf11af6cf608 Paul Mackerras 2005-09-26 1779 _exception(SIGILL, regs, ILL_PRVOPC, regs->nip);
14cf11af6cf608 Paul Mackerras 2005-09-26 1780 return;
14cf11af6cf608 Paul Mackerras 2005-09-26 1781 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1782 #endif /* CONFIG_FSL_BOOKE */
14cf11af6cf608 Paul Mackerras 2005-09-26 1783
14cf11af6cf608 Paul Mackerras 2005-09-26 1784 #ifdef CONFIG_SPE
14cf11af6cf608 Paul Mackerras 2005-09-26 1785 void SPEFloatingPointException(struct pt_regs *regs)
14cf11af6cf608 Paul Mackerras 2005-09-26 1786 {
6a800f36acd5bf Liu Yu 2008-10-28 1787 extern int do_spe_mathemu(struct pt_regs *regs);
14cf11af6cf608 Paul Mackerras 2005-09-26 1788 unsigned long spefscr;
14cf11af6cf608 Paul Mackerras 2005-09-26 1789 int fpexc_mode;
14cf11af6cf608 Paul Mackerras 2005-09-26 1790 int code = 0;
6a800f36acd5bf Liu Yu 2008-10-28 1791 int err;
6a800f36acd5bf Liu Yu 2008-10-28 1792
685659ee70db0b yu liu 2011-06-14 1793 flush_spe_to_thread(current);
14cf11af6cf608 Paul Mackerras 2005-09-26 1794
14cf11af6cf608 Paul Mackerras 2005-09-26 1795 spefscr = current->thread.spefscr;
14cf11af6cf608 Paul Mackerras 2005-09-26 1796 fpexc_mode = current->thread.fpexc_mode;
14cf11af6cf608 Paul Mackerras 2005-09-26 1797
14cf11af6cf608 Paul Mackerras 2005-09-26 1798 if ((spefscr & SPEFSCR_FOVF) && (fpexc_mode & PR_FP_EXC_OVF)) {
14cf11af6cf608 Paul Mackerras 2005-09-26 1799 code = FPE_FLTOVF;
14cf11af6cf608 Paul Mackerras 2005-09-26 1800 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1801 else if ((spefscr & SPEFSCR_FUNF) && (fpexc_mode & PR_FP_EXC_UND)) {
14cf11af6cf608 Paul Mackerras 2005-09-26 1802 code = FPE_FLTUND;
14cf11af6cf608 Paul Mackerras 2005-09-26 1803 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1804 else if ((spefscr & SPEFSCR_FDBZ) && (fpexc_mode & PR_FP_EXC_DIV))
14cf11af6cf608 Paul Mackerras 2005-09-26 1805 code = FPE_FLTDIV;
14cf11af6cf608 Paul Mackerras 2005-09-26 1806 else if ((spefscr & SPEFSCR_FINV) && (fpexc_mode & PR_FP_EXC_INV)) {
14cf11af6cf608 Paul Mackerras 2005-09-26 1807 code = FPE_FLTINV;
14cf11af6cf608 Paul Mackerras 2005-09-26 1808 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1809 else if ((spefscr & (SPEFSCR_FG | SPEFSCR_FX)) && (fpexc_mode & PR_FP_EXC_RES))
14cf11af6cf608 Paul Mackerras 2005-09-26 1810 code = FPE_FLTRES;
14cf11af6cf608 Paul Mackerras 2005-09-26 1811
6a800f36acd5bf Liu Yu 2008-10-28 1812 err = do_spe_mathemu(regs);
6a800f36acd5bf Liu Yu 2008-10-28 1813 if (err == 0) {
6a800f36acd5bf Liu Yu 2008-10-28 1814 regs->nip += 4; /* skip emulated instruction */
6a800f36acd5bf Liu Yu 2008-10-28 1815 emulate_single_step(regs);
6a800f36acd5bf Liu Yu 2008-10-28 1816 return;
6a800f36acd5bf Liu Yu 2008-10-28 1817 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1818
6a800f36acd5bf Liu Yu 2008-10-28 1819 if (err == -EFAULT) {
6a800f36acd5bf Liu Yu 2008-10-28 1820 /* got an error reading the instruction */
6a800f36acd5bf Liu Yu 2008-10-28 1821 _exception(SIGSEGV, regs, SEGV_ACCERR, regs->nip);
6a800f36acd5bf Liu Yu 2008-10-28 1822 } else if (err == -EINVAL) {
6a800f36acd5bf Liu Yu 2008-10-28 1823 /* didn't recognize the instruction */
6a800f36acd5bf Liu Yu 2008-10-28 1824 printk(KERN_ERR "unrecognized spe instruction "
6a800f36acd5bf Liu Yu 2008-10-28 1825 "in %s at %lx\n", current->comm, regs->nip);
6a800f36acd5bf Liu Yu 2008-10-28 1826 } else {
14cf11af6cf608 Paul Mackerras 2005-09-26 1827 _exception(SIGFPE, regs, code, regs->nip);
6a800f36acd5bf Liu Yu 2008-10-28 1828 }
6a800f36acd5bf Liu Yu 2008-10-28 1829
14cf11af6cf608 Paul Mackerras 2005-09-26 1830 return;
14cf11af6cf608 Paul Mackerras 2005-09-26 1831 }
6a800f36acd5bf Liu Yu 2008-10-28 1832
6a800f36acd5bf Liu Yu 2008-10-28 @1833 void SPEFloatingPointRoundException(struct pt_regs *regs)
6a800f36acd5bf Liu Yu 2008-10-28 1834 {
6a800f36acd5bf Liu Yu 2008-10-28 1835 extern int speround_handler(struct pt_regs *regs);
6a800f36acd5bf Liu Yu 2008-10-28 1836 int err;
6a800f36acd5bf Liu Yu 2008-10-28 1837
6a800f36acd5bf Liu Yu 2008-10-28 1838 preempt_disable();
6a800f36acd5bf Liu Yu 2008-10-28 1839 if (regs->msr & MSR_SPE)
6a800f36acd5bf Liu Yu 2008-10-28 1840 giveup_spe(current);
6a800f36acd5bf Liu Yu 2008-10-28 1841 preempt_enable();
6a800f36acd5bf Liu Yu 2008-10-28 1842
6a800f36acd5bf Liu Yu 2008-10-28 1843 regs->nip -= 4;
6a800f36acd5bf Liu Yu 2008-10-28 1844 err = speround_handler(regs);
6a800f36acd5bf Liu Yu 2008-10-28 1845 if (err == 0) {
6a800f36acd5bf Liu Yu 2008-10-28 1846 regs->nip += 4; /* skip emulated instruction */
6a800f36acd5bf Liu Yu 2008-10-28 1847 emulate_single_step(regs);
6a800f36acd5bf Liu Yu 2008-10-28 1848 return;
6a800f36acd5bf Liu Yu 2008-10-28 1849 }
6a800f36acd5bf Liu Yu 2008-10-28 1850
6a800f36acd5bf Liu Yu 2008-10-28 1851 if (err == -EFAULT) {
6a800f36acd5bf Liu Yu 2008-10-28 1852 /* got an error reading the instruction */
6a800f36acd5bf Liu Yu 2008-10-28 1853 _exception(SIGSEGV, regs, SEGV_ACCERR, regs->nip);
6a800f36acd5bf Liu Yu 2008-10-28 1854 } else if (err == -EINVAL) {
6a800f36acd5bf Liu Yu 2008-10-28 1855 /* didn't recognize the instruction */
6a800f36acd5bf Liu Yu 2008-10-28 1856 printk(KERN_ERR "unrecognized spe instruction "
6a800f36acd5bf Liu Yu 2008-10-28 1857 "in %s at %lx\n", current->comm, regs->nip);
6a800f36acd5bf Liu Yu 2008-10-28 1858 } else {
6a800f36acd5bf Liu Yu 2008-10-28 1859 _exception(SIGFPE, regs, 0, regs->nip);
6a800f36acd5bf Liu Yu 2008-10-28 1860 return;
6a800f36acd5bf Liu Yu 2008-10-28 1861 }
6a800f36acd5bf Liu Yu 2008-10-28 1862 }
14cf11af6cf608 Paul Mackerras 2005-09-26 1863 #endif
dc1c1ca3dcd94c Stephen Rothwell 2005-10-01 1864
:::::: The code at line 1658 was first introduced by commit
:::::: 03465f899bdac70d34f6ca447a74d8ae9e284ce5 powerpc: Use kprobe blacklist for exception handlers
:::::: TO: Nicholas Piggin <npiggin(a)gmail.com>
:::::: CC: Michael Ellerman <mpe(a)ellerman.id.au>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
[xilinx-xlnx:xlnx_rebase_v5.4 935/1768] gadget.c:(.text+0x115a): multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:core.c:(.text+0x10f4): first defined here
by kernel test robot
tree: https://github.com/Xilinx/linux-xlnx xlnx_rebase_v5.4
head: abafefebd1f1e040eef74e4ab571ea08bf745641
commit: 128feece434d1c02d2dfac7e4103b2c73b6afb27 [935/1768] usb: dwc3: Add support for masking phy reset signal
config: m68k-randconfig-r014-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151747.YVeRx828-lk...)
compiler: m68k-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/Xilinx/linux-xlnx/commit/128feece434d1c02d2dfac7e4103b...
git remote add xilinx-xlnx https://github.com/Xilinx/linux-xlnx
git fetch --no-tags xilinx-xlnx xlnx_rebase_v5.4
git checkout 128feece434d1c02d2dfac7e4103b2c73b6afb27
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=m68k SHELL=/bin/bash
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 >>):
m68k-linux-ld: drivers/usb/dwc3/gadget.o: in function `dwc3_simple_wakeup_capable':
gadget.c:(.text+0x113a): multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:core.c:(.text+0x10d4): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget.o: in function `dwc3_set_simple_data':
gadget.c:(.text+0x1142): multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:core.c:(.text+0x10dc): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget.o: in function `dwc3_simple_check_quirks':
gadget.c:(.text+0x114a): multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:core.c:(.text+0x10e4): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget.o: in function `dwc3_set_usb_core_power':
gadget.c:(.text+0x1152): multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:core.c:(.text+0x10ec): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget.o: in function `dwc3_mask_phy_reset':
>> gadget.c:(.text+0x115a): multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:core.c:(.text+0x10f4): first defined here
m68k-linux-ld: drivers/usb/dwc3/ep0.o: in function `dwc3_simple_wakeup_capable':
ep0.c:(.text+0xde0): multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:core.c:(.text+0x10d4): first defined here
m68k-linux-ld: drivers/usb/dwc3/ep0.o: in function `dwc3_set_simple_data':
ep0.c:(.text+0xde8): multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:core.c:(.text+0x10dc): first defined here
m68k-linux-ld: drivers/usb/dwc3/ep0.o: in function `dwc3_simple_check_quirks':
ep0.c:(.text+0xdf0): multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:core.c:(.text+0x10e4): first defined here
m68k-linux-ld: drivers/usb/dwc3/ep0.o: in function `dwc3_set_usb_core_power':
ep0.c:(.text+0xdf8): multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:core.c:(.text+0x10ec): first defined here
m68k-linux-ld: drivers/usb/dwc3/ep0.o: in function `dwc3_mask_phy_reset':
ep0.c:(.text+0xe00): multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:core.c:(.text+0x10f4): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget_hibernation.o: in function `dwc3_simple_wakeup_capable':
gadget_hibernation.c:(.text+0x35c): multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:core.c:(.text+0x10d4): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget_hibernation.o: in function `dwc3_set_simple_data':
gadget_hibernation.c:(.text+0x364): multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:core.c:(.text+0x10dc): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget_hibernation.o: in function `dwc3_simple_check_quirks':
gadget_hibernation.c:(.text+0x36c): multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:core.c:(.text+0x10e4): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget_hibernation.o: in function `dwc3_set_usb_core_power':
gadget_hibernation.c:(.text+0x374): multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:core.c:(.text+0x10ec): first defined here
m68k-linux-ld: drivers/usb/dwc3/gadget_hibernation.o: in function `dwc3_mask_phy_reset':
gadget_hibernation.c:(.text+0x37c): multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:core.c:(.text+0x10f4): first defined here
m68k-linux-ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_simple_wakeup_capable':
ulpi.c:(.text+0x2d6): multiple definition of `dwc3_simple_wakeup_capable'; drivers/usb/dwc3/core.o:core.c:(.text+0x10d4): first defined here
m68k-linux-ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_set_simple_data':
ulpi.c:(.text+0x2de): multiple definition of `dwc3_set_simple_data'; drivers/usb/dwc3/core.o:core.c:(.text+0x10dc): first defined here
m68k-linux-ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_simple_check_quirks':
ulpi.c:(.text+0x2e6): multiple definition of `dwc3_simple_check_quirks'; drivers/usb/dwc3/core.o:core.c:(.text+0x10e4): first defined here
m68k-linux-ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_set_usb_core_power':
ulpi.c:(.text+0x2ee): multiple definition of `dwc3_set_usb_core_power'; drivers/usb/dwc3/core.o:core.c:(.text+0x10ec): first defined here
m68k-linux-ld: drivers/usb/dwc3/ulpi.o: in function `dwc3_mask_phy_reset':
ulpi.c:(.text+0x2f6): multiple definition of `dwc3_mask_phy_reset'; drivers/usb/dwc3/core.o:core.c:(.text+0x10f4): first defined here
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
Re: [PATCH v31 13/28] LSM: Use lsmblob in security_cred_getsecid
by kernel test robot
Hi Casey,
I love your patch! Perhaps something to improve:
[auto build test WARNING on nf-next/master]
[also build test WARNING on nf/master linus/master v5.16-rc5]
[cannot apply to pcmoore-audit/next jmorris-security/next-testing next-20211214]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Casey-Schaufler/integrity-disass...
base: https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next.git master
config: microblaze-randconfig-s032-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151753.otSGYmsF-lk...)
compiler: microblaze-linux-gcc (GCC) 11.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/0day-ci/linux/commit/e66d6e6a2f53e0b36b78003ee8399a554...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Casey-Schaufler/integrity-disassociate-ima_filter_rule-from-security_audit_rule/20211214-084057
git checkout e66d6e6a2f53e0b36b78003ee8399a554ae82e3c
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=microblaze SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> kernel/audit.c:128:25: sparse: sparse: symbol 'audit_sig_lsm' was not declared. Should it be static?
kernel/audit.c:2181:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/audit.c:2181:9: sparse: expected struct spinlock [usertype] *lock
kernel/audit.c:2181:9: sparse: got struct spinlock [noderef] __rcu *
kernel/audit.c:2184:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected struct spinlock [usertype] *lock @@ got struct spinlock [noderef] __rcu * @@
kernel/audit.c:2184:40: sparse: expected struct spinlock [usertype] *lock
kernel/audit.c:2184:40: sparse: got struct spinlock [noderef] __rcu *
vim +/audit_sig_lsm +128 kernel/audit.c
124
125 /* The identity of the user shutting down the audit system. */
126 static kuid_t audit_sig_uid = INVALID_UID;
127 static pid_t audit_sig_pid = -1;
> 128 struct lsmblob audit_sig_lsm;
129
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
Re: [PATCH 06/43] asm-generic: instrument usercopy in cacheflush.h
by kernel test robot
Hi Alexander,
I love your patch! Perhaps something to improve:
[auto build test WARNING on tip/x86/mm]
[also build test WARNING on linus/master v5.16-rc5]
[cannot apply to tip/x86/core hnaz-mm/master next-20211214]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Alexander-Potapenko/Add-KernelMe...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 35fa745286ac44ee26ed100c2bd2553368ad193b
config: x86_64-randconfig-s021-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151609.GqpX1iLK-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/0day-ci/linux/commit/a9bc41d306e2e13721a1569145cbfe732...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Alexander-Potapenko/Add-KernelMemorySanitizer-infrastructure/20211215-003033
git checkout a9bc41d306e2e13721a1569145cbfe7323a60aca
# save the config file to linux build tree
mkdir build_dir
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> mm/memory.c:5144:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] __user *to @@ got void * @@
mm/memory.c:5144:33: sparse: expected void [noderef] __user *to
mm/memory.c:5144:33: sparse: got void *
>> mm/memory.c:5148:33: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void * @@
mm/memory.c:5148:33: sparse: expected void const [noderef] __user *from
mm/memory.c:5148:33: sparse: got void *
>> mm/memory.c:5148:33: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void * @@
mm/memory.c:5148:33: sparse: expected void const [noderef] __user *from
mm/memory.c:5148:33: sparse: got void *
mm/memory.c:332:9: sparse: sparse: incompatible types in conditional expression (different base types):
mm/memory.c:332:9: sparse: void
mm/memory.c:332:9: sparse: int
vim +5144 mm/memory.c
28b2ee20c7cba81 Rik van Riel 2008-07-23 5096
0ec76a110f432e9 David Howells 2006-09-27 5097 /*
d3f5ffcacd15287 John Hubbard 2020-12-14 5098 * Access another process' address space as given in mm.
0ec76a110f432e9 David Howells 2006-09-27 5099 */
d3f5ffcacd15287 John Hubbard 2020-12-14 5100 int __access_remote_vm(struct mm_struct *mm, unsigned long addr, void *buf,
d3f5ffcacd15287 John Hubbard 2020-12-14 5101 int len, unsigned int gup_flags)
0ec76a110f432e9 David Howells 2006-09-27 5102 {
0ec76a110f432e9 David Howells 2006-09-27 5103 struct vm_area_struct *vma;
0ec76a110f432e9 David Howells 2006-09-27 5104 void *old_buf = buf;
442486ec1096781 Lorenzo Stoakes 2016-10-13 5105 int write = gup_flags & FOLL_WRITE;
0ec76a110f432e9 David Howells 2006-09-27 5106
d8ed45c5dcd455f Michel Lespinasse 2020-06-08 5107 if (mmap_read_lock_killable(mm))
1e426fe28261b03 Konstantin Khlebnikov 2019-07-11 5108 return 0;
1e426fe28261b03 Konstantin Khlebnikov 2019-07-11 5109
183ff22bb6bd818 Simon Arlott 2007-10-20 5110 /* ignore errors, just check how much was successfully transferred */
0ec76a110f432e9 David Howells 2006-09-27 5111 while (len) {
0ec76a110f432e9 David Howells 2006-09-27 5112 int bytes, ret, offset;
0ec76a110f432e9 David Howells 2006-09-27 5113 void *maddr;
28b2ee20c7cba81 Rik van Riel 2008-07-23 5114 struct page *page = NULL;
0ec76a110f432e9 David Howells 2006-09-27 5115
64019a2e467a288 Peter Xu 2020-08-11 5116 ret = get_user_pages_remote(mm, addr, 1,
5b56d49fc31dbb0 Lorenzo Stoakes 2016-12-14 5117 gup_flags, &page, &vma, NULL);
28b2ee20c7cba81 Rik van Riel 2008-07-23 5118 if (ret <= 0) {
dbffcd03d77a3fb Rik van Riel 2014-08-06 5119 #ifndef CONFIG_HAVE_IOREMAP_PROT
dbffcd03d77a3fb Rik van Riel 2014-08-06 5120 break;
dbffcd03d77a3fb Rik van Riel 2014-08-06 5121 #else
28b2ee20c7cba81 Rik van Riel 2008-07-23 5122 /*
28b2ee20c7cba81 Rik van Riel 2008-07-23 5123 * Check if this is a VM_IO | VM_PFNMAP VMA, which
28b2ee20c7cba81 Rik van Riel 2008-07-23 5124 * we can access using slightly different code.
28b2ee20c7cba81 Rik van Riel 2008-07-23 5125 */
3e418f9888463a8 Liam Howlett 2021-06-28 5126 vma = vma_lookup(mm, addr);
3e418f9888463a8 Liam Howlett 2021-06-28 5127 if (!vma)
28b2ee20c7cba81 Rik van Riel 2008-07-23 5128 break;
28b2ee20c7cba81 Rik van Riel 2008-07-23 5129 if (vma->vm_ops && vma->vm_ops->access)
28b2ee20c7cba81 Rik van Riel 2008-07-23 5130 ret = vma->vm_ops->access(vma, addr, buf,
28b2ee20c7cba81 Rik van Riel 2008-07-23 5131 len, write);
0ec76a110f432e9 David Howells 2006-09-27 5132 if (ret <= 0)
0ec76a110f432e9 David Howells 2006-09-27 5133 break;
28b2ee20c7cba81 Rik van Riel 2008-07-23 5134 bytes = ret;
dbffcd03d77a3fb Rik van Riel 2014-08-06 5135 #endif
28b2ee20c7cba81 Rik van Riel 2008-07-23 5136 } else {
0ec76a110f432e9 David Howells 2006-09-27 5137 bytes = len;
0ec76a110f432e9 David Howells 2006-09-27 5138 offset = addr & (PAGE_SIZE-1);
0ec76a110f432e9 David Howells 2006-09-27 5139 if (bytes > PAGE_SIZE-offset)
0ec76a110f432e9 David Howells 2006-09-27 5140 bytes = PAGE_SIZE-offset;
0ec76a110f432e9 David Howells 2006-09-27 5141
0ec76a110f432e9 David Howells 2006-09-27 5142 maddr = kmap(page);
0ec76a110f432e9 David Howells 2006-09-27 5143 if (write) {
0ec76a110f432e9 David Howells 2006-09-27 @5144 copy_to_user_page(vma, page, addr,
0ec76a110f432e9 David Howells 2006-09-27 5145 maddr + offset, buf, bytes);
0ec76a110f432e9 David Howells 2006-09-27 5146 set_page_dirty_lock(page);
0ec76a110f432e9 David Howells 2006-09-27 5147 } else {
0ec76a110f432e9 David Howells 2006-09-27 @5148 copy_from_user_page(vma, page, addr,
0ec76a110f432e9 David Howells 2006-09-27 5149 buf, maddr + offset, bytes);
0ec76a110f432e9 David Howells 2006-09-27 5150 }
0ec76a110f432e9 David Howells 2006-09-27 5151 kunmap(page);
09cbfeaf1a5a67b Kirill A. Shutemov 2016-04-01 5152 put_page(page);
28b2ee20c7cba81 Rik van Riel 2008-07-23 5153 }
0ec76a110f432e9 David Howells 2006-09-27 5154 len -= bytes;
0ec76a110f432e9 David Howells 2006-09-27 5155 buf += bytes;
0ec76a110f432e9 David Howells 2006-09-27 5156 addr += bytes;
0ec76a110f432e9 David Howells 2006-09-27 5157 }
d8ed45c5dcd455f Michel Lespinasse 2020-06-08 5158 mmap_read_unlock(mm);
0ec76a110f432e9 David Howells 2006-09-27 5159
0ec76a110f432e9 David Howells 2006-09-27 5160 return buf - old_buf;
0ec76a110f432e9 David Howells 2006-09-27 5161 }
03252919b798910 Andi Kleen 2008-01-30 5162
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week
Re: [PATCH 1/1] cifs: sanitize multiple delimiters in prepath
by kernel test robot
Hi Thiago,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on cifs/for-next]
[also build test WARNING on v5.16-rc5 next-20211214]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Thiago-Rafael-Becker/cifs-saniti...
base: git://git.samba.org/sfrench/cifs-2.6.git for-next
config: x86_64-randconfig-s022-20211214 (https://download.01.org/0day-ci/archive/20211215/202112151551.AfQ7J0wz-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/0day-ci/linux/commit/e81ed85a4288e898bc0607106d98905be...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Thiago-Rafael-Becker/cifs-sanitize-multiple-delimiters-in-prepath/20211215-110931
git checkout e81ed85a4288e898bc0607106d98905be5cd3788
# save the config file to linux build tree
mkdir build_dir
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash fs/cifs/
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 >>):
>> fs/cifs/fs_context.c:442:6: warning: no previous prototype for 'sanitize_path' [-Wmissing-prototypes]
442 | void sanitize_path(char *path) {
| ^~~~~~~~~~~~~
sparse warnings: (new ones prefixed by >>)
>> fs/cifs/fs_context.c:442:6: sparse: sparse: symbol 'sanitize_path' was not declared. Should it be static?
Please review and possibly fold the followup patch.
vim +/sanitize_path +442 fs/cifs/fs_context.c
436
437 /*
438 * remove duplicate path delimiters. Windows is supposed to do that
439 * but there are some bugs that prevent rename from working if there are
440 * multiple delimiters.
441 */
> 442 void sanitize_path(char *path) {
443 char *pos = path, last = *path;
444 unsigned int offset = 0;
445
446 while(*(++pos)) {
447 if ((*pos == '/' || *pos == '\\') && (last == '/' || last == '\\')) {
448 offset++;
449 continue;
450 }
451
452 last = *pos;
453 *(pos - offset) = *pos;
454 }
455
456 pos = pos - offset - 1;
457
458 /* At this point, there should be only zero or one delimiter at the end of the string */
459 if (*pos != '/' && *pos != '\\')
460 pos++;
461
462 *pos = '\0';
463 }
464
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
9 months, 1 week