[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <812d9647-ad2e-95e9-aa99-b54ff7ebc52d@intel.com>
Date: Wed, 26 Aug 2020 09:50:27 -0700
From: "Dey, Megha" <megha.dey@...el.com>
To: Thomas Gleixner <tglx@...utronix.de>,
LKML <linux-kernel@...r.kernel.org>
CC: <x86@...nel.org>, Joerg Roedel <joro@...tes.org>,
<iommu@...ts.linux-foundation.org>, <linux-hyperv@...r.kernel.org>,
"Haiyang Zhang" <haiyangz@...rosoft.com>,
Jon Derrick <jonathan.derrick@...el.com>,
Lu Baolu <baolu.lu@...ux.intel.com>,
Wei Liu <wei.liu@...nel.org>,
"K. Y. Srinivasan" <kys@...rosoft.com>,
Stephen Hemminger <sthemmin@...rosoft.com>,
Steve Wahl <steve.wahl@....com>,
Dimitri Sivanich <sivanich@....com>,
"Russ Anderson" <rja@....com>, <linux-pci@...r.kernel.org>,
Bjorn Helgaas <bhelgaas@...gle.com>,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>,
<xen-devel@...ts.xenproject.org>, Juergen Gross <jgross@...e.com>,
"Boris Ostrovsky" <boris.ostrovsky@...cle.com>,
Stefano Stabellini <sstabellini@...nel.org>,
Marc Zyngier <maz@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Jason Gunthorpe <jgg@...lanox.com>,
Dave Jiang <dave.jiang@...el.com>,
Alex Williamson <alex.williamson@...hat.com>,
Jacob Pan <jacob.jun.pan@...el.com>,
Baolu Lu <baolu.lu@...el.com>,
Kevin Tian <kevin.tian@...el.com>,
Dan Williams <dan.j.williams@...el.com>
Subject: Re: [patch V2 15/46] x86/irq: Consolidate DMAR irq allocation
Hi Thomas,
On 8/26/2020 4:16 AM, Thomas Gleixner wrote:
> From: Thomas Gleixner <tglx@...utronix.de>
>
> None of the DMAR specific fields are required.
>
> Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
>
> ---
> arch/x86/include/asm/hw_irq.h | 6 ------
> arch/x86/kernel/apic/msi.c | 10 +++++-----
> 2 files changed, 5 insertions(+), 11 deletions(-)
>
> --- a/arch/x86/include/asm/hw_irq.h
> +++ b/arch/x86/include/asm/hw_irq.h
> @@ -83,12 +83,6 @@ struct irq_alloc_info {
> irq_hw_number_t msi_hwirq;
> };
> #endif
> -#ifdef CONFIG_DMAR_TABLE
> - struct {
> - int dmar_id;
> - void *dmar_data;
> - };
> -#endif
> #ifdef CONFIG_X86_UV
> struct {
> int uv_limit;
> --- a/arch/x86/kernel/apic/msi.c
> +++ b/arch/x86/kernel/apic/msi.c
> @@ -329,15 +329,15 @@ static struct irq_chip dmar_msi_controll
> static irq_hw_number_t dmar_msi_get_hwirq(struct msi_domain_info *info,
> msi_alloc_info_t *arg)
> {
> - return arg->dmar_id;
> + return arg->hwirq;
Shouldn't this return the arg->devid which gets set in dmar_alloc_hwirq?
-Megha
> }
>
> static int dmar_msi_init(struct irq_domain *domain,
> struct msi_domain_info *info, unsigned int virq,
> irq_hw_number_t hwirq, msi_alloc_info_t *arg)
> {
> - irq_domain_set_info(domain, virq, arg->dmar_id, info->chip, NULL,
> - handle_edge_irq, arg->dmar_data, "edge");
> + irq_domain_set_info(domain, virq, arg->devid, info->chip, NULL,
> + handle_edge_irq, arg->data, "edge");
>
> return 0;
> }
> @@ -384,8 +384,8 @@ int dmar_alloc_hwirq(int id, int node, v
>
> init_irq_alloc_info(&info, NULL);
> info.type = X86_IRQ_ALLOC_TYPE_DMAR;
> - info.dmar_id = id;
> - info.dmar_data = arg;
> + info.devid = id;
> + info.data = arg;
>
> return irq_domain_alloc_irqs(domain, 1, node, &info);
> }
>
>
Powered by blists - more mailing lists