Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F167539488
D59062.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
D59062.diff
View Options
diff --git a/sys/dev/acpica/acpi_pci.c b/sys/dev/acpica/acpi_pci.c
--- a/sys/dev/acpica/acpi_pci.c
+++ b/sys/dev/acpica/acpi_pci.c
@@ -90,7 +90,10 @@
int state);
static void acpi_pci_update_device(ACPI_HANDLE handle, device_t pci_child);
static bus_dma_tag_t acpi_pci_get_dma_tag(device_t bus, device_t child);
+static int acpi_pci_get_cpus(device_t dev, device_t child,
+ enum cpu_sets op, size_t setsize, cpuset_t *cpuset);
static int acpi_pci_get_domain(device_t dev, device_t child, int *domain);
+static device_t acpi_pci_get_locality_device(device_t child);
static device_method_t acpi_pci_methods[] = {
/* Device interface */
@@ -104,7 +107,7 @@
DEVMETHOD(bus_child_deleted, acpi_pci_child_deleted),
DEVMETHOD(bus_child_location, acpi_pci_child_location_method),
DEVMETHOD(bus_get_device_path, acpi_pci_get_device_path),
- DEVMETHOD(bus_get_cpus, acpi_get_cpus),
+ DEVMETHOD(bus_get_cpus, acpi_pci_get_cpus),
DEVMETHOD(bus_get_dma_tag, acpi_pci_get_dma_tag),
DEVMETHOD(bus_get_domain, acpi_pci_get_domain),
@@ -204,6 +207,25 @@
return (pci_get_device_path_method(bus, child, locator, sb));
}
+/* Use a VF's PF as the source of its ACPI locality information. */
+static device_t
+acpi_pci_get_locality_device(device_t child)
+{
+ device_t pf;
+
+ pf = pci_iov_get_pf(child);
+ return (pf != NULL ? pf : child);
+}
+
+static int
+acpi_pci_get_cpus(device_t dev, device_t child, enum cpu_sets op,
+ size_t setsize, cpuset_t *cpuset)
+{
+
+ child = acpi_pci_get_locality_device(child);
+ return (acpi_get_cpus(dev, child, op, setsize, cpuset));
+}
+
/*
* Fetch the NUMA domain for the given device 'dev'.
*
@@ -217,6 +239,7 @@
{
int d;
+ child = acpi_pci_get_locality_device(child);
d = acpi_pxm_parse(child);
if (d >= 0) {
*domain = d;
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Aug 23, 2:05 PM (7 m, 3 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
37118673
Default Alt Text
D59062.diff (1 KB)
Attached To
Mode
D59062: acpi_pci: Inherit PF locality for SR-IOV VFs
Attached
Detach File
Event Timeline
Log In to Comment