[PATCH v3 2/2] PCI/aer_inject: Remove unnecessary lock in aer_inject_exit

From: Guangbo Cui
Date: Sun Oct 26 2025 - 00:44:34 EST


After misc_deregister and restoring PCI bus ops, there can be no further
users accessing the einjected list. The list items are therefore safely
freed without taking the lock.

Signed-off-by: Guangbo Cui <jckeep.cuiguangbo@xxxxxxxxx>
---
drivers/pci/pcie/aer_inject.c | 3 ---
1 file changed, 3 deletions(-)

diff --git a/drivers/pci/pcie/aer_inject.c b/drivers/pci/pcie/aer_inject.c
index c8d65bfb10ff..a064fa2acb94 100644
--- a/drivers/pci/pcie/aer_inject.c
+++ b/drivers/pci/pcie/aer_inject.c
@@ -523,7 +523,6 @@ static int __init aer_inject_init(void)
static void __exit aer_inject_exit(void)
{
struct aer_error *err, *err_next;
- unsigned long flags;
struct pci_bus_ops *bus_ops;

misc_deregister(&aer_inject_device);
@@ -533,12 +532,10 @@ static void __exit aer_inject_exit(void)
kfree(bus_ops);
}

- spin_lock_irqsave(&inject_lock, flags);
list_for_each_entry_safe(err, err_next, &einjected, list) {
list_del(&err->list);
kfree(err);
}
- spin_unlock_irqrestore(&inject_lock, flags);
}

module_init(aer_inject_init);
--
2.43.0