On 12/31/1969 7:00 PM, linux-arm-kernel [mailto:linux-arm-kernel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Sergey Temerkhanov wrote: > int pcibus_to_node(struct pci_bus *bus) { > - return dev_to_node(&bus->dev); > + struct pci_config_window *cfg = bus->sysdata; > + struct acpi_device *adev = NULL; > + struct device *dev; > + > + if (!acpi_disabled) > + adev = to_acpi_device(cfg->parent); > + I see a problem here that NUMA node information is read from the parent device. PCI bus can have multiple levels of switches and bridges. The NUMA information is only present on the host bridge. This code only works if the endpoint is directly connected to the root port. You should follow a similar design pattern like pci_dma_configure() where you go to the host bridge device from any pci device and read the _PXM from the host bridge. -- Sinan Kaya Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project. -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html