tree:
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git master
head: 7b18c2d1930b99fc2acd4b9499a55f51df2a6678
commit: dde56e52f55a3bed98d1b02d83ab4376c7e152b4 [387/476] x86/mm/tlb: Flush remote and
local TLBs concurrently
config: x86_64-randconfig-a003-20210215 (attached as .config)
compiler: clang version 12.0.0 (
https://github.com/llvm/llvm-project
c9439ca36342fb6013187d0a69aef92736951476)
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
#
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?...
git remote add peterz-queue
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
git fetch --no-tags peterz-queue master
git checkout dde56e52f55a3bed98d1b02d83ab4376c7e152b4
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
> arch/x86/mm/tlb.c:1172:18: warning: variable 'info' is
uninitialized when used here [-Wuninitialized]
flush_tlb_func(info);
^~~~
arch/x86/mm/tlb.c:1158:29: note: initialize the variable 'info' to silence this
warning
struct flush_tlb_info *info;
^
= NULL
1 warning generated.
vim +/info +1172 arch/x86/mm/tlb.c
2faf153bb7346b Thomas Gleixner 2020-04-21 1155
3db6d5a5ecaf0a Nadav Amit 2019-04-25 1156 void arch_tlbbatch_flush(struct
arch_tlbflush_unmap_batch *batch)
3db6d5a5ecaf0a Nadav Amit 2019-04-25 1157 {
edd07111673cdd Nadav Amit 2021-02-09 1158 struct flush_tlb_info *info;
edd07111673cdd Nadav Amit 2021-02-09 1159
e73ad5ff2f76da Andy Lutomirski 2017-05-22 1160 int cpu = get_cpu();
e73ad5ff2f76da Andy Lutomirski 2017-05-22 1161
dde56e52f55a3b Nadav Amit 2021-02-09 1162 /*
dde56e52f55a3b Nadav Amit 2021-02-09 1163 * flush_tlb_multi() is not optimized
for the common case in which only
dde56e52f55a3b Nadav Amit 2021-02-09 1164 * a local TLB flush is needed. Optimize
this use-case by calling
dde56e52f55a3b Nadav Amit 2021-02-09 1165 * flush_tlb_func_local() directly in
this case.
dde56e52f55a3b Nadav Amit 2021-02-09 1166 */
dde56e52f55a3b Nadav Amit 2021-02-09 1167 if
(cpumask_any_but(&batch->cpumask, cpu) < nr_cpu_ids) {
dde56e52f55a3b Nadav Amit 2021-02-09 1168 flush_tlb_multi(&batch->cpumask,
info);
dde56e52f55a3b Nadav Amit 2021-02-09 1169 } else if (cpumask_test_cpu(cpu,
&batch->cpumask)) {
3db6d5a5ecaf0a Nadav Amit 2019-04-25 1170 lockdep_assert_irqs_enabled();
bc0d5a89fbe3c8 Andy Lutomirski 2017-06-29 1171 local_irq_disable();
edd07111673cdd Nadav Amit 2021-02-09 @1172 flush_tlb_func(info);
bc0d5a89fbe3c8 Andy Lutomirski 2017-06-29 1173 local_irq_enable();
bc0d5a89fbe3c8 Andy Lutomirski 2017-06-29 1174 }
bc0d5a89fbe3c8 Andy Lutomirski 2017-06-29 1175
e73ad5ff2f76da Andy Lutomirski 2017-05-22 1176 cpumask_clear(&batch->cpumask);
e73ad5ff2f76da Andy Lutomirski 2017-05-22 1177
edd07111673cdd Nadav Amit 2021-02-09 1178 put_flush_tlb_info();
e73ad5ff2f76da Andy Lutomirski 2017-05-22 1179 put_cpu();
e73ad5ff2f76da Andy Lutomirski 2017-05-22 1180 }
e73ad5ff2f76da Andy Lutomirski 2017-05-22 1181
:::::: The code at line 1172 was first introduced by commit
:::::: edd07111673cddd0689de853c9869fdba0b41bfb x86/mm/tlb: Unify flush_tlb_func_local()
and flush_tlb_func_remote()
:::::: TO: Nadav Amit <namit(a)vmware.com>
:::::: CC: Peter Zijlstra <peterz(a)infradead.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org