diff options
author | Prarit Bhargava <prarit@redhat.com> | 2014-10-23 14:22:12 -0400 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2014-11-06 17:10:06 -0500 |
commit | 63692df103e9c76b26c382ce8079283b7df9a99a (patch) | |
tree | 677204f229cd7ad3dcf072d8d7eb44ce01018e9e /Documentation/ABI | |
parent | f114040e3ea6e07372334ade75d1ee0775c355e1 (diff) |
PCI: Allow numa_node override via sysfs
NUMA systems with ACPI normally describe the physical topology via _PXM
methods. But many BIOSes don't implement _PXM, which leaves the kernel
with no way to discover the device topology, which reduces performance
because we can't put memory and processes close to the device.
The NUMA node of a PCI device is already exported in the sysfs "numa_node"
file. Make that file writable so users can workaround the lack of _PXM
methods in the BIOS. For example:
echo 3 > /sys/devices/pci0000:ff/0000:03:1f.3/numa_node
sets the node for PCI device 0000:03:1f.3.
Writing the file emits a FW_BUG warning to encourage users to request
firmware updates. It also taints the kernel with TAINT_FIRMWARE_WORKAROUND
because overriding the node incorrectly can cause performance issues.
[bhelgaas: changelog, documentation text]
Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Myron Stowe <mstowe@redhat.com>
CC: Alexander Ducyk <alexander.h.duyck@redhat.com>
CC: Jiang Liu <jiang.liu@linux.intel.com>
Diffstat (limited to 'Documentation/ABI')
-rw-r--r-- | Documentation/ABI/testing/sysfs-bus-pci | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/Documentation/ABI/testing/sysfs-bus-pci b/Documentation/ABI/testing/sysfs-bus-pci index ee6c04036492..b3bc50f650ee 100644 --- a/Documentation/ABI/testing/sysfs-bus-pci +++ b/Documentation/ABI/testing/sysfs-bus-pci | |||
@@ -281,3 +281,16 @@ Description: | |||
281 | opt-out of driver binding using a driver_override name such as | 281 | opt-out of driver binding using a driver_override name such as |
282 | "none". Only a single driver may be specified in the override, | 282 | "none". Only a single driver may be specified in the override, |
283 | there is no support for parsing delimiters. | 283 | there is no support for parsing delimiters. |
284 | |||
285 | What: /sys/bus/pci/devices/.../numa_node | ||
286 | Date: Oct 2014 | ||
287 | Contact: Prarit Bhargava <prarit@redhat.com> | ||
288 | Description: | ||
289 | This file contains the NUMA node to which the PCI device is | ||
290 | attached, or -1 if the node is unknown. The initial value | ||
291 | comes from an ACPI _PXM method or a similar firmware | ||
292 | source. If that is missing or incorrect, this file can be | ||
293 | written to override the node. In that case, please report | ||
294 | a firmware bug to the system vendor. Writing to this file | ||
295 | taints the kernel with TAINT_FIRMWARE_WORKAROUND, which | ||
296 | reduces the supportability of your system. | ||