Re: [PATCH v6 25/30] PNP: Don't reserve BARs for PCI when enabled movable BARs

2019-10-27 Thread kbuild test robot
Hi Sergey,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on pci/next]
[also build test ERROR on v5.4-rc4 next-20191025]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:
https://github.com/0day-ci/linux/commits/Sergey-Miroshnichenko/PCI-Allow-BAR-movement-during-hotplug/20191028-002741
base:   https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
config: i386-alldefconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-14) 7.4.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot 

All errors (new ones prefixed by >>):

   drivers/pnp/system.c: In function 'reserve_resources_of_dev':
>> drivers/pnp/system.c:62:6: error: 'pci_can_move_bars' undeclared (first use 
>> in this function); did you mean 'pci_cap_saved_data'?
 if (pci_can_move_bars)
 ^
 pci_cap_saved_data
   drivers/pnp/system.c:62:6: note: each undeclared identifier is reported only 
once for each function it appears in

vim +62 drivers/pnp/system.c

56  
57  static void reserve_resources_of_dev(struct pnp_dev *dev)
58  {
59  struct resource *res;
60  int i;
61  
  > 62  if (pci_can_move_bars)
63  return;
64  
65  for (i = 0; (res = pnp_get_resource(dev, IORESOURCE_IO, i)); 
i++) {
66  if (res->flags & IORESOURCE_DISABLED)
67  continue;
68  if (res->start == 0)
69  continue;   /* disabled */
70  if (res->start < 0x100)
71  /*
72   * Below 0x100 is only standard PC hardware
73   * (pics, kbd, timer, dma, ...)
74   * We should not get resource conflicts there,
75   * and the kernel reserves these anyway
76   * (see arch/i386/kernel/setup.c).
77   * So, do nothing
78   */
79  continue;
80  if (res->end < res->start)
81  continue;   /* invalid */
82  
83  reserve_range(dev, res, 1);
84  }
85  
86  for (i = 0; (res = pnp_get_resource(dev, IORESOURCE_MEM, i)); 
i++) {
87  if (res->flags & IORESOURCE_DISABLED)
88  continue;
89  
90  reserve_range(dev, res, 0);
91  }
92  }
93  

---
0-DAY kernel test infrastructureOpen Source Technology Center
https://lists.01.org/pipermail/kbuild-all   Intel Corporation


.config.gz
Description: application/gzip


[PATCH v6 25/30] PNP: Don't reserve BARs for PCI when enabled movable BARs

2019-10-24 Thread Sergey Miroshnichenko
When the Movable BARs feature is supported, the PCI subsystem is able to
distribute existing BARs and allocate the new ones itself, without need to
reserve gaps by BIOS.

CC: Rafael J. Wysocki 
Signed-off-by: Sergey Miroshnichenko 
---
 drivers/pnp/system.c | 4 
 1 file changed, 4 insertions(+)

diff --git a/drivers/pnp/system.c b/drivers/pnp/system.c
index 6950503741eb..5977bd11f4d4 100644
--- a/drivers/pnp/system.c
+++ b/drivers/pnp/system.c
@@ -12,6 +12,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 
@@ -58,6 +59,9 @@ static void reserve_resources_of_dev(struct pnp_dev *dev)
struct resource *res;
int i;
 
+   if (pci_can_move_bars)
+   return;
+
for (i = 0; (res = pnp_get_resource(dev, IORESOURCE_IO, i)); i++) {
if (res->flags & IORESOURCE_DISABLED)
continue;
-- 
2.23.0