Kees Cook
404f6aac9b
x86: Apply more __ro_after_init and const
...
Guided by grsecurity's analogous __read_only markings in arch/x86,
this applies several uses of __ro_after_init to structures that are
only updated during __init, and const for some structures that are
never updated. Additionally extends __init markings to some functions
that are only used during __init, and cleans up some missing C99 style
static initializers.
Signed-off-by: Kees Cook <keescook@chromium.org >
Cc: Andy Lutomirski <luto@amacapital.net >
Cc: Andy Lutomirski <luto@kernel.org >
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Brad Spengler <spender@grsecurity.net >
Cc: Brian Gerst <brgerst@gmail.com >
Cc: David Brown <david.brown@linaro.org >
Cc: Denys Vlasenko <dvlasenk@redhat.com >
Cc: Emese Revfy <re.emese@gmail.com >
Cc: H. Peter Anvin <hpa@zytor.com >
Cc: Josh Poimboeuf <jpoimboe@redhat.com >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mathias Krause <minipli@googlemail.com >
Cc: Michael Ellerman <mpe@ellerman.id.au >
Cc: PaX Team <pageexec@freemail.hu >
Cc: Peter Zijlstra <peterz@infradead.org >
Cc: Thomas Gleixner <tglx@linutronix.de >
Cc: kernel-hardening@lists.openwall.com
Link: http://lkml.kernel.org/r/20160808232906.GA29731@www.outflux.net
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2016-08-10 14:55:05 +02:00
Jake Oshins
c8f3e518d3
x86/irq: Export functions to allow MSI domains in modules
...
The Linux kernel already has the concept of IRQ domain, wherein a
component can expose a set of IRQs which are managed by a particular
interrupt controller chip or other subsystem. The PCI driver exposes
the notion of an IRQ domain for Message-Signaled Interrupts (MSI) from
PCI Express devices. This patch exposes the functions which are
necessary for creating a MSI IRQ domain within a module.
[ tglx: Split it into x86 and core irq parts ]
Signed-off-by: Jake Oshins <jakeo@microsoft.com >
Cc: gregkh@linuxfoundation.org
Cc: kys@microsoft.com
Cc: devel@linuxdriverproject.org
Cc: olaf@aepfle.de
Cc: apw@canonical.com
Cc: vkuznets@redhat.com
Cc: haiyangz@microsoft.com
Cc: marc.zyngier@arm.com
Cc: bhelgaas@google.com
Link: http://lkml.kernel.org/r/1449769983-12948-4-git-send-email-jakeo@microsoft.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-12-20 12:40:49 +01:00
Jiang Liu
ff96b4d033
x86/irq: Use accessor irq_data_get_irq_handler_data()
...
Use accessor function irq_data_get_irq_handler_data() to hide irq_desc
implementation details.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-07-13 21:22:46 +02:00
Feng Wu
a2f1c8bdc0
x86/irq/msi: Implement irq_set_vcpu_affinity for remapped MSI irqs
...
Implement irq_set_vcpu_affinity for pci_msi_ir_controller.
Signed-off-by: Feng Wu <feng.wu@intel.com >
Reviewed-by: Jiang Liu <jiang.liu@linux.intel.com >
Link: http://lkml.kernel.org/r/1432026437-16560-3-git-send-email-feng.wu@intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-05-19 15:51:17 +02:00
Sergey Senozhatsky
4a00c95dcd
x86/hpet: Pass proper pointer to irq_alloc_info
...
Fix the following oops:
hpet_msi_get_hwirq+0x1f/0x27
msi_domain_alloc+0x35/0xfe
? trace_hardirqs_on_caller+0x16c/0x188
irq_domain_alloc_irqs_recursive+0x51/0x95
__irq_domain_alloc_irqs+0x151/0x223
hpet_assign_irq+0x5d/0x68
hpet_msi_capability_lookup+0x121/0x1cb
? hpet_enable+0x2b4/0x2b4
hpet_late_init+0x5f/0xf2
? hpet_enable+0x2b4/0x2b4
do_one_initcall+0x184/0x199
kernel_init_freeable+0x1af/0x237
? rest_init+0x13a/0x13a
kernel_init+0xe/0xd4
ret_from_fork+0x3f/0x70
? rest_init+0x13a/0x13a
Since 3cb96f0c97
('x86/hpet: Enhance HPET IRQ to support
hierarchical irqdomains') hpet_msi_capability_lookup() uses
hpet_assign_irq(). The latter initializes irq_alloc_info on stack, but
passes a NULL pointer to irq_domain_alloc_irqs(), which causes a NULL
pointer dereference later in hpet_msi_get_hwirq().
Pass the pointer to the irq_alloc_info irq_domain_alloc_irqs().
Fixes: 3cb96f0c97
'x86/hpet: Enhance HPET IRQ to support hierarchical irqdomains'
Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com >
Reviewed-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com >
Link: http://lkml.kernel.org/r/20150512041444.GA1094@swordfish
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-05-13 09:50:24 +02:00
Jiang Liu
d746d1ebd3
x86/irq: Move irqdomain specific code into asm/irqdomain.h
...
Now we have dedicated asm/irqdomain.h, so move irqdomain specific
code into it.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Cc: Joerg Roedel <jroedel@suse.de >
Cc: Andy Lutomirski <luto@amacapital.net >
Link: http://lkml.kernel.org/r/1428978610-28986-33-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:55 +02:00
Jiang Liu
e390d895ae
x86/irq: Simplify MSI/DMAR/HPET implementation by using common code
...
Use common MSI interfaces instead of private implementations of the
same functionality to simplify DMAR/HPET driver implementation.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1428905519-23704-28-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:50 +02:00
Jiang Liu
62ac178083
x86/irq: Implement irq_chip.irq_write_msi_msg for MSI/DMAR/HPET irq_chips
...
Implement irq_chip.irq_write_msi_msg for MSI/DMAR/HPET irq_chips, they
will be used to replace duplicated code.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1428905519-23704-27-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:50 +02:00
Jiang Liu
90d84fe95d
x86/MSI: Replace msi_update_msg() with irq_chip_compose_msi_msg()
...
Function irq_chip_compose_msi_msg() can achieve the same goal as
msi_update_msg(), so remove msi_update_msg().
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1428905519-23704-26-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:50 +02:00
Jiang Liu
68682a2687
x86/MSI: Simplify the way to deal with remapped MSI interrupts
...
Simplify the way to deal with remapped MSI interrupts, so we can remove
irq_chip.irq_print_chip later. We simply change the name when the
setup detects that the parent domain is remapping.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1428905519-23704-25-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:50 +02:00
Jiang Liu
81dabe2e73
x86/irq: Normalize x86 irq_chip name
...
Some irq_chip names use underscore, others use hyphen. So normalize them
to use hyphen as separator.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1428905519-23704-24-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:50 +02:00
Jiang Liu
0921f1da64
x86/irq: Use hierarchical irqdomain to manage DMAR interrupts
...
Enhance DMAR code to support hierarchical irqdomain, it helps to make
the architecture more clear.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1428905519-23704-21-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:49 +02:00
Jiang Liu
34742db8ea
iommu/vt-d: Refine the interfaces to create IRQ for DMAR unit
...
Refine the interfaces to create IRQ for DMAR unit. It's a preparation
for converting DMAR IRQ to hierarchical irqdomain on x86.
It also moves dmar_alloc_hwirq()/dmar_free_hwirq() from irq_remapping.h
to dmar.h. They are not irq_remapping specific.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: iommu@lists.linux-foundation.org
Cc: Vinod Koul <vinod.koul@intel.com >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Fenghua Yu <fenghua.yu@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Link: http://lkml.kernel.org/r/1428905519-23704-20-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:49 +02:00
Jiang Liu
b1855c752e
x86/MSI: Clean up unused MSI related code and interfaces
...
Now MSI interrupt has been converted to new hierarchical irqdomain
interfaces, so remove legacy MSI related code and interfaces.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Cc: Yijing Wang <wangyijing@huawei.com >
Link: http://lkml.kernel.org/r/1428905519-23704-19-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:49 +02:00
Jiang Liu
80aa283364
x86/irq: Directly call native_compose_msi_msg() for DMAR IRQ
...
DMAR interrupt won't be remapped by interrupt remapping hardware,
so directly call native_compose_msi_msg() for DMAR IRQ to compose MSI
message data. This will help to simplify MSI code later.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1428905519-23704-15-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:49 +02:00
Jiang Liu
52f518a3a7
x86/MSI: Use hierarchical irqdomains to manage MSI interrupts
...
Enhance MSI code to support hierarchical irqdomains, it helps to make
the architecture more clear.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: iommu@lists.linux-foundation.org
Cc: Joerg Roedel <jroedel@suse.de >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Cc: Joerg Roedel <joro@8bytes.org >
Link: http://lkml.kernel.org/r/1428905519-23704-14-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:49 +02:00
Jiang Liu
3cb96f0c97
x86/hpet: Enhance HPET IRQ to support hierarchical irqdomains
...
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Cc: Andy Lutomirski <luto@amacapital.net >
Link: http://lkml.kernel.org/r/1428905519-23704-13-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:49 +02:00
Jiang Liu
a62b32cdd0
x86/dmar: Use new irqdomain interfaces to allocate/free IRQ
...
Use new irqdomain interfaces to allocate/free IRQ for DMAR and interrupt
remapping, so we can remove GENERIC_IRQ_LEGACY_ALLOC_HWIRQ later.
The private definitions of irq_alloc_hwirqs()/irq_free_hwirqs() are a
temporary solution, they will be removed once we have converted the
interrupt remapping driver to use irqdomain framework.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: iommu@lists.linux-foundation.org
Cc: Joerg Roedel <jroedel@suse.de >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Cc: Joerg Roedel <joro@8bytes.org >
Link: http://lkml.kernel.org/r/1428905519-23704-8-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:48 +02:00
Jiang Liu
4c8f9960ee
x86/MSI: Use new irqdomain interfaces to allocate/free IRQ
...
Use new irqdomain interfaces to allocate/free IRQ for PCI MSI, so we
can remove GENERIC_IRQ_LEGACY_ALLOC_HWIRQ later.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: David Cohen <david.a.cohen@linux.intel.com >
Cc: Sander Eikelenboom <linux@eikelenboom.it >
Cc: David Vrabel <david.vrabel@citrix.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Dimitri Sivanich <sivanich@sgi.com >
Link: http://lkml.kernel.org/r/1416894816-23245-5-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2015-04-24 15:36:48 +02:00
Jiang Liu
a978609112
x86, irq: Use helpers to access irq_cfg data structure associated with IRQ
...
Use helpers to access irq_cfg data structure associated with IRQ,
instead of accessing irq_data->chip_data directly. Later we can
rewrite those helpers to support hierarchy irqdomain.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Grant Likely <grant.likely@linaro.org >
Cc: Prarit Bhargava <prarit@redhat.com >
Link: http://lkml.kernel.org/r/1414397531-28254-17-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2014-12-16 14:08:17 +01:00
Jiang Liu
443809828c
x86, irq: Move PCI MSI related code from io_apic.c into msi.c
...
Create arch/x86/kernel/apic/msi.c to host MSI related code,
preparing for enabling hierarchy irqdomain.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com >
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com >
Cc: Tony Luck <tony.luck@intel.com >
Cc: Joerg Roedel <joro@8bytes.org >
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org >
Cc: Rafael J. Wysocki <rjw@rjwysocki.net >
Cc: Bjorn Helgaas <bhelgaas@google.com >
Cc: Randy Dunlap <rdunlap@infradead.org >
Cc: Yinghai Lu <yinghai@kernel.org >
Cc: Borislav Petkov <bp@alien8.de >
Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com >
Cc: Grant Likely <grant.likely@linaro.org >
Cc: Prarit Bhargava <prarit@redhat.com >
Link: http://lkml.kernel.org/r/1414397531-28254-12-git-send-email-jiang.liu@linux.intel.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
2014-12-16 14:08:17 +01:00