All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
To: Yongji Xie <xyjxie-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
Cc: alistair-Y4h6yKqj69EXC2x5gXVKYQ@public.gmane.org,
	nikunj-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org,
	zhong-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org,
	kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
	aik-sLpHqDYs0B2HXe+LvDLADg@public.gmane.org,
	linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	ruscur-3Su/lFKaw5ejKv3TNrM5DQ@public.gmane.org,
	will.deacon-5wv7dgnIgG8@public.gmane.org,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	warrier-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org,
	David.Laight-ZS65k/vG3HxXrIkS9f7CXA@public.gmane.org,
	paulus-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org,
	mpe-Gsx/Oe8HsFggBc27wqDAHg@public.gmane.org,
	benh-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org,
	bhelgaas-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org,
	linuxppc-dev-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
	gwshan-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org
Subject: Re: [PATCH 3/5] PCI: Set PCI_BUS_FLAGS_MSI_REMAP if MSI controller supports IRQ remapping
Date: Tue, 24 May 2016 16:04:34 -0500	[thread overview]
Message-ID: <20160524210434.GB16463@localhost> (raw)
In-Reply-To: <1461761010-5452-4-git-send-email-xyjxie-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>

On Wed, Apr 27, 2016 at 08:43:28PM +0800, Yongji Xie wrote:
> On ARM HW the capability of IRQ remapping is abstracted on
> MSI controller side. MSI_FLAG_IRQ_REMAPPING is used to advertise
> this [1].
> 
> To have a universal flag to test this capability for different
> archs on PCI side, we set PCI_BUS_FLAGS_MSI_REMAP for PCI buses
> when MSI_FLAG_IRQ_REMAPPING is set.
> 
> [1] http://www.spinics.net/lists/kvm/msg130256.html
> 
> Signed-off-by: Yongji Xie <xyjxie-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
> ---
>  drivers/pci/msi.c   |   12 ++++++++++++
>  drivers/pci/probe.c |    3 +++
>  include/linux/msi.h |    6 +++++-
>  3 files changed, 20 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
> index a080f44..1661cdf 100644
> --- a/drivers/pci/msi.c
> +++ b/drivers/pci/msi.c
> @@ -1134,6 +1134,18 @@ void *msi_desc_to_pci_sysdata(struct msi_desc *desc)
>  }
>  EXPORT_SYMBOL_GPL(msi_desc_to_pci_sysdata);
>  
> +void pci_bus_check_msi_remapping(struct pci_bus *bus,
> +				 struct irq_domain *domain)
> +{
> +#ifdef CONFIG_PCI_MSI_IRQ_DOMAIN
> +	struct msi_domain_info *info;
> +
> +	info = msi_get_domain_info(domain);
> +	if (info->flags & MSI_FLAG_IRQ_REMAPPING)
> +		bus->bus_flags |= PCI_BUS_FLAGS_MSI_REMAP;
> +#endif
> +}

Functions named "check_foo" are a pet peeve of mine because the name
doesn't tell us anything about what the function *does*.  In this
case, we know it checks something about MSI remapping, but we don't
know whether we're checking whether it's enabled, disabled, or some
other property.

I'd prefer something like:

  int pci_bus_msi_isolated(struct pci_bus *bus, struct irq_domain *domain)
  {
    struct msi_domain_info *info;

    if (!domain)
      return 0;

    info = msi_get_domain_info(domain);
    if (info->flags & MSI_FLAG_IRQ_REMAPPING)
      return 1;

    return 0;
  }

  void pci_set_bus_msi_domain(struct pci_bus *bus)
  {
    ...
    if (b == bus && pci_bus_msi_isolated(bus, d))
      bus->bus_flags |= PCI_BUS_FLAGS_MSI_REMAP;

>  #ifdef CONFIG_PCI_MSI_IRQ_DOMAIN
>  /**
>   * pci_msi_domain_write_msg - Helper to write MSI message to PCI config space
> diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
> index 6d7ab9b..25cf1b1 100644
> --- a/drivers/pci/probe.c
> +++ b/drivers/pci/probe.c
> @@ -696,6 +696,9 @@ static void pci_set_bus_msi_domain(struct pci_bus *bus)
>  	if (!d)
>  		d = pci_host_bridge_msi_domain(b);
>  
> +	if (d && b == bus)
> +		pci_bus_check_msi_remapping(bus, d);
> +
>  	dev_set_msi_domain(&bus->dev, d);
>  }
>  
> diff --git a/include/linux/msi.h b/include/linux/msi.h
> index 03eda72..b4c649e 100644
> --- a/include/linux/msi.h
> +++ b/include/linux/msi.h
> @@ -15,6 +15,8 @@ extern int pci_msi_ignore_mask;
>  struct irq_data;
>  struct msi_desc;
>  struct pci_dev;
> +struct pci_bus;
> +struct irq_domain;
>  struct platform_msi_priv_data;
>  void __get_cached_msi_msg(struct msi_desc *entry, struct msi_msg *msg);
>  void get_cached_msi_msg(unsigned int irq, struct msi_msg *msg);
> @@ -155,6 +157,9 @@ void arch_restore_msi_irqs(struct pci_dev *dev);
>  void default_teardown_msi_irqs(struct pci_dev *dev);
>  void default_restore_msi_irqs(struct pci_dev *dev);
>  
> +void pci_bus_check_msi_remapping(struct pci_bus *bus,
> +				 struct irq_domain *domain);
> +
>  struct msi_controller {
>  	struct module *owner;
>  	struct device *dev;
> @@ -173,7 +178,6 @@ struct msi_controller {
>  #include <linux/irqhandler.h>
>  #include <asm/msi.h>
>  
> -struct irq_domain;
>  struct irq_domain_ops;
>  struct irq_chip;
>  struct device_node;
> -- 
> 1.7.9.5
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Bjorn Helgaas <helgaas@kernel.org>
To: Yongji Xie <xyjxie@linux.vnet.ibm.com>
Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-pci@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	iommu@lists.linux-foundation.org, alex.williamson@redhat.com,
	bhelgaas@google.com, aik@ozlabs.ru, benh@kernel.crashing.org,
	paulus@samba.org, mpe@ellerman.id.au, joro@8bytes.org,
	warrier@linux.vnet.ibm.com, zhong@linux.vnet.ibm.com,
	nikunj@linux.vnet.ibm.com, eric.auger@linaro.org,
	will.deacon@arm.com, gwshan@linux.vnet.ibm.com,
	David.Laight@ACULAB.COM, alistair@popple.id.au,
	ruscur@russell.cc
Subject: Re: [PATCH 3/5] PCI: Set PCI_BUS_FLAGS_MSI_REMAP if MSI controller supports IRQ remapping
Date: Tue, 24 May 2016 16:04:34 -0500	[thread overview]
Message-ID: <20160524210434.GB16463@localhost> (raw)
In-Reply-To: <1461761010-5452-4-git-send-email-xyjxie@linux.vnet.ibm.com>

On Wed, Apr 27, 2016 at 08:43:28PM +0800, Yongji Xie wrote:
> On ARM HW the capability of IRQ remapping is abstracted on
> MSI controller side. MSI_FLAG_IRQ_REMAPPING is used to advertise
> this [1].
> 
> To have a universal flag to test this capability for different
> archs on PCI side, we set PCI_BUS_FLAGS_MSI_REMAP for PCI buses
> when MSI_FLAG_IRQ_REMAPPING is set.
> 
> [1] http://www.spinics.net/lists/kvm/msg130256.html
> 
> Signed-off-by: Yongji Xie <xyjxie@linux.vnet.ibm.com>
> ---
>  drivers/pci/msi.c   |   12 ++++++++++++
>  drivers/pci/probe.c |    3 +++
>  include/linux/msi.h |    6 +++++-
>  3 files changed, 20 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
> index a080f44..1661cdf 100644
> --- a/drivers/pci/msi.c
> +++ b/drivers/pci/msi.c
> @@ -1134,6 +1134,18 @@ void *msi_desc_to_pci_sysdata(struct msi_desc *desc)
>  }
>  EXPORT_SYMBOL_GPL(msi_desc_to_pci_sysdata);
>  
> +void pci_bus_check_msi_remapping(struct pci_bus *bus,
> +				 struct irq_domain *domain)
> +{
> +#ifdef CONFIG_PCI_MSI_IRQ_DOMAIN
> +	struct msi_domain_info *info;
> +
> +	info = msi_get_domain_info(domain);
> +	if (info->flags & MSI_FLAG_IRQ_REMAPPING)
> +		bus->bus_flags |= PCI_BUS_FLAGS_MSI_REMAP;
> +#endif
> +}

Functions named "check_foo" are a pet peeve of mine because the name
doesn't tell us anything about what the function *does*.  In this
case, we know it checks something about MSI remapping, but we don't
know whether we're checking whether it's enabled, disabled, or some
other property.

I'd prefer something like:

  int pci_bus_msi_isolated(struct pci_bus *bus, struct irq_domain *domain)
  {
    struct msi_domain_info *info;

    if (!domain)
      return 0;

    info = msi_get_domain_info(domain);
    if (info->flags & MSI_FLAG_IRQ_REMAPPING)
      return 1;

    return 0;
  }

  void pci_set_bus_msi_domain(struct pci_bus *bus)
  {
    ...
    if (b == bus && pci_bus_msi_isolated(bus, d))
      bus->bus_flags |= PCI_BUS_FLAGS_MSI_REMAP;

>  #ifdef CONFIG_PCI_MSI_IRQ_DOMAIN
>  /**
>   * pci_msi_domain_write_msg - Helper to write MSI message to PCI config space
> diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c
> index 6d7ab9b..25cf1b1 100644
> --- a/drivers/pci/probe.c
> +++ b/drivers/pci/probe.c
> @@ -696,6 +696,9 @@ static void pci_set_bus_msi_domain(struct pci_bus *bus)
>  	if (!d)
>  		d = pci_host_bridge_msi_domain(b);
>  
> +	if (d && b == bus)
> +		pci_bus_check_msi_remapping(bus, d);
> +
>  	dev_set_msi_domain(&bus->dev, d);
>  }
>  
> diff --git a/include/linux/msi.h b/include/linux/msi.h
> index 03eda72..b4c649e 100644
> --- a/include/linux/msi.h
> +++ b/include/linux/msi.h
> @@ -15,6 +15,8 @@ extern int pci_msi_ignore_mask;
>  struct irq_data;
>  struct msi_desc;
>  struct pci_dev;
> +struct pci_bus;
> +struct irq_domain;
>  struct platform_msi_priv_data;
>  void __get_cached_msi_msg(struct msi_desc *entry, struct msi_msg *msg);
>  void get_cached_msi_msg(unsigned int irq, struct msi_msg *msg);
> @@ -155,6 +157,9 @@ void arch_restore_msi_irqs(struct pci_dev *dev);
>  void default_teardown_msi_irqs(struct pci_dev *dev);
>  void default_restore_msi_irqs(struct pci_dev *dev);
>  
> +void pci_bus_check_msi_remapping(struct pci_bus *bus,
> +				 struct irq_domain *domain);
> +
>  struct msi_controller {
>  	struct module *owner;
>  	struct device *dev;
> @@ -173,7 +178,6 @@ struct msi_controller {
>  #include <linux/irqhandler.h>
>  #include <asm/msi.h>
>  
> -struct irq_domain;
>  struct irq_domain_ops;
>  struct irq_chip;
>  struct device_node;
> -- 
> 1.7.9.5
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2016-05-24 21:04 UTC|newest]

Thread overview: 100+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-27 12:43 [PATCH 0/5] vfio-pci: Add support for mmapping MSI-X table Yongji Xie
2016-04-27 12:43 ` Yongji Xie
2016-04-27 12:43 ` [PATCH 1/5] PCI: Add a new PCI_BUS_FLAGS_MSI_REMAP flag Yongji Xie
2016-05-24 20:55   ` Bjorn Helgaas
2016-05-25  5:46     ` Yongji Xie
2016-05-25  5:46     ` Yongji Xie
2016-05-25  5:46     ` Yongji Xie
2016-05-25  5:46     ` Yongji Xie
2016-05-25  5:46     ` Yongji Xie
2016-05-25  5:46       ` Yongji Xie
2016-05-25  5:46     ` Yongji Xie
2016-04-27 12:43 ` [PATCH 2/5] iommu: Set PCI_BUS_FLAGS_MSI_REMAP if IOMMU have capability of IRQ remapping Yongji Xie
2016-05-24 21:11   ` Bjorn Helgaas
2016-05-25  5:54     ` Yongji Xie
2016-05-25  5:54     ` Yongji Xie
2016-05-25  5:54     ` Yongji Xie
     [not found]       ` <201605250554.u4P5sRqv014439-QbrlkLqkJHK1JOh/WJROsbgYzuMpulrC0E9HWUfgJXw@public.gmane.org>
2016-05-26  3:48         ` Bjorn Helgaas
2016-05-26  3:48           ` Bjorn Helgaas
2016-05-25  5:54     ` Yongji Xie
2016-05-25  5:54     ` Yongji Xie
2016-05-25  5:54       ` Yongji Xie
2016-05-25  5:54     ` Yongji Xie
2016-04-27 12:43 ` [PATCH 3/5] PCI: Set PCI_BUS_FLAGS_MSI_REMAP if MSI controller supports " Yongji Xie
     [not found]   ` <1461761010-5452-4-git-send-email-xyjxie-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-05-24 21:04     ` Bjorn Helgaas [this message]
2016-05-24 21:04       ` Bjorn Helgaas
2016-05-25  5:48       ` Yongji Xie
2016-05-25  5:48       ` Yongji Xie
2016-05-25  5:48       ` Yongji Xie
2016-05-25  5:48       ` Yongji Xie
2016-05-25  5:48       ` Yongji Xie
2016-05-25  5:48         ` Yongji Xie
2016-05-25  5:48       ` Yongji Xie
     [not found] ` <1461761010-5452-1-git-send-email-xyjxie-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-04-27 12:43   ` [PATCH 4/5] pci-ioda: Set PCI_BUS_FLAGS_MSI_REMAP for IODA host bridge Yongji Xie
2016-04-27 12:43     ` Yongji Xie
     [not found]     ` <1461761010-5452-5-git-send-email-xyjxie-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-05-06  6:34       ` Alexey Kardashevskiy
2016-05-06  6:34         ` Alexey Kardashevskiy
2016-04-27 12:43   ` [PATCH 5/5] vfio-pci: Allow to mmap MSI-X table if interrupt remapping is supported Yongji Xie
2016-04-27 12:43     ` Yongji Xie
2016-05-03  5:34     ` Tian, Kevin
2016-05-03  5:34       ` Tian, Kevin
     [not found]       ` <AADFC41AFE54684AB9EE6CBC0274A5D15F842512-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-05-03  6:08         ` Yongji Xie
2016-05-03  6:08           ` Yongji Xie
2016-05-03  6:22           ` Tian, Kevin
2016-05-03  6:22             ` Tian, Kevin
     [not found]             ` <AADFC41AFE54684AB9EE6CBC0274A5D15F842653-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-05-03  7:34               ` Yongji Xie
2016-05-03  7:34                 ` Yongji Xie
     [not found]                 ` <e064a6a7-a8dc-f71f-1725-f31e03581b8d-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-05-05  9:36                   ` Tian, Kevin
2016-05-05  9:36                     ` Tian, Kevin
2016-05-05  9:36                     ` Tian, Kevin
     [not found]                     ` <AADFC41AFE54684AB9EE6CBC0274A5D15F847150-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-05-05  9:54                       ` David Laight
2016-05-05  9:54                         ` David Laight
2016-05-05  9:54                         ` David Laight
     [not found]                         ` <063D6719AE5E284EB5DD2968C1650D6D5F4B52B5-VkEWCZq2GCInGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
2016-05-05 11:42                           ` Yongji Xie
2016-05-05 11:42                             ` Yongji Xie
2016-05-05 12:15                             ` Tian, Kevin
2016-05-05 12:15                               ` Tian, Kevin
     [not found]                               ` <AADFC41AFE54684AB9EE6CBC0274A5D15F8474A4-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-05-05 13:28                                 ` Yongji Xie
2016-05-05 13:28                                   ` Yongji Xie
2016-05-05 15:05                               ` Alex Williamson
2016-05-05 15:05                                 ` Alex Williamson
2016-05-05 15:05                                 ` Alex Williamson
     [not found]                                 ` <20160505090513.56886c12-1yVPhWWZRC1BDLzU/O5InQ@public.gmane.org>
2016-05-06  6:35                                   ` Alexey Kardashevskiy
2016-05-06  6:35                                     ` Alexey Kardashevskiy
     [not found]                                     ` <fa5555df-b8d2-70ea-e9af-81336c431a67-sLpHqDYs0B2HXe+LvDLADg@public.gmane.org>
2016-05-06 16:54                                       ` Alex Williamson
2016-05-06 16:54                                         ` Alex Williamson
2016-05-11  6:29                                   ` Tian, Kevin
2016-05-11  6:29                                     ` Tian, Kevin
2016-05-11  6:29                                     ` Tian, Kevin
     [not found]                                     ` <AADFC41AFE54684AB9EE6CBC0274A5D15F84EEBA-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-05-11 15:53                                       ` Alex Williamson
2016-05-11 15:53                                         ` Alex Williamson
     [not found]                                         ` <20160511095331.18436241-1yVPhWWZRC1BDLzU/O5InQ@public.gmane.org>
2016-05-12  1:19                                           ` Tian, Kevin
2016-05-12  1:19                                             ` Tian, Kevin
2016-05-12  1:19                                             ` Tian, Kevin
     [not found]                                             ` <AADFC41AFE54684AB9EE6CBC0274A5D15F850046-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-05-12  2:20                                               ` Alex Williamson
2016-05-12  2:20                                                 ` Alex Williamson
     [not found]                                                 ` <20160511202042.77593861-1yVPhWWZRC1BDLzU/O5InQ@public.gmane.org>
2016-05-12  4:53                                                   ` Tian, Kevin
2016-05-12  4:53                                                     ` Tian, Kevin
2016-05-12  4:53                                                     ` Tian, Kevin
2016-05-12 17:47                                                     ` Alex Williamson
2016-05-12 17:47                                                       ` Alex Williamson
2016-05-12 17:47                                                       ` Alex Williamson
2016-05-13  2:33                                                       ` Tian, Kevin
2016-05-13  2:33                                                         ` Tian, Kevin
2016-05-13  2:33                                                         ` Tian, Kevin
2016-05-13  2:33                                                         ` Tian, Kevin
2016-05-13  5:32                                                         ` Alex Williamson
2016-05-13  5:32                                                           ` Alex Williamson
2016-05-13  5:32                                                           ` Alex Williamson
     [not found]                                                           ` <20160512233246.347b8b3c-1yVPhWWZRC1BDLzU/O5InQ@public.gmane.org>
2016-05-13  6:50                                                             ` Tian, Kevin
2016-05-13  6:50                                                               ` Tian, Kevin
2016-05-13  6:50                                                               ` Tian, Kevin
     [not found]                                                               ` <AADFC41AFE54684AB9EE6CBC0274A5D15F854287-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-05-13 16:42                                                                 ` Alex Williamson
2016-05-13 16:42                                                                   ` Alex Williamson
2016-05-13  9:16                                                             ` David Laight
2016-05-13  9:16                                                               ` David Laight
2016-05-13  9:16                                                               ` David Laight
2016-05-13  2:36                                                       ` Tian, Kevin
2016-05-13  2:36                                                         ` Tian, Kevin
2016-05-13  2:36                                                         ` Tian, Kevin
2016-05-05 11:44                     ` Yongji Xie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160524210434.GB16463@localhost \
    --to=helgaas-dgejt+ai2ygdnm+yrofe0a@public.gmane.org \
    --cc=David.Laight-ZS65k/vG3HxXrIkS9f7CXA@public.gmane.org \
    --cc=aik-sLpHqDYs0B2HXe+LvDLADg@public.gmane.org \
    --cc=alistair-Y4h6yKqj69EXC2x5gXVKYQ@public.gmane.org \
    --cc=benh-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org \
    --cc=bhelgaas-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    --cc=eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=gwshan-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linuxppc-dev-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
    --cc=mpe-Gsx/Oe8HsFggBc27wqDAHg@public.gmane.org \
    --cc=nikunj-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=paulus-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org \
    --cc=ruscur-3Su/lFKaw5ejKv3TNrM5DQ@public.gmane.org \
    --cc=warrier-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=will.deacon-5wv7dgnIgG8@public.gmane.org \
    --cc=xyjxie-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=zhong-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.