Re: [PATCH] ACPI: PCI: check if the io space is page aligned

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Miao,

kernel test robot noticed the following build errors:

[auto build test ERROR on 7c626ce4bae1ac14f60076d00eafe71af30450ba]

url:    https://github.com/intel-lab-lkp/linux/commits/Miao-Wang-via-B4-Relay/ACPI-PCI-check-if-the-io-space-is-page-aligned/20240815-003833
base:   7c626ce4bae1ac14f60076d00eafe71af30450ba
patch link:    https://lore.kernel.org/r/20240814-check_pci_probe_res-v1-1-122ee07821ab%40gmail.com
patch subject: [PATCH] ACPI: PCI: check if the io space is page aligned
config: riscv-defconfig (https://download.01.org/0day-ci/archive/20240816/202408162021.HaTAkOvd-lkp@xxxxxxxxx/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 26670e7fa4f032a019d23d56c6a02926e854e8af)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240816/202408162021.HaTAkOvd-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202408162021.HaTAkOvd-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

   In file included from drivers/acpi/pci_root.c:18:
   In file included from include/linux/pci.h:38:
   In file included from include/linux/interrupt.h:22:
   In file included from arch/riscv/include/asm/sections.h:9:
   In file included from include/linux/mm.h:2228:
   include/linux/vmstat.h:514:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
     514 |         return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
         |                               ~~~~~~~~~~~ ^ ~~~
>> drivers/acpi/pci_root.c:873:11: error: passing 'struct device' to parameter of incompatible type 'const struct device *'; take the address with &
     873 |                 dev_err(device->dev,
         |                         ^~~~~~~~~~~
         |                         &
   include/linux/dev_printk.h:154:44: note: expanded from macro 'dev_err'
     154 |         dev_printk_index_wrap(_dev_err, KERN_ERR, dev, dev_fmt(fmt), ##__VA_ARGS__)
         |                                                   ^~~
   include/linux/dev_printk.h:110:11: note: expanded from macro 'dev_printk_index_wrap'
     110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
         |                         ^~~
   include/linux/dev_printk.h:50:36: note: passing argument to parameter 'dev' here
      50 | void _dev_err(const struct device *dev, const char *fmt, ...);
         |                                    ^
   1 warning and 1 error generated.


vim +873 drivers/acpi/pci_root.c

   860	
   861	static void acpi_pci_root_remap_iospace(struct acpi_device *device,
   862				struct resource_entry *entry)
   863	{
   864	#ifdef PCI_IOBASE
   865		struct resource *res = entry->res;
   866		resource_size_t cpu_addr = res->start;
   867		resource_size_t pci_addr = cpu_addr - entry->offset;
   868		resource_size_t length = resource_size(res);
   869		unsigned long port;
   870	
   871		if (!PAGE_ALIGNED(cpu_addr) || !PAGE_ALIGNED(length) ||
   872			!PAGE_ALIGNED(pci_addr)) {
 > 873			dev_err(device->dev,
   874				FW_BUG "I/O resource %pR or its offset %pa is not page aligned\n",
   875				res, &entry->offset);
   876			goto err;
   877		}
   878	
   879		if (pci_register_io_range(&device->fwnode, cpu_addr, length))
   880			goto err;
   881	
   882		port = pci_address_to_pio(cpu_addr);
   883		if (port == (unsigned long)-1)
   884			goto err;
   885	
   886		res->start = port;
   887		res->end = port + length - 1;
   888		entry->offset = port - pci_addr;
   889	
   890		if (pci_remap_iospace(res, cpu_addr) < 0)
   891			goto err;
   892	
   893		pr_info("Remapped I/O %pa to %pR\n", &cpu_addr, res);
   894		return;
   895	err:
   896		res->flags |= IORESOURCE_DISABLED;
   897	#endif
   898	}
   899	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux