[PATCH][v2] PCI: sysfs: Suppress FW_BUG warning when NUMA node already matches

From: lirongqing

Date: Mon Mar 16 2026 - 20:57:00 EST


From: Li RongQing <lirongqing@xxxxxxxxx>

The numa_node sysfs interface allows users to manually override a PCI
device's NUMA node assignment. Currently, every write triggers a
FW_BUG warning and taints the kernel, even when writing the same value
that is already set.

Check if the requested node is already assigned to the device. If it
matches, return success immediately without tainting the kernel or
printing a warning.

Signed-off-by: Li RongQing <lirongqing@xxxxxxxxx>
---
Diff with v1: invert the check and return if they are same

drivers/pci/pci-sysfs.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
index 16eaaf7..dd7c9e5 100644
--- a/drivers/pci/pci-sysfs.c
+++ b/drivers/pci/pci-sysfs.c
@@ -378,6 +378,9 @@ static ssize_t numa_node_store(struct device *dev,
if (node != NUMA_NO_NODE && !node_online(node))
return -EINVAL;

+ if (node == dev->numa_node)
+ return count;
+
add_taint(TAINT_FIRMWARE_WORKAROUND, LOCKDEP_STILL_OK);
pci_alert(pdev, FW_BUG "Overriding NUMA node to %d. Contact your vendor for updates.",
node);
--
2.9.4