lkml.org 
[lkml]   [2020]   [Jun]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subjectarch/x86/events/intel/uncore_snbep.c:4394 __snr_uncore_mmio_init_box() warn: should '(pci_dword & 536870911) << 23' be a 64 bit type?
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162
commit: 3442a9ecb8e72a33c28a2b969b766c659830e410 perf/x86/intel/uncore: Factor out __snr_uncore_mmio_init_box
date: 2 months ago
config: x86_64-randconfig-m001-20200601 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
arch/x86/events/intel/uncore_snbep.c:4394 __snr_uncore_mmio_init_box() warn: should '(pci_dword & 536870911) << 23' be a 64 bit type?

# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=3442a9ecb8e72a33c28a2b969b766c659830e410
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git remote update linus
git checkout 3442a9ecb8e72a33c28a2b969b766c659830e410
vim +4394 arch/x86/events/intel/uncore_snbep.c

3442a9ecb8e72a Kan Liang 2020-03-17 4383 static void __snr_uncore_mmio_init_box(struct intel_uncore_box *box,
3442a9ecb8e72a Kan Liang 2020-03-17 4384 unsigned int box_ctl, int mem_offset)
ee49532b38dd08 Kan Liang 2019-04-30 4385 {
ee49532b38dd08 Kan Liang 2019-04-30 4386 struct pci_dev *pdev = snr_uncore_get_mc_dev(box->dieid);
ee49532b38dd08 Kan Liang 2019-04-30 4387 resource_size_t addr;
ee49532b38dd08 Kan Liang 2019-04-30 4388 u32 pci_dword;
ee49532b38dd08 Kan Liang 2019-04-30 4389
ee49532b38dd08 Kan Liang 2019-04-30 4390 if (!pdev)
ee49532b38dd08 Kan Liang 2019-04-30 4391 return;
ee49532b38dd08 Kan Liang 2019-04-30 4392
ee49532b38dd08 Kan Liang 2019-04-30 4393 pci_read_config_dword(pdev, SNR_IMC_MMIO_BASE_OFFSET, &pci_dword);
ee49532b38dd08 Kan Liang 2019-04-30 @4394 addr = (pci_dword & SNR_IMC_MMIO_BASE_MASK) << 23;
^^^^^^^^^^^^^^^^^^^^^^
This check has a pretty high false positive rate because "pci_dword"
is unknowable but obviously SNR_IMC_MMIO_BASE_MASK << 23 is undefined.

ee49532b38dd08 Kan Liang 2019-04-30 4395
3442a9ecb8e72a Kan Liang 2020-03-17 4396 pci_read_config_dword(pdev, mem_offset, &pci_dword);
ee49532b38dd08 Kan Liang 2019-04-30 4397 addr |= (pci_dword & SNR_IMC_MMIO_MEM0_MASK) << 12;
ee49532b38dd08 Kan Liang 2019-04-30 4398
ee49532b38dd08 Kan Liang 2019-04-30 4399 addr += box_ctl;
ee49532b38dd08 Kan Liang 2019-04-30 4400
ee49532b38dd08 Kan Liang 2019-04-30 4401 box->io_addr = ioremap(addr, SNR_IMC_MMIO_SIZE);
ee49532b38dd08 Kan Liang 2019-04-30 4402 if (!box->io_addr)
ee49532b38dd08 Kan Liang 2019-04-30 4403 return;
ee49532b38dd08 Kan Liang 2019-04-30 4404
ee49532b38dd08 Kan Liang 2019-04-30 4405 writel(IVBEP_PMON_BOX_CTL_INT, box->io_addr);
ee49532b38dd08 Kan Liang 2019-04-30 4406 }

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2020-06-02 12:44    [W:0.036 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site