Commit-ID:  c201c91799d687c0a6d8c3272950f51aad5ffebe
Gitweb:     https://git.kernel.org/tip/c201c91799d687c0a6d8c3272950f51aad5ffebe
Author:     Thomas Gleixner <t...@linutronix.de>
AuthorDate: Tue, 17 Oct 2017 09:54:59 +0200
Committer:  Thomas Gleixner <t...@linutronix.de>
CommitDate: Wed, 18 Oct 2017 15:38:31 +0200

x86/vector/msi: Select CONFIG_GENERIC_IRQ_RESERVATION_MODE

Select CONFIG_GENERIC_IRQ_RESERVATION_MODE so PCI/MSI domains get the
MSI_FLAG_MUST_REACTIVATE flag set in pci_msi_create_irq_domain().

Remove the explicit setters of this flag in the apic/msi code as they are
not longer required.

Fixes: 4900be83602b ("x86/vector/msi: Switch to global reservation mode")
Reported-and-tested-by: Dexuan Cui <de...@microsoft.com>
Signed-off-by: Thomas Gleixner <t...@linutronix.de>
Cc: Josh Poulson <jopou...@microsoft.com>
Cc: Mihai Costache <v-mi...@microsoft.com>
Cc: Stephen Hemminger <sthem...@microsoft.com>
Cc: Marc Zyngier <marc.zyng...@arm.com>
Cc: linux-...@vger.kernel.org
Cc: Haiyang Zhang <haiya...@microsoft.com>
Cc: Simon Xiao <six...@microsoft.com>
Cc: Saeed Mahameed <sae...@mellanox.com>
Cc: Jork Loeser <jork.loe...@microsoft.com>
Cc: Bjorn Helgaas <bhelg...@google.com>
Cc: de...@linuxdriverproject.org
Cc: KY Srinivasan <k...@microsoft.com>
Link: https://lkml.kernel.org/r/20171017075600.527569...@linutronix.de

---
 arch/x86/Kconfig           | 1 +
 arch/x86/kernel/apic/msi.c | 5 ++---
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 64e99d3..ea4beda 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -95,6 +95,7 @@ config X86
        select GENERIC_IRQ_MATRIX_ALLOCATOR     if X86_LOCAL_APIC
        select GENERIC_IRQ_MIGRATION            if SMP
        select GENERIC_IRQ_PROBE
+       select GENERIC_IRQ_RESERVATION_MODE
        select GENERIC_IRQ_SHOW
        select GENERIC_PENDING_IRQ              if SMP
        select GENERIC_SMP_IDLE_THREAD
diff --git a/arch/x86/kernel/apic/msi.c b/arch/x86/kernel/apic/msi.c
index 5b6dd1a..9b18be7 100644
--- a/arch/x86/kernel/apic/msi.c
+++ b/arch/x86/kernel/apic/msi.c
@@ -129,7 +129,7 @@ static struct msi_domain_ops pci_msi_domain_ops = {
 
 static struct msi_domain_info pci_msi_domain_info = {
        .flags          = MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-                         MSI_FLAG_PCI_MSIX | MSI_FLAG_MUST_REACTIVATE,
+                         MSI_FLAG_PCI_MSIX,
        .ops            = &pci_msi_domain_ops,
        .chip           = &pci_msi_controller,
        .handler        = handle_edge_irq,
@@ -167,8 +167,7 @@ static struct irq_chip pci_msi_ir_controller = {
 
 static struct msi_domain_info pci_msi_ir_domain_info = {
        .flags          = MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-                         MSI_FLAG_MULTI_PCI_MSI | MSI_FLAG_PCI_MSIX |
-                         MSI_FLAG_MUST_REACTIVATE,
+                         MSI_FLAG_MULTI_PCI_MSI | MSI_FLAG_PCI_MSIX,
        .ops            = &pci_msi_domain_ops,
        .chip           = &pci_msi_ir_controller,
        .handler        = handle_edge_irq,

Reply via email to