diff options
Diffstat (limited to 'drivers/pci/pcie/aer_inject.c')
-rw-r--r-- | drivers/pci/pcie/aer_inject.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pci/pcie/aer_inject.c b/drivers/pci/pcie/aer_inject.c index f40ed5867c89..726987f8d53c 100644 --- a/drivers/pci/pcie/aer_inject.c +++ b/drivers/pci/pcie/aer_inject.c | |||
@@ -14,6 +14,7 @@ | |||
14 | 14 | ||
15 | #include <linux/module.h> | 15 | #include <linux/module.h> |
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/irq.h> | ||
17 | #include <linux/miscdevice.h> | 18 | #include <linux/miscdevice.h> |
18 | #include <linux/pci.h> | 19 | #include <linux/pci.h> |
19 | #include <linux/slab.h> | 20 | #include <linux/slab.h> |
@@ -457,7 +458,9 @@ static int aer_inject(struct aer_error_inj *einj) | |||
457 | dev_info(&edev->device, | 458 | dev_info(&edev->device, |
458 | "aer_inject: Injecting errors %08x/%08x into device %s\n", | 459 | "aer_inject: Injecting errors %08x/%08x into device %s\n", |
459 | einj->cor_status, einj->uncor_status, pci_name(dev)); | 460 | einj->cor_status, einj->uncor_status, pci_name(dev)); |
460 | aer_irq(-1, edev); | 461 | local_irq_disable(); |
462 | generic_handle_irq(edev->irq); | ||
463 | local_irq_enable(); | ||
461 | } else { | 464 | } else { |
462 | pci_err(rpdev, "aer_inject: AER device not found\n"); | 465 | pci_err(rpdev, "aer_inject: AER device not found\n"); |
463 | ret = -ENODEV; | 466 | ret = -ENODEV; |