tree:
https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git devel
head: b1d08004826c99d8af2be6744a7c623a18965562
commit: b32e61377f052498dd5b44b6029776457bf4cc24 [36/60] include condition in the
BUG_ON/WARN_ON output
config: i386-randconfig-s001-20200607 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-247-gcadbd124-dirty
git checkout b32e61377f052498dd5b44b6029776457bf4cc24
# save the attached .config to linux build tree
make W=1 C=1 ARCH=i386 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
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/cpu/microcode/intel.c:801:13: sparse: sparse: too
long token expansion
vim +801 arch/x86/kernel/cpu/microcode/intel.c
^1da177e4c3f41 arch/i386/kernel/microcode.c Linus Torvalds 2005-04-16 789
3f1f576a195aa2 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-16 790
static enum ucode_state apply_microcode_intel(int cpu)
^1da177e4c3f41 arch/i386/kernel/microcode.c Linus Torvalds 2005-04-16 791 {
d8c3b52c00a050 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-28 792
struct ucode_cpu_info *uci = ucode_cpu_info + cpu;
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 793
struct cpuinfo_x86 *c = &cpu_data(cpu);
811ae8ba6dca6b arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2019-08-24 794
bool bsp = c->cpu_index == boot_cpu_data.cpu_index;
d8c3b52c00a050 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-28 795
struct microcode_intel *mc;
8da38ebaad23fe arch/x86/kernel/cpu/microcode/intel.c Filippo Sironi 2018-07-31 796
enum ucode_state ret;
354542d034ab2a arch/x86/kernel/cpu/microcode/intel.c Andi Kleen 2016-06-09 797
static int prev_rev;
4167709bbf8265 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2017-01-09 798
u32 rev;
4bae1967357bfc arch/x86/kernel/microcode_intel.c Ingo Molnar 2009-03-11 799
9a3110bf4bb046 arch/i386/kernel/microcode.c Shaohua Li 2006-09-27 800 /*
We should bind the task to the CPU */
26cbaa4dc676a4 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 @801 if
(WARN_ON(raw_smp_processor_id() != cpu))
3f1f576a195aa2 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-16 802
return UCODE_ERROR;
9a3110bf4bb046 arch/i386/kernel/microcode.c Shaohua Li 2006-09-27 803
06b8534cb72837 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-10-25 804 /*
Look for a newer patch in our cache: */
06b8534cb72837 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-10-25 805 mc
= find_patch(uci);
d8c3b52c00a050 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-28 806 if
(!mc) {
d8c3b52c00a050 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-28 807
mc = uci->mc;
de778275c29582 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 808
if (!mc)
3f1f576a195aa2 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-16 809
return UCODE_NFOUND;
06b8534cb72837 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-10-25 810 }
9cd4d78e21cfdc arch/x86/kernel/microcode_intel.c Fenghua Yu 2012-12-20 811
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 812
/*
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 813 *
Save us the MSR write below - which is a particular expensive
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 814 *
operation - when the other hyperthread has updated the microcode
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 815 *
already.
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 816
*/
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 817
rev = intel_get_microcode_revision();
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 818 if
(rev >= mc->hdr.rev) {
8da38ebaad23fe arch/x86/kernel/cpu/microcode/intel.c Filippo Sironi 2018-07-31 819
ret = UCODE_OK;
8da38ebaad23fe arch/x86/kernel/cpu/microcode/intel.c Filippo Sironi 2018-07-31 820
goto out;
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 821 }
c182d2b7d0ca48 arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 822
91df9fdf51492a arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 823
/*
91df9fdf51492a arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 824 *
Writeback and invalidate caches before updating microcode to avoid
91df9fdf51492a arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 825 *
internal issues depending on what the microcode is updating.
91df9fdf51492a arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 826
*/
91df9fdf51492a arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 827
native_wbinvd();
91df9fdf51492a arch/x86/kernel/cpu/microcode/intel.c Ashok Raj 2018-02-28 828
^1da177e4c3f41 arch/i386/kernel/microcode.c Linus Torvalds 2005-04-16 829 /*
write microcode via MSR 0x79 */
c416e611757521 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 830
wrmsrl(MSR_IA32_UCODE_WRITE, (unsigned long)mc->bits);
245067d1674d45 arch/i386/kernel/microcode.c Zachary Amsden 2005-09-03 831
4167709bbf8265 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2017-01-09 832
rev = intel_get_microcode_revision();
^1da177e4c3f41 arch/i386/kernel/microcode.c Linus Torvalds 2005-04-16 833
4167709bbf8265 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2017-01-09 834 if
(rev != mc->hdr.rev) {
f58e1f53de52a7 arch/x86/kernel/microcode_intel.c Joe Perches 2009-12-08 835
pr_err("CPU%d update to revision 0x%x failed\n",
26cbaa4dc676a4 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 836
cpu, mc->hdr.rev);
3f1f576a195aa2 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2018-02-16 837
return UCODE_ERROR;
871b72dd1e12af arch/x86/kernel/microcode_intel.c Dmitry Adamushko 2009-05-11 838 }
26cbaa4dc676a4 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 839
811ae8ba6dca6b arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2019-08-24 840 if
(bsp && rev != prev_rev) {
354542d034ab2a arch/x86/kernel/cpu/microcode/intel.c Andi Kleen 2016-06-09 841
pr_info("updated to revision 0x%x, date = %04x-%02x-%02x\n",
4167709bbf8265 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2017-01-09 842
rev,
de778275c29582 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 843
mc->hdr.date & 0xffff,
de778275c29582 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 844
mc->hdr.date >> 24,
de778275c29582 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2016-02-03 845
(mc->hdr.date >> 16) & 0xff);
4167709bbf8265 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2017-01-09 846
prev_rev = rev;
354542d034ab2a arch/x86/kernel/cpu/microcode/intel.c Andi Kleen 2016-06-09 847 }
4bae1967357bfc arch/x86/kernel/microcode_intel.c Ingo Molnar 2009-03-11 848
8da38ebaad23fe arch/x86/kernel/cpu/microcode/intel.c Filippo Sironi 2018-07-31 849
ret = UCODE_UPDATED;
8da38ebaad23fe arch/x86/kernel/cpu/microcode/intel.c Filippo Sironi 2018-07-31 850
8da38ebaad23fe arch/x86/kernel/cpu/microcode/intel.c Filippo Sironi 2018-07-31 851
out:
4167709bbf8265 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2017-01-09 852
uci->cpu_sig.rev = rev;
4167709bbf8265 arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2017-01-09 853
c->microcode = rev;
871b72dd1e12af arch/x86/kernel/microcode_intel.c Dmitry Adamushko 2009-05-11 854
370a132bb2227f arch/x86/kernel/cpu/microcode/intel.c Prarit Bhargava 2018-07-31 855 /*
Update boot_cpu_data's revision too, if we're on the BSP: */
811ae8ba6dca6b arch/x86/kernel/cpu/microcode/intel.c Borislav Petkov 2019-08-24 856 if
(bsp)
370a132bb2227f arch/x86/kernel/cpu/microcode/intel.c Prarit Bhargava 2018-07-31 857
boot_cpu_data.microcode = rev;
370a132bb2227f arch/x86/kernel/cpu/microcode/intel.c Prarit Bhargava 2018-07-31 858
8da38ebaad23fe arch/x86/kernel/cpu/microcode/intel.c Filippo Sironi 2018-07-31 859
return ret;
^1da177e4c3f41 arch/i386/kernel/microcode.c Linus Torvalds 2005-04-16 860 }
^1da177e4c3f41 arch/i386/kernel/microcode.c Linus Torvalds 2005-04-16 861
:::::: The code at line 801 was first introduced by commit
:::::: 26cbaa4dc676a444aa626cbc642c4c8181ef1378 x86/microcode/intel: Cleanup
apply_microcode_intel()
:::::: TO: Borislav Petkov <bp(a)suse.de>
:::::: 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