[kbuild] [yao:perf-intel-next 27/113] arch/x86/events/intel/uncore.c:1600 check_discovery_table() error: uninitialized symbol 'dvsec'.

2020-06-02 Thread Dan Carpenter
tree:   yao/perf-intel-next
head:   36086096ecdcd11f5dfc73d2780537e2483ac70b
commit: 7033482bbd4f555901cbe7f5e8fbcc8a2618851f [27/113] 
perf/x86/intel/uncore: Check discovery tables
config: i386-randconfig-m021-20200602 (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 
Reported-by: Dan Carpenter 

smatch warnings:
arch/x86/events/intel/uncore.c:1600 check_discovery_table() error: 
uninitialized symbol 'dvsec'.

git remote add yao git://bee.sh.intel.com/git/jinyao/linux.git
git remote update yao
git checkout 7033482bbd4f555901cbe7f5e8fbcc8a2618851f
vim +/dvsec +1600 arch/x86/events/intel/uncore.c

7033482bbd4f55 Kan Liang 2020-04-13  1586  
7033482bbd4f55 Kan Liang 2020-04-13  1587  bool __init 
check_discovery_table(void)
7033482bbd4f55 Kan Liang 2020-04-13  1588  {
7033482bbd4f55 Kan Liang 2020-04-13  1589   struct uncore_discovery_table 
*table;
7033482bbd4f55 Kan Liang 2020-04-13  1590   struct pci_dev *dev = NULL;
7033482bbd4f55 Kan Liang 2020-04-13  1591   int dvsec, logical_die = 0;
^

7033482bbd4f55 Kan Liang 2020-04-13  1592   u32 val, entry_id, bir;
7033482bbd4f55 Kan Liang 2020-04-13  1593   bool ret = false;
7033482bbd4f55 Kan Liang 2020-04-13  1594  
7033482bbd4f55 Kan Liang 2020-04-13  1595   /*
7033482bbd4f55 Kan Liang 2020-04-13  1596* Check the existence of 
discovery table by searching all PCI devices
7033482bbd4f55 Kan Liang 2020-04-13  1597* for unique capability ID.
7033482bbd4f55 Kan Liang 2020-04-13  1598*/
7033482bbd4f55 Kan Liang 2020-04-13  1599   while ((dev = 
pci_get_device(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, dev)) != NULL) {
7033482bbd4f55 Kan Liang 2020-04-13 @1600   while ((dvsec = 
pci_find_next_ext_capability(dev, dvsec, UNCORE_EXT_CAP_ID_DISCOVERY))) {

  ^
Uninitialized here.  KASAN will trigger a warning at runtime as well.

7033482bbd4f55 Kan Liang 2020-04-13  1601   
pci_read_config_dword(dev, dvsec + UNCORE_DISCOVERY_DVSEC_OFFSET, );
7033482bbd4f55 Kan Liang 2020-04-13  1602   entry_id = val 
& UNCORE_DISCOVERY_DVSEC_ID_MASK;
7033482bbd4f55 Kan Liang 2020-04-13  1603   if (entry_id == 
UNCORE_DISCOVERY_DVSEC_ID_PMON) {
7033482bbd4f55 Kan Liang 2020-04-13  1604   table = 
kmalloc(sizeof(struct uncore_discovery_table), GFP_KERNEL);
7033482bbd4f55 Kan Liang 2020-04-13  1605   if 
(!table)
7033482bbd4f55 Kan Liang 2020-04-13  1606   
continue;
7033482bbd4f55 Kan Liang 2020-04-13  1607   
pci_read_config_dword(dev, dvsec + UNCORE_DISCOVERY_DVSEC2_OFFSET, );
7033482bbd4f55 Kan Liang 2020-04-13  1608   bir = 
val & UNCORE_DISCOVERY_DVSEC2_BIR_MASK;
7033482bbd4f55 Kan Liang 2020-04-13  1609   
table->domain = pci_domain_nr(dev->bus);
7033482bbd4f55 Kan Liang 2020-04-13  1610   
table->bus = dev->bus->number;
7033482bbd4f55 Kan Liang 2020-04-13  1611   
table->devfn = dev->devfn;
7033482bbd4f55 Kan Liang 2020-04-13  1612   
table->bar_offset = 0x10 + (bir * 4);
7033482bbd4f55 Kan Liang 2020-04-13  1613   
table->die = logical_die++;
7033482bbd4f55 Kan Liang 2020-04-13  1614   if 
(discovery_table_pci2phy_map_init(dev, table->die)) {
7033482bbd4f55 Kan Liang 2020-04-13  1615   
kfree(table);
7033482bbd4f55 Kan Liang 2020-04-13  1616   
continue;
7033482bbd4f55 Kan Liang 2020-04-13  1617   }
7033482bbd4f55 Kan Liang 2020-04-13  1618   
list_add_tail(>list, _table);
7033482bbd4f55 Kan Liang 2020-04-13  1619   ret = 
true;
7033482bbd4f55 Kan Liang 2020-04-13  1620   
continue;
7033482bbd4f55 Kan Liang 2020-04-13  1621   }
7033482bbd4f55 Kan Liang 2020-04-13  1622   }
7033482bbd4f55 Kan Liang 2020-04-13  1623   }
7033482bbd4f55 Kan Liang 2020-04-13  1624   pci_dev_put(dev);
7033482bbd4f55 Kan Liang 2020-04-13  1625  
7033482bbd4f55 Kan Liang 2020-04-13  1626   
fill_up_pbus_to_physid_mapping(true);
7033482bbd4f55 Kan Liang 2020-04-13  1627  
7033482bbd4f55 Kan Liang 2020-04-13  1628   return ret;
7033482bbd4f55 Kan Liang 2020-04-13  1629  }

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


.config.gz
Description: application/gzip
___
kbuild mailing 

[kbuild] [yao:perf-intel-next 27/113] arch/x86/events/intel/uncore.c:1600 check_discovery_table() error: uninitialized symbol 'dvsec'.

2020-06-01 Thread kbuild test robot
CC: kbuild-...@lists.01.org
TO: "Kan, Liang," 

tree:   yao/perf-intel-next
head:   36086096ecdcd11f5dfc73d2780537e2483ac70b
commit: 7033482bbd4f555901cbe7f5e8fbcc8a2618851f [27/113] 
perf/x86/intel/uncore: Check discovery tables
:: branch date: 7 days ago
:: commit date: 7 weeks ago
config: i386-randconfig-m021-20200602 (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 
Reported-by: Dan Carpenter 

smatch warnings:
arch/x86/events/intel/uncore.c:1600 check_discovery_table() error: 
uninitialized symbol 'dvsec'.

git remote add yao git://bee.sh.intel.com/git/jinyao/linux.git
git remote update yao
git checkout 7033482bbd4f555901cbe7f5e8fbcc8a2618851f
vim +/dvsec +1600 arch/x86/events/intel/uncore.c

7033482bbd4f55 Kan Liang 2020-04-13  1586  
7033482bbd4f55 Kan Liang 2020-04-13  1587  bool __init 
check_discovery_table(void)
7033482bbd4f55 Kan Liang 2020-04-13  1588  {
7033482bbd4f55 Kan Liang 2020-04-13  1589   struct uncore_discovery_table 
*table;
7033482bbd4f55 Kan Liang 2020-04-13  1590   struct pci_dev *dev = NULL;
7033482bbd4f55 Kan Liang 2020-04-13  1591   int dvsec, logical_die = 0;
7033482bbd4f55 Kan Liang 2020-04-13  1592   u32 val, entry_id, bir;
7033482bbd4f55 Kan Liang 2020-04-13  1593   bool ret = false;
7033482bbd4f55 Kan Liang 2020-04-13  1594  
7033482bbd4f55 Kan Liang 2020-04-13  1595   /*
7033482bbd4f55 Kan Liang 2020-04-13  1596* Check the existence of 
discovery table by searching all PCI devices
7033482bbd4f55 Kan Liang 2020-04-13  1597* for unique capability ID.
7033482bbd4f55 Kan Liang 2020-04-13  1598*/
7033482bbd4f55 Kan Liang 2020-04-13  1599   while ((dev = 
pci_get_device(PCI_VENDOR_ID_INTEL, PCI_ANY_ID, dev)) != NULL) {
7033482bbd4f55 Kan Liang 2020-04-13 @1600   while ((dvsec = 
pci_find_next_ext_capability(dev, dvsec, UNCORE_EXT_CAP_ID_DISCOVERY))) {
7033482bbd4f55 Kan Liang 2020-04-13  1601   
pci_read_config_dword(dev, dvsec + UNCORE_DISCOVERY_DVSEC_OFFSET, );
7033482bbd4f55 Kan Liang 2020-04-13  1602   entry_id = val 
& UNCORE_DISCOVERY_DVSEC_ID_MASK;
7033482bbd4f55 Kan Liang 2020-04-13  1603   if (entry_id == 
UNCORE_DISCOVERY_DVSEC_ID_PMON) {
7033482bbd4f55 Kan Liang 2020-04-13  1604   table = 
kmalloc(sizeof(struct uncore_discovery_table), GFP_KERNEL);
7033482bbd4f55 Kan Liang 2020-04-13  1605   if 
(!table)
7033482bbd4f55 Kan Liang 2020-04-13  1606   
continue;
7033482bbd4f55 Kan Liang 2020-04-13  1607   
pci_read_config_dword(dev, dvsec + UNCORE_DISCOVERY_DVSEC2_OFFSET, );
7033482bbd4f55 Kan Liang 2020-04-13  1608   bir = 
val & UNCORE_DISCOVERY_DVSEC2_BIR_MASK;
7033482bbd4f55 Kan Liang 2020-04-13  1609   
table->domain = pci_domain_nr(dev->bus);
7033482bbd4f55 Kan Liang 2020-04-13  1610   
table->bus = dev->bus->number;
7033482bbd4f55 Kan Liang 2020-04-13  1611   
table->devfn = dev->devfn;
7033482bbd4f55 Kan Liang 2020-04-13  1612   
table->bar_offset = 0x10 + (bir * 4);
7033482bbd4f55 Kan Liang 2020-04-13  1613   
table->die = logical_die++;
7033482bbd4f55 Kan Liang 2020-04-13  1614   if 
(discovery_table_pci2phy_map_init(dev, table->die)) {
7033482bbd4f55 Kan Liang 2020-04-13  1615   
kfree(table);
7033482bbd4f55 Kan Liang 2020-04-13  1616   
continue;
7033482bbd4f55 Kan Liang 2020-04-13  1617   }
7033482bbd4f55 Kan Liang 2020-04-13  1618   
list_add_tail(>list, _table);
7033482bbd4f55 Kan Liang 2020-04-13  1619   ret = 
true;
7033482bbd4f55 Kan Liang 2020-04-13  1620   
continue;
7033482bbd4f55 Kan Liang 2020-04-13  1621   }
7033482bbd4f55 Kan Liang 2020-04-13  1622   }
7033482bbd4f55 Kan Liang 2020-04-13  1623   }
7033482bbd4f55 Kan Liang 2020-04-13  1624   pci_dev_put(dev);
7033482bbd4f55 Kan Liang 2020-04-13  1625  
7033482bbd4f55 Kan Liang 2020-04-13  1626   
fill_up_pbus_to_physid_mapping(true);
7033482bbd4f55 Kan Liang 2020-04-13  1627  
7033482bbd4f55 Kan Liang 2020-04-13  1628   return ret;
7033482bbd4f55 Kan Liang 2020-04-13  1629  }
7033482bbd4f55 Kan Liang 2020-04-13  1630  

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


.config.gz
Description: application/gzip
___
kbuild mailing list -- kbuild@lists.01.org
To unsubscribe send an email to kbuild-le...@lists.01.org