[android-common:android-4.19 1/4] include/linux/jump_label.h:409:59: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'u64'
by kbuild test robot
tree: https://android.googlesource.com/kernel/common android-4.19
head: b12d8a020f80c15f34bb430628d6ecdba289e72b
commit: d892c9f3571faa2e691fc3a9eb6ea4f4da1d7eab [1/4] ANDROID: GKI: pwm: core: Add option to config PWM duty/period with u64 data length
config: i386-randconfig-a004-20200518 (attached as .config)
compiler: gcc-4.9 (Ubuntu 4.9.3-13ubuntu2) 4.9.3
reproduce:
git checkout d892c9f3571faa2e691fc3a9eb6ea4f4da1d7eab
# save the attached .config to linux build tree
make ARCH=i386
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 include/linux/dynamic_debug.h:6:0,
from include/linux/printk.h:336,
from include/linux/kernel.h:14,
from include/linux/clk.h:16,
from include/linux/mfd/stm32-lptimer.h:12,
from drivers/pwm/pwm-stm32-lp.c:13:
drivers/pwm/pwm-stm32-lp.c: In function 'stm32_pwm_lp_apply':
>> include/linux/jump_label.h:409:59: warning: format '%u' expects argument of type 'unsigned int', but argument 4 has type 'u64' [-Wformat=]
else if (__builtin_types_compatible_p(typeof(*x), struct static_key_false)) ^
include/linux/dynamic_debug.h:103:2: note: in expansion of macro 'static_branch_unlikely'
static_branch_unlikely(&descriptor.key.dd_key_false)
^
include/linux/dynamic_debug.h:134:6: note: in expansion of macro 'DYNAMIC_DEBUG_BRANCH'
if (DYNAMIC_DEBUG_BRANCH(descriptor)) ^
include/linux/device.h:1519:2: note: in expansion of macro 'dynamic_dev_dbg'
dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__)
^
drivers/pwm/pwm-stm32-lp.c:63:3: note: in expansion of macro 'dev_dbg'
dev_dbg(priv->chip.dev, "Can't reach %u nsn", state->period);
^
vim +409 include/linux/jump_label.h
11276d5306b8e5 Peter Zijlstra 2015-07-24 403
11276d5306b8e5 Peter Zijlstra 2015-07-24 404 #define static_branch_unlikely(x) \
11276d5306b8e5 Peter Zijlstra 2015-07-24 405 ({ \
11276d5306b8e5 Peter Zijlstra 2015-07-24 406 bool branch; \
11276d5306b8e5 Peter Zijlstra 2015-07-24 407 if (__builtin_types_compatible_p(typeof(*x), struct static_key_true)) \
11276d5306b8e5 Peter Zijlstra 2015-07-24 408 branch = arch_static_branch_jump(&(x)->key, false); \
11276d5306b8e5 Peter Zijlstra 2015-07-24 @409 else if (__builtin_types_compatible_p(typeof(*x), struct static_key_false)) \
11276d5306b8e5 Peter Zijlstra 2015-07-24 410 branch = arch_static_branch(&(x)->key, false); \
11276d5306b8e5 Peter Zijlstra 2015-07-24 411 else \
11276d5306b8e5 Peter Zijlstra 2015-07-24 412 branch = ____wrong_branch_error(); \
81dcf89f03204d Peter Zijlstra 2018-01-18 413 unlikely(branch); \
11276d5306b8e5 Peter Zijlstra 2015-07-24 414 })
11276d5306b8e5 Peter Zijlstra 2015-07-24 415
:::::: The code at line 409 was first introduced by commit
:::::: 11276d5306b8e5b438a36bbff855fe792d7eaa61 locking/static_keys: Add a new static_key interface
:::::: TO: Peter Zijlstra <peterz(a)infradead.org>
:::::: CC: Ingo Molnar <mingo(a)kernel.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[jpirko-mlxsw:petrm_wip 35/36] mipsel-linux-ld: sch_api.c:undefined reference to `tcf_exts_validate'
by kbuild test robot
tree: https://github.com/jpirko/linux_mlxsw petrm_wip
head: 1fdfe6d7f2d5e76d5b9a41a380a4bf928a9eb3f0
commit: db0a26918a58afafeae818f805209958ae3fd543 [35/36] qevent wip
config: mips-rt305x_defconfig (attached as .config)
compiler: mipsel-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 db0a26918a58afafeae818f805209958ae3fd543
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
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 <<):
mipsel-linux-ld: net/sched/sch_api.o: in function `sch_qdisc_find.constprop.0':
sch_api.c:(.text.unlikely+0xc0): undefined reference to `__tcf_qdisc_find'
mipsel-linux-ld: net/sched/sch_api.o: in function `tc_new_qevent':
sch_api.c:(.text.unlikely+0x3b0): undefined reference to `__tcf_qdisc_cl_find'
>> mipsel-linux-ld: sch_api.c:(.text.unlikely+0x460): undefined reference to `tcf_exts_validate'
mipsel-linux-ld: net/sched/sch_api.o: in function `tc_del_qevent':
sch_api.c:(.text.unlikely+0x5cc): undefined reference to `__tcf_qdisc_cl_find'
>> mipsel-linux-ld: sch_api.c:(.text.unlikely+0x658): undefined reference to `tcf_exts_destroy'
mipsel-linux-ld: net/sched/sch_fifo.o: in function `fifo_destroy':
sch_fifo.c:(.text+0xbc): undefined reference to `tcf_exts_destroy'
mipsel-linux-ld: net/sched/sch_fifo.o: in function `fifo_init':
sch_fifo.c:(.text+0x310): undefined reference to `tcf_exts_destroy'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[sashal-linux-stable:queue-4.4 57/62] init/Kconfig:21: syntax error
by kbuild test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-4.4
head: 357f5caad90a59b23d9a6c3f4961da3b02316dbd
commit: a68363916acd81f8d65be02e8e6c79bd16554fb1 [57/62] kbuild: compute false-positive -Wmaybe-uninitialized cases in Kconfig
config: i386-tinyconfig
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce:
git checkout a68363916acd81f8d65be02e8e6c79bd16554fb1
make ARCH=i386 tinyconfig
make ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp(a)intel.com>
Note: the sashal-linux-stable/queue-4.4 HEAD 357f5caad90a59b23d9a6c3f4961da3b02316dbd builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>, old ones prefixed by <<):
init/Kconfig:20:warning: ignoring unsupported character '$'
init/Kconfig:20:warning: ignoring unsupported character ','
>> init/Kconfig:21: syntax error
init/Kconfig:20: invalid option
init/Kconfig:1351: syntax error
init/Kconfig:1350: unknown option "imply"
>> kernel/trace/Kconfig:316: syntax error
kernel/trace/Kconfig:315: unknown option "imply"
make[2]: *** [scripts/kconfig/Makefile:84: oldconfig] Error 1
make[1]: *** [Makefile:540: oldconfig] Error 2
make: *** [Makefile:152: sub-make] Error 2
--
init/Kconfig:20:warning: ignoring unsupported character '$'
init/Kconfig:20:warning: ignoring unsupported character ','
>> init/Kconfig:21: syntax error
init/Kconfig:20: invalid option
init/Kconfig:1351: syntax error
init/Kconfig:1350: unknown option "imply"
>> kernel/trace/Kconfig:316: syntax error
kernel/trace/Kconfig:315: unknown option "imply"
make[2]: *** [scripts/kconfig/Makefile:84: olddefconfig] Error 1
make[1]: *** [Makefile:540: olddefconfig] Error 2
make: *** [Makefile:152: sub-make] Error 2
--
init/Kconfig:20:warning: ignoring unsupported character '$'
init/Kconfig:20:warning: ignoring unsupported character ','
>> init/Kconfig:21: syntax error
init/Kconfig:20: invalid option
init/Kconfig:1351: syntax error
init/Kconfig:1350: unknown option "imply"
>> kernel/trace/Kconfig:316: syntax error
kernel/trace/Kconfig:315: unknown option "imply"
make[5]: *** [scripts/kconfig/Makefile:84: allnoconfig] Error 1
make[4]: *** [Makefile:540: allnoconfig] Error 2
make[3]: *** [Makefile:519: __build_one_by_one] Error 2
make[3]: Target 'allnoconfig' not remade because of errors.
make[3]: Target 'tiny.config' not remade because of errors.
make[2]: *** [scripts/kconfig/Makefile:129: tinyconfig] Error 2
make[1]: *** [Makefile:540: tinyconfig] Error 2
make: *** [Makefile:152: sub-make] Error 2
vim +21 init/Kconfig
> 21 help
22 GCC >= 4.7 supports this option.
23
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
Re: [PATCH V2 3/3] PCI: Add helpers to enable/disable CXL.mem and CXL.cache
by kbuild test robot
Hi Sean,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on pci/next]
[also build test WARNING on v5.7-rc6 next-20200518]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Sean-V-Kelley/PCI-Add-basic-Comp...
base: https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
config: powerpc-defconfig (attached as .config)
compiler: powerpc64-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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
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 drivers/pci/hotplug/pci_hotplug_core.c:32:
drivers/pci/hotplug/../pci.h: In function 'pci_cxl_mem_enable':
>> drivers/pci/hotplug/../pci.h:481:45: warning: no return statement in function returning non-void [-Wreturn-type]
481 | static inline int pci_cxl_mem_enable(struct pci_dev *dev) {}
| ^~~~~~~
drivers/pci/hotplug/../pci.h: In function 'pci_cxl_cache_enable':
drivers/pci/hotplug/../pci.h:483:47: warning: no return statement in function returning non-void [-Wreturn-type]
483 | static inline int pci_cxl_cache_enable(struct pci_dev *dev) {}
| ^~~~~~~
vim +481 drivers/pci/hotplug/../pci.h
471
472 #ifdef CONFIG_PCI_CXL
473 /* Compute eXpress Link */
474 void pci_cxl_init(struct pci_dev *dev);
475 int pci_cxl_mem_enable(struct pci_dev *dev);
476 void pci_cxl_mem_disable(struct pci_dev *dev);
477 int pci_cxl_cache_enable(struct pci_dev *dev);
478 void pci_cxl_cache_disable(struct pci_dev *dev);
479 #else
480 static inline void pci_cxl_init(struct pci_dev *dev) { }
> 481 static inline int pci_cxl_mem_enable(struct pci_dev *dev) {}
482 static inline void pci_cxl_mem_disable(struct pci_dev *dev) {}
483 static inline int pci_cxl_cache_enable(struct pci_dev *dev) {}
484 static inline void pci_cxl_cache_disable(struct pci_dev *dev) {}
485 #endif
486
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[lkp] [+821 bytes kernel size regression] [i386-tinyconfig] [44f9a39ceb] driver core: Expose device link details in sysfs
by kbuild test robot
FYI, we noticed a +821 bytes kernel size regression due to commit:
commit: 44f9a39ceb6b0ae7e12f40697b45aa759ff9207a (driver core: Expose device link details in sysfs)
url: https://github.com/0day-ci/linux/commits/Saravana-Kannan/driver-core-Expo...
Details as below (size data is obtained by `nm --size-sort vmlinux`):
93d2e432: of: platform: Batch fwnode parsing when adding all top level devices
44f9a39c: driver core: Expose device link details in sysfs
+--------------------------------------+----------+----------+-------+
| symbol | 93d2e432 | 44f9a39c | delta |
+--------------------------------------+----------+----------+-------+
| nm.T.device_link_add | 570 | 915 | 345 |
| bzImage | 439616 | 439840 | 224 |
| nm.t.device_link_dev_release | 0 | 175 | 175 |
| nm.d.devlink_class | 0 | 60 | 60 |
| nm.t.kref_put | 0 | 41 | 41 |
| nm.T.device_links_driver_cleanup | 95 | 127 | 32 |
| nm.t.__device_links_no_driver | 84 | 111 | 27 |
| nm.t.flags_show | 0 | 21 | 21 |
| nm.r.devlink_group | 0 | 20 | 20 |
| nm.T.device_del | 490 | 510 | 20 |
| nm.t.__device_link_del | 54 | 72 | 18 |
| nm.T.device_links_check_suppliers | 165 | 183 | 18 |
| nm.d.dev_attr_flags | 0 | 16 | 16 |
| nm.t.devlink_class_init | 0 | 15 | 15 |
| nm.T.device_link_remove | 59 | 74 | 15 |
| nm.T.device_links_driver_bound | 226 | 241 | 15 |
| nm.T.device_link_del | 23 | 34 | 11 |
| nm.T.device_links_no_driver | 73 | 82 | 9 |
| nm.T.device_links_busy | 86 | 95 | 9 |
| nm.T.device_links_unbind_consumers | 122 | 131 | 9 |
| nm.d.devlink_attrs | 0 | 8 | 8 |
| nm.d.devlink_groups | 0 | 8 | 8 |
| nm.t.__device_links_queue_sync_state | 103 | 109 | 6 |
| nm.t.device_reorder_to_tail | 77 | 80 | 3 |
| nm.t.device_is_dependent | 95 | 98 | 3 |
| nm.R.linux_banner | 164 | 163 | -1 |
| nm.t.__device_link_free_srcu | 44 | 24 | -20 |
| nm.t.device_link_put_kref | 29 | 0 | -29 |
| nm.t.device_link_drop_managed | 33 | 0 | -33 |
+--------------------------------------+----------+----------+-------+
Thanks,
Kbuild test robot
2 years, 4 months
[kvm:queue 71/177] arch/x86/kvm/vmx/nested.c:5246:3: error: variable 'roots_to_free' is used uninitialized whenever 'if' condition is false
by kbuild test robot
tree: https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue
head: cb953129bfe5c0f2da835a0469930873fb7e71df
commit: ce8fe7b77bd8ee405295e349c82d0ef8c9788200 [71/177] KVM: nVMX: Free only the affected contexts when emulating INVEPT
config: x86_64-randconfig-a012-20200515 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 13d44b2a0c7ef404b13b16644765977cd5310fe2)
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 ce8fe7b77bd8ee405295e349c82d0ef8c9788200
# 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>
Note: the kvm/queue HEAD cb953129bfe5c0f2da835a0469930873fb7e71df builds fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>, old ones prefixed by <<):
>> arch/x86/kvm/vmx/nested.c:5246:3: error: variable 'roots_to_free' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
BUG_ON(1);
^~~~~~~~~
include/asm-generic/bug.h:62:32: note: expanded from macro 'BUG_ON'
#define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0)
^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:56:28: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:58:30: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/kvm/vmx/nested.c:5250:6: note: uninitialized use occurs here
if (roots_to_free)
^~~~~~~~~~~~~
include/linux/compiler.h:56:47: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^~~~
include/linux/compiler.h:58:52: note: expanded from macro '__trace_if_var'
#define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : __trace_if_value(cond))
^~~~
arch/x86/kvm/vmx/nested.c:5246:3: note: remove the 'if' if its condition is always true
BUG_ON(1);
^
include/asm-generic/bug.h:62:32: note: expanded from macro 'BUG_ON'
#define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while (0)
^
include/linux/compiler.h:56:23: note: expanded from macro 'if'
#define if(cond, ...) if ( __trace_if_var( !!(cond , ## __VA_ARGS__) ) )
^
arch/x86/kvm/vmx/nested.c:5179:35: note: initialize the variable 'roots_to_free' to silence this warning
unsigned long type, roots_to_free;
^
= 0
1 error generated.
vim +5246 arch/x86/kvm/vmx/nested.c
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5173
55d2375e58a61b Sean Christopherson 2018-12-03 5174 /* Emulate the INVEPT instruction */
55d2375e58a61b Sean Christopherson 2018-12-03 5175 static int handle_invept(struct kvm_vcpu *vcpu)
55d2375e58a61b Sean Christopherson 2018-12-03 5176 {
55d2375e58a61b Sean Christopherson 2018-12-03 5177 struct vcpu_vmx *vmx = to_vmx(vcpu);
55d2375e58a61b Sean Christopherson 2018-12-03 5178 u32 vmx_instruction_info, types;
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5179 unsigned long type, roots_to_free;
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5180 struct kvm_mmu *mmu;
55d2375e58a61b Sean Christopherson 2018-12-03 5181 gva_t gva;
55d2375e58a61b Sean Christopherson 2018-12-03 5182 struct x86_exception e;
55d2375e58a61b Sean Christopherson 2018-12-03 5183 struct {
55d2375e58a61b Sean Christopherson 2018-12-03 5184 u64 eptp, gpa;
55d2375e58a61b Sean Christopherson 2018-12-03 5185 } operand;
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5186 int i;
55d2375e58a61b Sean Christopherson 2018-12-03 5187
55d2375e58a61b Sean Christopherson 2018-12-03 5188 if (!(vmx->nested.msrs.secondary_ctls_high &
55d2375e58a61b Sean Christopherson 2018-12-03 5189 SECONDARY_EXEC_ENABLE_EPT) ||
55d2375e58a61b Sean Christopherson 2018-12-03 5190 !(vmx->nested.msrs.ept_caps & VMX_EPT_INVEPT_BIT)) {
55d2375e58a61b Sean Christopherson 2018-12-03 5191 kvm_queue_exception(vcpu, UD_VECTOR);
55d2375e58a61b Sean Christopherson 2018-12-03 5192 return 1;
55d2375e58a61b Sean Christopherson 2018-12-03 5193 }
55d2375e58a61b Sean Christopherson 2018-12-03 5194
55d2375e58a61b Sean Christopherson 2018-12-03 5195 if (!nested_vmx_check_permission(vcpu))
55d2375e58a61b Sean Christopherson 2018-12-03 5196 return 1;
55d2375e58a61b Sean Christopherson 2018-12-03 5197
55d2375e58a61b Sean Christopherson 2018-12-03 5198 vmx_instruction_info = vmcs_read32(VMX_INSTRUCTION_INFO);
55d2375e58a61b Sean Christopherson 2018-12-03 5199 type = kvm_register_readl(vcpu, (vmx_instruction_info >> 28) & 0xf);
55d2375e58a61b Sean Christopherson 2018-12-03 5200
55d2375e58a61b Sean Christopherson 2018-12-03 5201 types = (vmx->nested.msrs.ept_caps >> VMX_EPT_EXTENT_SHIFT) & 6;
55d2375e58a61b Sean Christopherson 2018-12-03 5202
55d2375e58a61b Sean Christopherson 2018-12-03 5203 if (type >= 32 || !(types & (1 << type)))
55d2375e58a61b Sean Christopherson 2018-12-03 5204 return nested_vmx_failValid(vcpu,
55d2375e58a61b Sean Christopherson 2018-12-03 5205 VMXERR_INVALID_OPERAND_TO_INVEPT_INVVPID);
55d2375e58a61b Sean Christopherson 2018-12-03 5206
55d2375e58a61b Sean Christopherson 2018-12-03 5207 /* According to the Intel VMX instruction reference, the memory
55d2375e58a61b Sean Christopherson 2018-12-03 5208 * operand is read even if it isn't needed (e.g., for type==global)
55d2375e58a61b Sean Christopherson 2018-12-03 5209 */
55d2375e58a61b Sean Christopherson 2018-12-03 5210 if (get_vmx_mem_address(vcpu, vmcs_readl(EXIT_QUALIFICATION),
fdb28619a8f033 Eugene Korenevsky 2019-06-06 5211 vmx_instruction_info, false, sizeof(operand), &gva))
55d2375e58a61b Sean Christopherson 2018-12-03 5212 return 1;
55d2375e58a61b Sean Christopherson 2018-12-03 5213 if (kvm_read_guest_virt(vcpu, gva, &operand, sizeof(operand), &e)) {
ee1fa209f5e5ca Junaid Shahid 2020-03-20 5214 kvm_inject_emulated_page_fault(vcpu, &e);
55d2375e58a61b Sean Christopherson 2018-12-03 5215 return 1;
55d2375e58a61b Sean Christopherson 2018-12-03 5216 }
55d2375e58a61b Sean Christopherson 2018-12-03 5217
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5218 /*
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5219 * Nested EPT roots are always held through guest_mmu,
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5220 * not root_mmu.
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5221 */
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5222 mmu = &vcpu->arch.guest_mmu;
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5223
55d2375e58a61b Sean Christopherson 2018-12-03 5224 switch (type) {
b119019847fbca Jim Mattson 2019-06-13 5225 case VMX_EPT_EXTENT_CONTEXT:
eed0030e4caa94 Sean Christopherson 2020-03-20 5226 if (!nested_vmx_check_eptp(vcpu, operand.eptp))
eed0030e4caa94 Sean Christopherson 2020-03-20 5227 return nested_vmx_failValid(vcpu,
eed0030e4caa94 Sean Christopherson 2020-03-20 5228 VMXERR_INVALID_OPERAND_TO_INVEPT_INVVPID);
f8aa7e3958bc43 Sean Christopherson 2020-03-20 5229
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5230 roots_to_free = 0;
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5231 if (nested_ept_root_matches(mmu->root_hpa, mmu->root_cr3,
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5232 operand.eptp))
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5233 roots_to_free |= KVM_MMU_ROOT_CURRENT;
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5234
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5235 for (i = 0; i < KVM_MMU_NUM_PREV_ROOTS; i++) {
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5236 if (nested_ept_root_matches(mmu->prev_roots[i].hpa,
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5237 mmu->prev_roots[i].cr3,
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5238 operand.eptp))
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5239 roots_to_free |= KVM_MMU_ROOT_PREVIOUS(i);
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5240 }
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5241 break;
eed0030e4caa94 Sean Christopherson 2020-03-20 5242 case VMX_EPT_EXTENT_GLOBAL:
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5243 roots_to_free = KVM_MMU_ROOTS_ALL;
55d2375e58a61b Sean Christopherson 2018-12-03 5244 break;
55d2375e58a61b Sean Christopherson 2018-12-03 5245 default:
55d2375e58a61b Sean Christopherson 2018-12-03 @5246 BUG_ON(1);
55d2375e58a61b Sean Christopherson 2018-12-03 5247 break;
55d2375e58a61b Sean Christopherson 2018-12-03 5248 }
55d2375e58a61b Sean Christopherson 2018-12-03 5249
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5250 if (roots_to_free)
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5251 kvm_mmu_free_roots(vcpu, mmu, roots_to_free);
ce8fe7b77bd8ee Sean Christopherson 2020-03-20 5252
55d2375e58a61b Sean Christopherson 2018-12-03 5253 return nested_vmx_succeed(vcpu);
55d2375e58a61b Sean Christopherson 2018-12-03 5254 }
55d2375e58a61b Sean Christopherson 2018-12-03 5255
:::::: The code at line 5246 was first introduced by commit
:::::: 55d2375e58a61be072431dd3d3c8a320f4a4a01b KVM: nVMX: Move nested code to dedicated files
:::::: TO: Sean Christopherson <sean.j.christopherson(a)intel.com>
:::::: CC: Paolo Bonzini <pbonzini(a)redhat.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
Re: [PATCH V2 3/3] PCI: Add helpers to enable/disable CXL.mem and CXL.cache
by kbuild test robot
Hi Sean,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on pci/next]
[also build test WARNING on v5.7-rc6 next-20200518]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Sean-V-Kelley/PCI-Add-basic-Comp...
base: https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
config: arc-defconfig (attached as .config)
compiler: arc-elf-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
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arc
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 drivers/pci/of.c:16:
drivers/pci/pci.h: In function 'pci_cxl_mem_enable':
>> drivers/pci/pci.h:481:45: warning: no return statement in function returning non-void [-Wreturn-type]
481 | static inline int pci_cxl_mem_enable(struct pci_dev *dev) {}
| ^~~~~~~
drivers/pci/pci.h: In function 'pci_cxl_cache_enable':
drivers/pci/pci.h:483:47: warning: no return statement in function returning non-void [-Wreturn-type]
483 | static inline int pci_cxl_cache_enable(struct pci_dev *dev) {}
| ^~~~~~~
vim +481 drivers/pci/pci.h
471
472 #ifdef CONFIG_PCI_CXL
473 /* Compute eXpress Link */
474 void pci_cxl_init(struct pci_dev *dev);
475 int pci_cxl_mem_enable(struct pci_dev *dev);
476 void pci_cxl_mem_disable(struct pci_dev *dev);
477 int pci_cxl_cache_enable(struct pci_dev *dev);
478 void pci_cxl_cache_disable(struct pci_dev *dev);
479 #else
480 static inline void pci_cxl_init(struct pci_dev *dev) { }
> 481 static inline int pci_cxl_mem_enable(struct pci_dev *dev) {}
482 static inline void pci_cxl_mem_disable(struct pci_dev *dev) {}
483 static inline int pci_cxl_cache_enable(struct pci_dev *dev) {}
484 static inline void pci_cxl_cache_disable(struct pci_dev *dev) {}
485 #endif
486
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
by kbuild test robot
Hi Jason,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b9bbe6ed63b2b9f2c9ee5cbd0f2c946a2723f4ce
commit: 07b586fe06625b0b610dc3d3a969c51913d143d4 crypto: x86/curve25519 - replace with formally verified implementation
date: 3 months ago
config: x86_64-randconfig-r001-20200518 (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 07b586fe06625b0b610dc3d3a969c51913d143d4
# 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 errors (new ones prefixed by >>, old ones prefixed by <<):
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
" movq 0(%1), %%rdx;" /* f[0] */
^
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
>> arch/x86/crypto/curve25519-x86_64.c:518:3: error: inline assembly requires more registers than available
9 errors generated.
vim +518 arch/x86/crypto/curve25519-x86_64.c
509
510 /* Computes the square of a field element: out <- f * f
511 * Uses the 8-element buffer tmp for intermediate results */
512 static inline void fsqr(u64 *out, const u64 *f, u64 *tmp)
513 {
514 asm volatile(
515 /* Compute the raw multiplication: tmp <- f * f */
516
517 /* Step 1: Compute all partial products */
> 518 " movq 0(%1), %%rdx;" /* f[0] */
519 " mulxq 8(%1), %%r8, %%r14;" " xor %%r15, %%r15;" /* f[1]*f[0] */
520 " mulxq 16(%1), %%r9, %%r10;" " adcx %%r14, %%r9;" /* f[2]*f[0] */
521 " mulxq 24(%1), %%rax, %%rcx;" " adcx %%rax, %%r10;" /* f[3]*f[0] */
522 " movq 24(%1), %%rdx;" /* f[3] */
523 " mulxq 8(%1), %%r11, %%r12;" " adcx %%rcx, %%r11;" /* f[1]*f[3] */
524 " mulxq 16(%1), %%rax, %%r13;" " adcx %%rax, %%r12;" /* f[2]*f[3] */
525 " movq 8(%1), %%rdx;" " adcx %%r15, %%r13;" /* f1 */
526 " mulxq 16(%1), %%rax, %%rcx;" " mov $0, %%r14;" /* f[2]*f[1] */
527
528 /* Step 2: Compute two parallel carry chains */
529 " xor %%r15, %%r15;"
530 " adox %%rax, %%r10;"
531 " adcx %%r8, %%r8;"
532 " adox %%rcx, %%r11;"
533 " adcx %%r9, %%r9;"
534 " adox %%r15, %%r12;"
535 " adcx %%r10, %%r10;"
536 " adox %%r15, %%r13;"
537 " adcx %%r11, %%r11;"
538 " adox %%r15, %%r14;"
539 " adcx %%r12, %%r12;"
540 " adcx %%r13, %%r13;"
541 " adcx %%r14, %%r14;"
542
543 /* Step 3: Compute intermediate squares */
544 " movq 0(%1), %%rdx;" " mulx %%rdx, %%rax, %%rcx;" /* f[0]^2 */
545 " movq %%rax, 0(%0);"
546 " add %%rcx, %%r8;" " movq %%r8, 8(%0);"
547 " movq 8(%1), %%rdx;" " mulx %%rdx, %%rax, %%rcx;" /* f[1]^2 */
548 " adcx %%rax, %%r9;" " movq %%r9, 16(%0);"
549 " adcx %%rcx, %%r10;" " movq %%r10, 24(%0);"
550 " movq 16(%1), %%rdx;" " mulx %%rdx, %%rax, %%rcx;" /* f[2]^2 */
551 " adcx %%rax, %%r11;" " movq %%r11, 32(%0);"
552 " adcx %%rcx, %%r12;" " movq %%r12, 40(%0);"
553 " movq 24(%1), %%rdx;" " mulx %%rdx, %%rax, %%rcx;" /* f[3]^2 */
554 " adcx %%rax, %%r13;" " movq %%r13, 48(%0);"
555 " adcx %%rcx, %%r14;" " movq %%r14, 56(%0);"
556
557 /* Line up pointers */
558 " mov %0, %1;"
559 " mov %2, %0;"
560
561 /* Wrap the result back into the field */
562
563 /* Step 1: Compute dst + carry == tmp_hi * 38 + tmp_lo */
564 " mov $38, %%rdx;"
565 " mulxq 32(%1), %%r8, %%r13;"
566 " xor %%rcx, %%rcx;"
567 " adoxq 0(%1), %%r8;"
568 " mulxq 40(%1), %%r9, %%r12;"
569 " adcx %%r13, %%r9;"
570 " adoxq 8(%1), %%r9;"
571 " mulxq 48(%1), %%r10, %%r13;"
572 " adcx %%r12, %%r10;"
573 " adoxq 16(%1), %%r10;"
574 " mulxq 56(%1), %%r11, %%rax;"
575 " adcx %%r13, %%r11;"
576 " adoxq 24(%1), %%r11;"
577 " adcx %%rcx, %%rax;"
578 " adox %%rcx, %%rax;"
579 " imul %%rdx, %%rax;"
580
581 /* Step 2: Fold the carry back into dst */
582 " add %%rax, %%r8;"
583 " adcx %%rcx, %%r9;"
584 " movq %%r9, 8(%0);"
585 " adcx %%rcx, %%r10;"
586 " movq %%r10, 16(%0);"
587 " adcx %%rcx, %%r11;"
588 " movq %%r11, 24(%0);"
589
590 /* Step 3: Fold the carry bit back in; guaranteed not to carry at this point */
591 " mov $0, %%rax;"
592 " cmovc %%rdx, %%rax;"
593 " add %%rax, %%r8;"
594 " movq %%r8, 0(%0);"
595 : "+&r" (tmp), "+&r" (f), "+&r" (out)
596 :
597 : "%rax", "%rcx", "%rdx", "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15", "memory", "cc"
598 );
599 }
600
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
[nbd168-wireless:mt76 110/138] drivers/net/wireless/mediatek/mt76/mt7915/main.c:694:1: sparse: sparse: context imbalance in 'mt7915_sta_rc_update' - wrong count at exit
by kbuild test robot
tree: https://github.com/nbd168/wireless mt76
head: 12a87174accd29ff943d4c5fb735e1541b92630b
commit: e57b7901469fc0b021930b83a8094baaf3d81b09 [110/138] mt76: add mac80211 driver for MT7915 PCIe-based chipsets
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-193-gb8fad4bc-dirty
git checkout e57b7901469fc0b021930b83a8094baaf3d81b09
make ARCH=x86_64 allmodconfig
make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
:::::: branch date: 2 days ago
:::::: commit date: 4 days ago
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/net/wireless/mediatek/mt76/mt7915/main.c:694:1: sparse: sparse: context imbalance in 'mt7915_sta_rc_update' - wrong count at exit
--
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:244:16: sparse: sparse: mixing different enum types:
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:244:16: sparse: unsigned int enum mt7915_txq_id
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:244:16: sparse: unsigned int enum mt76_txq_id
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int w @@ got restricted __le3unsigned int w @@
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: expected unsigned int w
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: got restricted __le32 [usertype] supp_ht_mcs
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1288:23: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1328:33: sparse: sparse: restricted __le16 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1327:60: sparse: sparse: bad assignment (>>=) to restricted __le16
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1671:16: sparse: sparse: restricted __le32 degrades to integer
--
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:299:26: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:303:43: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:303:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:303:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:304:43: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:304:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:304:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:43: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:305:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:306:43: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:306:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:306:43: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:319:35: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:319:35: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:319:35: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:320:33: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:320:33: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:320:33: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:327:35: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:327:35: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:327:35: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:328:35: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:328:35: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:328:35: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:345:41: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:345:41: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:345:41: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:355:33: sparse: sparse: cast to restricted __le32
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:355:33: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mac.c:355:33: sparse: sparse: restricted __le32 degrades to integer
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:451:21: sparse: sparse: invalid assignment: |=
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:451:21: sparse: left side has type unsigned int
>> drivers/net/wireless/mediatek/mt76/mt7915/mac.c:451:21: sparse: right side has type restricted __le32
# https://github.com/nbd168/wireless/commit/e57b7901469fc0b021930b83a8094ba...
git remote add nbd168-wireless https://github.com/nbd168/wireless
git remote update nbd168-wireless
git checkout e57b7901469fc0b021930b83a8094baaf3d81b09
vim +/mt7915_sta_rc_update +694 drivers/net/wireless/mediatek/mt76/mt7915/main.c
e57b7901469fc0 Ryder Lee 2020-04-25 692
e57b7901469fc0 Ryder Lee 2020-04-25 693 static void
e57b7901469fc0 Ryder Lee 2020-04-25 @694 mt7915_sta_rc_update(struct ieee80211_hw *hw,
e57b7901469fc0 Ryder Lee 2020-04-25 695 struct ieee80211_vif *vif,
e57b7901469fc0 Ryder Lee 2020-04-25 696 struct ieee80211_sta *sta,
e57b7901469fc0 Ryder Lee 2020-04-25 697 u32 changed)
e57b7901469fc0 Ryder Lee 2020-04-25 698 {
e57b7901469fc0 Ryder Lee 2020-04-25 699 struct mt7915_sta *msta = (struct mt7915_sta *)sta->drv_priv;
e57b7901469fc0 Ryder Lee 2020-04-25 700
e57b7901469fc0 Ryder Lee 2020-04-25 701 rcu_read_lock();
e57b7901469fc0 Ryder Lee 2020-04-25 702 sta = ieee80211_find_sta(vif, sta->addr);
e57b7901469fc0 Ryder Lee 2020-04-25 703 if (!sta) {
e57b7901469fc0 Ryder Lee 2020-04-25 704 rcu_read_unlock();
e57b7901469fc0 Ryder Lee 2020-04-25 705 return;
e57b7901469fc0 Ryder Lee 2020-04-25 706 }
e57b7901469fc0 Ryder Lee 2020-04-25 707 rcu_read_lock();
e57b7901469fc0 Ryder Lee 2020-04-25 708
e57b7901469fc0 Ryder Lee 2020-04-25 709 set_bit(changed, &msta->stats.changed);
e57b7901469fc0 Ryder Lee 2020-04-25 710 ieee80211_queue_work(hw, &msta->stats_work);
e57b7901469fc0 Ryder Lee 2020-04-25 711 }
e57b7901469fc0 Ryder Lee 2020-04-25 712
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months
Re: [PATCH v4 4/5] mtd: rawnand: Introduce a new function nand_check_is_erased_page()
by kbuild test robot
Hi Bean,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on v5.7-rc6 next-20200518]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Bean-Huo/Micron-SLC-NAND-filling...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git b9bbe6ed63b2b9f2c9ee5cbd0f2c946a2723f4ce
config: m68k-allmodconfig (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
# 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 errors (new ones prefixed by >>, old ones prefixed by <<):
drivers/mtd/nand/raw/nand_base.c: In function 'nand_check_is_erased_page':
>> drivers/mtd/nand/raw/nand_base.c:2611:2: error: 'max_bitflips' undeclared (first use in this function)
2611 | max_bitflips = 0;
| ^~~~~~~~~~~~
drivers/mtd/nand/raw/nand_base.c:2611:2: note: each undeclared identifier is reported only once for each function it appears in
vim +/max_bitflips +2611 drivers/mtd/nand/raw/nand_base.c
2586
2587 /**
2588 * nand_check_is_erased_page - check if this page is a empty page
2589 * @chip: nand chip info structure
2590 * @page_data: data buffer containing the data in the page being checked
2591 * @oob: indicate if chip->oob_poi points to oob date of the page
2592 *
2593 * Returns true if this is an un-programmed page, false otherwise.
2594 */
2595 int nand_check_is_erased_page(struct nand_chip *chip, u8 *page_data, bool oob)
2596 {
2597 struct mtd_info *mtd = nand_to_mtd(chip);
2598 int ret, i;
2599 u8 *databuf, *eccbuf = NULL;
2600 struct mtd_oob_region oobregion;
2601 int datasize, eccbytes = 0;
2602
2603 databuf = page_data;
2604 datasize = chip->ecc.size;
2605
2606 if (oob) {
2607 mtd_ooblayout_ecc(mtd, 0, &oobregion);
2608 eccbuf = chip->oob_poi + oobregion.offset;
2609 eccbytes = chip->ecc.bytes;
2610 }
> 2611 max_bitflips = 0;
2612
2613 for (i = 0; i < chip->ecc.steps; i++) {
2614 ret = nand_check_erased_ecc_chunk(databuf, datasize,
2615 eccbuf, eccbytes,
2616 NULL, 0, chip->ecc.strength);
2617 if (ret < 0)
2618 return false;
2619
2620 databuf += chip->ecc.size;
2621 eccbuf += chip->ecc.bytes;
2622 }
2623
2624 return ret;
2625 }
2626 EXPORT_SYMBOL(nand_check_is_erased_page);
2627
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 4 months