arch/x86/kernel/apm_32.c:428:43: sparse: sparse: cast truncates bits from constant value (40000400 becomes 400)

From: kbuild test robot
Date: Sat May 16 2020 - 23:02:24 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 3d1c1e5931ce45b3a3f309385bbc00c78e9951c6
commit: 1651e700664b4597ddf4f8adfe435252a0d11277 x86: Fix bitops.h warning with a moved cast
date: 9 weeks ago
config: i386-randconfig-s002-20200517 (attached as .config)
reproduce:
# apt-get install sparse
# sparse version: v0.6.1-193-gb8fad4bc-dirty
git checkout 1651e700664b4597ddf4f8adfe435252a0d11277
# save the attached .config to linux build tree
make C=1 ARCH=i386 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@xxxxxxxxx>


sparse warnings: (new ones prefixed by >>)

>> arch/x86/kernel/apm_32.c:428:43: sparse: sparse: cast truncates bits from constant value (40000400 becomes 400)

vim +428 arch/x86/kernel/apm_32.c

c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 421
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 422 /*
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 423 * Set up a segment that references the real mode segment 0x40
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 424 * that extends up to the end of page zero (that we have reserved).
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 425 * This is for buggy BIOS's that refer to (real mode) segment 0x40
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 426 * even though they are called in protected mode.
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 427 */
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 @428 static struct desc_struct bad_bios_desc = GDT_ENTRY_INIT(0x4092,
c7425314c755d5 arch/x86/kernel/apm_32.c Akinobu Mita 2009-08-09 429 (unsigned long)__va(0x400UL), PAGE_SIZE - 0x400 - 1);
^1da177e4c3f41 arch/i386/kernel/apm.c Linus Torvalds 2005-04-16 430

:::::: The code at line 428 was first introduced by commit
:::::: c7425314c755d5f94da7c978205c85a7c6201212 x86: Introduce GDT_ENTRY_INIT(), initialize bad_bios_desc statically

:::::: TO: Akinobu Mita <akinobu.mita@xxxxxxxxx>
:::::: CC: Ingo Molnar <mingo@xxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip