linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning
@ 2024-07-23 13:27 Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 01/15] " Marek Vasut
                   ` (17 more replies)
  0 siblings, 18 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Various PCIe controllers that mux MSIs onto single IRQ line produce these
"IRQ%d: set affinity failed" warnings when entering suspend. Remove the
.irq_set_affinity callbacks and make sure they are NULL in all affected
controllers, so this warning in kernel/irq/msi.c is not triggered.

This has been compile-tested only on all but the R-Car PCI controller.

The clean ups are done per-driver so they can be easily reverted in case
they break something.

Marek Vasut (15):
  genirq/msi: Silence set affinity failed warning
  PCI: aardvark: Silence set affinity failed warning
  PCI: altera-msi: Silence set affinity failed warning
  PCI: brcmstb: Silence set affinity failed warning
  PCI: dwc: Silence set affinity failed warning
  PCI: mediatek-gen3: Silence set affinity failed warning
  PCI: mediatek: Silence set affinity failed warning
  PCI: mobiveil: Silence set affinity failed warning
  PCI: plda: Silence set affinity failed warning
  PCI: rcar-host: Silence set affinity failed warning
  PCI: tegra: Silence set affinity failed warning
  PCI: vmd: Silence set affinity failed warning
  PCI: xilinx-nwl: Silence set affinity failed warning
  PCI: xilinx-xdma: Silence set affinity failed warning
  PCI: xilinx: Silence set affinity failed warning

 drivers/pci/controller/dwc/pci-keystone.c           |  7 -------
 drivers/pci/controller/dwc/pcie-designware-host.c   | 12 +++---------
 .../pci/controller/mobiveil/pcie-mobiveil-host.c    | 11 ++---------
 drivers/pci/controller/pci-aardvark.c               | 10 ++--------
 drivers/pci/controller/pci-tegra.c                  | 10 ++--------
 drivers/pci/controller/pcie-altera-msi.c            | 11 ++---------
 drivers/pci/controller/pcie-brcmstb.c               | 11 ++---------
 drivers/pci/controller/pcie-mediatek-gen3.c         | 13 +++----------
 drivers/pci/controller/pcie-mediatek.c              | 11 ++---------
 drivers/pci/controller/pcie-rcar-host.c             | 10 ++--------
 drivers/pci/controller/pcie-xilinx-dma-pl.c         | 11 ++---------
 drivers/pci/controller/pcie-xilinx-nwl.c            | 11 ++---------
 drivers/pci/controller/pcie-xilinx.c                |  9 ++-------
 drivers/pci/controller/plda/pcie-plda-host.c        | 11 ++---------
 drivers/pci/controller/vmd.c                        | 13 +------------
 include/linux/msi.h                                 |  2 ++
 kernel/irq/msi.c                                    |  2 +-
 17 files changed, 32 insertions(+), 133 deletions(-)

Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org

-- 
2.43.0



^ permalink raw reply	[flat|nested] 27+ messages in thread

* [PATCH v4 01/15] genirq/msi: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 22:54   ` Damien Le Moal
  2024-07-23 13:27 ` [PATCH v4 02/15] PCI: aardvark: " Marek Vasut
                   ` (16 subsequent siblings)
  17 siblings, 1 reply; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Various PCIe controllers that mux MSIs onto single IRQ line produce these
"IRQ%d: set affinity failed" warnings when entering suspend. This has been
discussed before [1] [2] and an example test case is included at the end
of this commit message.

Controller drivers which create MSI IRQ domain with MSI_FLAG_USE_DEF_CHIP_OPS
flag set and which do not override the .irq_set_affinity irqchip callback get
assigned default .irq_set_affinity = msi_domain_set_affinity() callback. That
is not desired on controllers where it is not possible to set affinity of each
MSI IRQ line to a specific CPU core due to hardware limitation.

Introduce dedicated flag MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity
unset in case the controller driver did not assign the callback. This way, the
migrate_one_irq() code in cpuhotplug.c can exit right away, without printing
the aforementioned warning. The .irq_set_affinity implementations which only
return -EINVAL can be removed from multiple controller drivers.

```
$ grep 25 /proc/interrupts
 25:   0 0 0 0 0 0 0 0   PCIe MSI   0   Edge   PCIe PME

$ echo core > /sys/power/pm_test ; echo mem > /sys/power/state
...
Disabling non-boot CPUs ...
IRQ25: set affinity failed(-22). <---------- This is being silenced here
psci: CPU7 killed (polled 4 ms)
...
```

[1] https://lore.kernel.org/all/d4a6eea3c5e33a3a4056885419df95a7@kernel.org/
[2] https://lore.kernel.org/all/5f4947b18bf381615a37aa81c2242477@kernel.org/

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V2: - Introduce MSI_FLAG_NO_AFFINITY to inhibit assignment
      of msi_domain_set_affinity()
V3: - Replace MSI_FLAG_USE_DEF_CHIP_OPS_NOAFF with MSI_FLAG_NO_AFFINITY
      and make MSI_FLAG_NO_AFFINITY into separate flag
    - Update commit message
    - Rebase on current linux-next
    - Use genirq/msi: subject prefix which is likely better fit now
    - Split off R-Car part of the patch
V4: No change
---
 include/linux/msi.h | 2 ++
 kernel/irq/msi.c    | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/include/linux/msi.h b/include/linux/msi.h
index 9449797638255..b10093c4d00ea 100644
--- a/include/linux/msi.h
+++ b/include/linux/msi.h
@@ -554,6 +554,8 @@ enum {
 	MSI_FLAG_MSIX_CONTIGUOUS	= (1 << 19),
 	/* PCI/MSI-X vectors can be dynamically allocated/freed post MSI-X enable */
 	MSI_FLAG_PCI_MSIX_ALLOC_DYN	= (1 << 20),
+	/* PCI MSIs cannot be steered separately to CPU cores */
+	MSI_FLAG_NO_AFFINITY		= (1 << 21),
 };
 
 /**
diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c
index 5fa0547ece0c4..ca6e2ae6d6fc0 100644
--- a/kernel/irq/msi.c
+++ b/kernel/irq/msi.c
@@ -832,7 +832,7 @@ static void msi_domain_update_chip_ops(struct msi_domain_info *info)
 	struct irq_chip *chip = info->chip;
 
 	BUG_ON(!chip || !chip->irq_mask || !chip->irq_unmask);
-	if (!chip->irq_set_affinity)
+	if (!chip->irq_set_affinity && !(info->flags & MSI_FLAG_NO_AFFINITY))
 		chip->irq_set_affinity = msi_domain_set_affinity;
 }
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 02/15] PCI: aardvark: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 01/15] " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 03/15] PCI: altera-msi: " Marek Vasut
                   ` (15 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pci-aardvark.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/pci/controller/pci-aardvark.c b/drivers/pci/controller/pci-aardvark.c
index 8b3e1a079cf3b..ea9b72e0269d4 100644
--- a/drivers/pci/controller/pci-aardvark.c
+++ b/drivers/pci/controller/pci-aardvark.c
@@ -1304,12 +1304,6 @@ static void advk_msi_irq_compose_msi_msg(struct irq_data *data,
 	msg->data = data->hwirq;
 }
 
-static int advk_msi_set_affinity(struct irq_data *irq_data,
-				 const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void advk_msi_irq_mask(struct irq_data *d)
 {
 	struct advk_pcie *pcie = d->domain->host_data;
@@ -1353,7 +1347,6 @@ static void advk_msi_top_irq_unmask(struct irq_data *d)
 static struct irq_chip advk_msi_bottom_irq_chip = {
 	.name			= "MSI",
 	.irq_compose_msi_msg	= advk_msi_irq_compose_msi_msg,
-	.irq_set_affinity	= advk_msi_set_affinity,
 	.irq_mask		= advk_msi_irq_mask,
 	.irq_unmask		= advk_msi_irq_unmask,
 };
@@ -1451,7 +1444,8 @@ static struct irq_chip advk_msi_irq_chip = {
 
 static struct msi_domain_info advk_msi_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_NO_AFFINITY | MSI_FLAG_MULTI_PCI_MSI |
+		  MSI_FLAG_PCI_MSIX,
 	.chip	= &advk_msi_irq_chip,
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 03/15] PCI: altera-msi: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 01/15] " Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 02/15] PCI: aardvark: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 04/15] PCI: brcmstb: " Marek Vasut
                   ` (14 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pcie-altera-msi.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/controller/pcie-altera-msi.c b/drivers/pci/controller/pcie-altera-msi.c
index 16336a525c167..e36a6e158d23c 100644
--- a/drivers/pci/controller/pcie-altera-msi.c
+++ b/drivers/pci/controller/pcie-altera-msi.c
@@ -81,8 +81,8 @@ static struct irq_chip altera_msi_irq_chip = {
 };
 
 static struct msi_domain_info altera_msi_domain_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		     MSI_FLAG_PCI_MSIX),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX,
 	.chip	= &altera_msi_irq_chip,
 };
 
@@ -99,16 +99,9 @@ static void altera_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 		(int)data->hwirq, msg->address_hi, msg->address_lo);
 }
 
-static int altera_msi_set_affinity(struct irq_data *irq_data,
-				   const struct cpumask *mask, bool force)
-{
-	 return -EINVAL;
-}
-
 static struct irq_chip altera_msi_bottom_irq_chip = {
 	.name			= "Altera MSI",
 	.irq_compose_msi_msg	= altera_compose_msi_msg,
-	.irq_set_affinity	= altera_msi_set_affinity,
 };
 
 static int altera_irq_domain_alloc(struct irq_domain *domain, unsigned int virq,
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 04/15] PCI: brcmstb: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (2 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 03/15] PCI: altera-msi: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-24  0:00   ` Florian Fainelli
  2024-07-23 13:27 ` [PATCH v4 05/15] PCI: dwc: " Marek Vasut
                   ` (13 subsequent siblings)
  17 siblings, 1 reply; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pcie-brcmstb.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c
index c08683febdd40..b9de3acec3753 100644
--- a/drivers/pci/controller/pcie-brcmstb.c
+++ b/drivers/pci/controller/pcie-brcmstb.c
@@ -445,8 +445,8 @@ static struct irq_chip brcm_msi_irq_chip = {
 };
 
 static struct msi_domain_info brcm_msi_domain_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		   MSI_FLAG_MULTI_PCI_MSI),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_MULTI_PCI_MSI,
 	.chip	= &brcm_msi_irq_chip,
 };
 
@@ -484,12 +484,6 @@ static void brcm_msi_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 	msg->data = (0xffff & PCIE_MISC_MSI_DATA_CONFIG_VAL_32) | data->hwirq;
 }
 
-static int brcm_msi_set_affinity(struct irq_data *irq_data,
-				 const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void brcm_msi_ack_irq(struct irq_data *data)
 {
 	struct brcm_msi *msi = irq_data_get_irq_chip_data(data);
@@ -502,7 +496,6 @@ static void brcm_msi_ack_irq(struct irq_data *data)
 static struct irq_chip brcm_msi_bottom_irq_chip = {
 	.name			= "BRCM STB MSI",
 	.irq_compose_msi_msg	= brcm_msi_compose_msi_msg,
-	.irq_set_affinity	= brcm_msi_set_affinity,
 	.irq_ack                = brcm_msi_ack_irq,
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 05/15] PCI: dwc: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (3 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 04/15] PCI: brcmstb: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 22:53   ` Damien Le Moal
  2024-07-24 13:47   ` Manivannan Sadhasivam
  2024-07-23 13:27 ` [PATCH v4 06/15] PCI: mediatek-gen3: " Marek Vasut
                   ` (12 subsequent siblings)
  17 siblings, 2 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/dwc/pci-keystone.c         |  7 -------
 drivers/pci/controller/dwc/pcie-designware-host.c | 12 +++---------
 2 files changed, 3 insertions(+), 16 deletions(-)

diff --git a/drivers/pci/controller/dwc/pci-keystone.c b/drivers/pci/controller/dwc/pci-keystone.c
index 52c6420ae2003..ce9d9e0a52609 100644
--- a/drivers/pci/controller/dwc/pci-keystone.c
+++ b/drivers/pci/controller/dwc/pci-keystone.c
@@ -189,12 +189,6 @@ static void ks_pcie_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 		(int)data->hwirq, msg->address_hi, msg->address_lo);
 }
 
-static int ks_pcie_msi_set_affinity(struct irq_data *irq_data,
-				    const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void ks_pcie_msi_mask(struct irq_data *data)
 {
 	struct dw_pcie_rp *pp = irq_data_get_irq_chip_data(data);
@@ -247,7 +241,6 @@ static struct irq_chip ks_pcie_msi_irq_chip = {
 	.name = "KEYSTONE-PCI-MSI",
 	.irq_ack = ks_pcie_msi_irq_ack,
 	.irq_compose_msi_msg = ks_pcie_compose_msi_msg,
-	.irq_set_affinity = ks_pcie_msi_set_affinity,
 	.irq_mask = ks_pcie_msi_mask,
 	.irq_unmask = ks_pcie_msi_unmask,
 };
diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
index a0822d5371bc5..3e41865c72904 100644
--- a/drivers/pci/controller/dwc/pcie-designware-host.c
+++ b/drivers/pci/controller/dwc/pcie-designware-host.c
@@ -48,8 +48,9 @@ static struct irq_chip dw_pcie_msi_irq_chip = {
 };
 
 static struct msi_domain_info dw_pcie_msi_domain_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		   MSI_FLAG_PCI_MSIX | MSI_FLAG_MULTI_PCI_MSI),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX |
+		  MSI_FLAG_MULTI_PCI_MSI,
 	.chip	= &dw_pcie_msi_irq_chip,
 };
 
@@ -116,12 +117,6 @@ static void dw_pci_setup_msi_msg(struct irq_data *d, struct msi_msg *msg)
 		(int)d->hwirq, msg->address_hi, msg->address_lo);
 }
 
-static int dw_pci_msi_set_affinity(struct irq_data *d,
-				   const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void dw_pci_bottom_mask(struct irq_data *d)
 {
 	struct dw_pcie_rp *pp = irq_data_get_irq_chip_data(d);
@@ -177,7 +172,6 @@ static struct irq_chip dw_pci_msi_bottom_irq_chip = {
 	.name = "DWPCI-MSI",
 	.irq_ack = dw_pci_bottom_ack,
 	.irq_compose_msi_msg = dw_pci_setup_msi_msg,
-	.irq_set_affinity = dw_pci_msi_set_affinity,
 	.irq_mask = dw_pci_bottom_mask,
 	.irq_unmask = dw_pci_bottom_unmask,
 };
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 06/15] PCI: mediatek-gen3: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (4 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 05/15] PCI: dwc: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-24  6:27   ` Jianjun Wang (王建军)
  2024-07-23 13:27 ` [PATCH v4 07/15] PCI: mediatek: " Marek Vasut
                   ` (11 subsequent siblings)
  17 siblings, 1 reply; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pcie-mediatek-gen3.c | 13 +++----------
 1 file changed, 3 insertions(+), 10 deletions(-)

diff --git a/drivers/pci/controller/pcie-mediatek-gen3.c b/drivers/pci/controller/pcie-mediatek-gen3.c
index b7e8e24f6a408..392b6ef3473f2 100644
--- a/drivers/pci/controller/pcie-mediatek-gen3.c
+++ b/drivers/pci/controller/pcie-mediatek-gen3.c
@@ -424,12 +424,6 @@ static int mtk_pcie_startup_port(struct mtk_gen3_pcie *pcie)
 	return 0;
 }
 
-static int mtk_pcie_set_affinity(struct irq_data *data,
-				 const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void mtk_pcie_msi_irq_mask(struct irq_data *data)
 {
 	pci_msi_mask_irq(data);
@@ -450,8 +444,9 @@ static struct irq_chip mtk_msi_irq_chip = {
 };
 
 static struct msi_domain_info mtk_msi_domain_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		   MSI_FLAG_PCI_MSIX | MSI_FLAG_MULTI_PCI_MSI),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX |
+		  MSI_FLAG_MULTI_PCI_MSI,
 	.chip	= &mtk_msi_irq_chip,
 };
 
@@ -517,7 +512,6 @@ static struct irq_chip mtk_msi_bottom_irq_chip = {
 	.irq_mask		= mtk_msi_bottom_irq_mask,
 	.irq_unmask		= mtk_msi_bottom_irq_unmask,
 	.irq_compose_msi_msg	= mtk_compose_msi_msg,
-	.irq_set_affinity	= mtk_pcie_set_affinity,
 	.name			= "MSI",
 };
 
@@ -618,7 +612,6 @@ static struct irq_chip mtk_intx_irq_chip = {
 	.irq_mask		= mtk_intx_mask,
 	.irq_unmask		= mtk_intx_unmask,
 	.irq_eoi		= mtk_intx_eoi,
-	.irq_set_affinity	= mtk_pcie_set_affinity,
 	.name			= "INTx",
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 07/15] PCI: mediatek: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (5 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 06/15] PCI: mediatek-gen3: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-24  6:25   ` Jianjun Wang (王建军)
  2024-07-23 13:27 ` [PATCH v4 08/15] PCI: mobiveil: " Marek Vasut
                   ` (10 subsequent siblings)
  17 siblings, 1 reply; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pcie-mediatek.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/controller/pcie-mediatek.c b/drivers/pci/controller/pcie-mediatek.c
index 7fc0d7709b7fb..9be3cebd862e2 100644
--- a/drivers/pci/controller/pcie-mediatek.c
+++ b/drivers/pci/controller/pcie-mediatek.c
@@ -407,12 +407,6 @@ static void mtk_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 		(int)data->hwirq, msg->address_hi, msg->address_lo);
 }
 
-static int mtk_msi_set_affinity(struct irq_data *irq_data,
-				const struct cpumask *mask, bool force)
-{
-	 return -EINVAL;
-}
-
 static void mtk_msi_ack_irq(struct irq_data *data)
 {
 	struct mtk_pcie_port *port = irq_data_get_irq_chip_data(data);
@@ -424,7 +418,6 @@ static void mtk_msi_ack_irq(struct irq_data *data)
 static struct irq_chip mtk_msi_bottom_irq_chip = {
 	.name			= "MTK MSI",
 	.irq_compose_msi_msg	= mtk_compose_msi_msg,
-	.irq_set_affinity	= mtk_msi_set_affinity,
 	.irq_ack		= mtk_msi_ack_irq,
 };
 
@@ -486,8 +479,8 @@ static struct irq_chip mtk_msi_irq_chip = {
 };
 
 static struct msi_domain_info mtk_msi_domain_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		   MSI_FLAG_PCI_MSIX),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX,
 	.chip	= &mtk_msi_irq_chip,
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 08/15] PCI: mobiveil: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (6 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 07/15] PCI: mediatek: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 09/15] PCI: plda: " Marek Vasut
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/mobiveil/pcie-mobiveil-host.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/controller/mobiveil/pcie-mobiveil-host.c b/drivers/pci/controller/mobiveil/pcie-mobiveil-host.c
index 32951f7d6d6d6..0e088e74155d3 100644
--- a/drivers/pci/controller/mobiveil/pcie-mobiveil-host.c
+++ b/drivers/pci/controller/mobiveil/pcie-mobiveil-host.c
@@ -360,8 +360,8 @@ static struct irq_chip mobiveil_msi_irq_chip = {
 };
 
 static struct msi_domain_info mobiveil_msi_domain_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		   MSI_FLAG_PCI_MSIX),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX,
 	.chip	= &mobiveil_msi_irq_chip,
 };
 
@@ -378,16 +378,9 @@ static void mobiveil_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 		(int)data->hwirq, msg->address_hi, msg->address_lo);
 }
 
-static int mobiveil_msi_set_affinity(struct irq_data *irq_data,
-				     const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static struct irq_chip mobiveil_msi_bottom_irq_chip = {
 	.name			= "Mobiveil MSI",
 	.irq_compose_msi_msg	= mobiveil_compose_msi_msg,
-	.irq_set_affinity	= mobiveil_msi_set_affinity,
 };
 
 static int mobiveil_irq_msi_domain_alloc(struct irq_domain *domain,
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 09/15] PCI: plda: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (7 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 08/15] PCI: mobiveil: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 10/15] PCI: rcar-host: " Marek Vasut
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/plda/pcie-plda-host.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/controller/plda/pcie-plda-host.c b/drivers/pci/controller/plda/pcie-plda-host.c
index a18923d7cea6e..8533dc618d45f 100644
--- a/drivers/pci/controller/plda/pcie-plda-host.c
+++ b/drivers/pci/controller/plda/pcie-plda-host.c
@@ -76,17 +76,10 @@ static void plda_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 		(int)data->hwirq, msg->address_hi, msg->address_lo);
 }
 
-static int plda_msi_set_affinity(struct irq_data *irq_data,
-				 const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static struct irq_chip plda_msi_bottom_irq_chip = {
 	.name = "PLDA MSI",
 	.irq_ack = plda_msi_bottom_irq_ack,
 	.irq_compose_msi_msg = plda_compose_msi_msg,
-	.irq_set_affinity = plda_msi_set_affinity,
 };
 
 static int plda_irq_msi_domain_alloc(struct irq_domain *domain,
@@ -146,8 +139,8 @@ static struct irq_chip plda_msi_irq_chip = {
 };
 
 static struct msi_domain_info plda_msi_domain_info = {
-	.flags = (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		  MSI_FLAG_PCI_MSIX),
+	.flags = MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		 MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX,
 	.chip = &plda_msi_irq_chip,
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 10/15] PCI: rcar-host: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (8 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 09/15] PCI: plda: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 11/15] PCI: tegra: " Marek Vasut
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V3: - New patch
V4: - Update subject prefix
---
 drivers/pci/controller/pcie-rcar-host.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/pci/controller/pcie-rcar-host.c b/drivers/pci/controller/pcie-rcar-host.c
index c01efc6ea64f6..3dd653f3d7841 100644
--- a/drivers/pci/controller/pcie-rcar-host.c
+++ b/drivers/pci/controller/pcie-rcar-host.c
@@ -658,11 +658,6 @@ static void rcar_msi_irq_unmask(struct irq_data *d)
 	spin_unlock_irqrestore(&msi->mask_lock, flags);
 }
 
-static int rcar_msi_set_affinity(struct irq_data *d, const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void rcar_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 {
 	struct rcar_msi *msi = irq_data_get_irq_chip_data(data);
@@ -678,7 +673,6 @@ static struct irq_chip rcar_msi_bottom_chip = {
 	.irq_ack		= rcar_msi_irq_ack,
 	.irq_mask		= rcar_msi_irq_mask,
 	.irq_unmask		= rcar_msi_irq_unmask,
-	.irq_set_affinity 	= rcar_msi_set_affinity,
 	.irq_compose_msi_msg	= rcar_compose_msi_msg,
 };
 
@@ -725,8 +719,8 @@ static const struct irq_domain_ops rcar_msi_domain_ops = {
 };
 
 static struct msi_domain_info rcar_msi_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		   MSI_FLAG_MULTI_PCI_MSI),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_MULTI_PCI_MSI,
 	.chip	= &rcar_msi_top_chip,
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 11/15] PCI: tegra: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (9 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 10/15] PCI: rcar-host: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 12/15] PCI: vmd: " Marek Vasut
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V3: - New patch
V4: No change
---
 drivers/pci/controller/pci-tegra.c | 10 ++--------
 1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/drivers/pci/controller/pci-tegra.c b/drivers/pci/controller/pci-tegra.c
index 038d974a318ea..d7517c3976e7f 100644
--- a/drivers/pci/controller/pci-tegra.c
+++ b/drivers/pci/controller/pci-tegra.c
@@ -1629,11 +1629,6 @@ static void tegra_msi_irq_unmask(struct irq_data *d)
 	spin_unlock_irqrestore(&msi->mask_lock, flags);
 }
 
-static int tegra_msi_set_affinity(struct irq_data *d, const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void tegra_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 {
 	struct tegra_msi *msi = irq_data_get_irq_chip_data(data);
@@ -1648,7 +1643,6 @@ static struct irq_chip tegra_msi_bottom_chip = {
 	.irq_ack		= tegra_msi_irq_ack,
 	.irq_mask		= tegra_msi_irq_mask,
 	.irq_unmask		= tegra_msi_irq_unmask,
-	.irq_set_affinity 	= tegra_msi_set_affinity,
 	.irq_compose_msi_msg	= tegra_compose_msi_msg,
 };
 
@@ -1697,8 +1691,8 @@ static const struct irq_domain_ops tegra_msi_domain_ops = {
 };
 
 static struct msi_domain_info tegra_msi_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		   MSI_FLAG_PCI_MSIX),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX,
 	.chip	= &tegra_msi_top_chip,
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 12/15] PCI: vmd: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (10 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 11/15] PCI: tegra: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-08-05 14:30   ` Nirmal Patel
  2024-07-23 13:27 ` [PATCH v4 13/15] PCI: xilinx-nwl: " Marek Vasut
                   ` (5 subsequent siblings)
  17 siblings, 1 reply; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/vmd.c | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/pci/controller/vmd.c b/drivers/pci/controller/vmd.c
index a726de0af011f..bc849b0d9e8dc 100644
--- a/drivers/pci/controller/vmd.c
+++ b/drivers/pci/controller/vmd.c
@@ -204,22 +204,11 @@ static void vmd_irq_disable(struct irq_data *data)
 	raw_spin_unlock_irqrestore(&list_lock, flags);
 }
 
-/*
- * XXX: Stubbed until we develop acceptable way to not create conflicts with
- * other devices sharing the same vector.
- */
-static int vmd_irq_set_affinity(struct irq_data *data,
-				const struct cpumask *dest, bool force)
-{
-	return -EINVAL;
-}
-
 static struct irq_chip vmd_msi_controller = {
 	.name			= "VMD-MSI",
 	.irq_enable		= vmd_irq_enable,
 	.irq_disable		= vmd_irq_disable,
 	.irq_compose_msi_msg	= vmd_compose_msi_msg,
-	.irq_set_affinity	= vmd_irq_set_affinity,
 };
 
 static irq_hw_number_t vmd_get_hwirq(struct msi_domain_info *info,
@@ -326,7 +315,7 @@ static struct msi_domain_ops vmd_msi_domain_ops = {
 
 static struct msi_domain_info vmd_msi_domain_info = {
 	.flags		= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-			  MSI_FLAG_PCI_MSIX,
+			  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX,
 	.ops		= &vmd_msi_domain_ops,
 	.chip		= &vmd_msi_controller,
 };
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 13/15] PCI: xilinx-nwl: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (11 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 12/15] PCI: vmd: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 14/15] PCI: xilinx-xdma: " Marek Vasut
                   ` (4 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pcie-xilinx-nwl.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/controller/pcie-xilinx-nwl.c b/drivers/pci/controller/pcie-xilinx-nwl.c
index 0408f4d612b5a..d5615cf8563f4 100644
--- a/drivers/pci/controller/pcie-xilinx-nwl.c
+++ b/drivers/pci/controller/pcie-xilinx-nwl.c
@@ -425,8 +425,8 @@ static struct irq_chip nwl_msi_irq_chip = {
 };
 
 static struct msi_domain_info nwl_msi_domain_info = {
-	.flags = (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		  MSI_FLAG_MULTI_PCI_MSI),
+	.flags = MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		 MSI_FLAG_NO_AFFINITY | MSI_FLAG_MULTI_PCI_MSI,
 	.chip = &nwl_msi_irq_chip,
 };
 #endif
@@ -441,16 +441,9 @@ static void nwl_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 	msg->data = data->hwirq;
 }
 
-static int nwl_msi_set_affinity(struct irq_data *irq_data,
-				const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static struct irq_chip nwl_irq_chip = {
 	.name = "Xilinx MSI",
 	.irq_compose_msi_msg = nwl_compose_msi_msg,
-	.irq_set_affinity = nwl_msi_set_affinity,
 };
 
 static int nwl_irq_domain_alloc(struct irq_domain *domain, unsigned int virq,
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 14/15] PCI: xilinx-xdma: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (12 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 13/15] PCI: xilinx-nwl: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-23 13:27 ` [PATCH v4 15/15] PCI: xilinx: " Marek Vasut
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pcie-xilinx-dma-pl.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/pci/controller/pcie-xilinx-dma-pl.c b/drivers/pci/controller/pcie-xilinx-dma-pl.c
index 5be5dfd8398f2..ca9044d694dad 100644
--- a/drivers/pci/controller/pcie-xilinx-dma-pl.c
+++ b/drivers/pci/controller/pcie-xilinx-dma-pl.c
@@ -355,8 +355,8 @@ static struct irq_chip xilinx_msi_irq_chip = {
 };
 
 static struct msi_domain_info xilinx_msi_domain_info = {
-	.flags = (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
-		MSI_FLAG_MULTI_PCI_MSI),
+	.flags = MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		 MSI_FLAG_NO_AFFINITY | MSI_FLAG_MULTI_PCI_MSI,
 	.chip = &xilinx_msi_irq_chip,
 };
 
@@ -370,16 +370,9 @@ static void xilinx_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 	msg->data = data->hwirq;
 }
 
-static int xilinx_msi_set_affinity(struct irq_data *irq_data,
-				   const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static struct irq_chip xilinx_irq_chip = {
 	.name = "pl_dma:MSI",
 	.irq_compose_msi_msg = xilinx_compose_msi_msg,
-	.irq_set_affinity = xilinx_msi_set_affinity,
 };
 
 static int xilinx_irq_domain_alloc(struct irq_domain *domain, unsigned int virq,
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [PATCH v4 15/15] PCI: xilinx: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (13 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 14/15] PCI: xilinx-xdma: " Marek Vasut
@ 2024-07-23 13:27 ` Marek Vasut
  2024-07-24 13:50 ` [PATCH v4 00/15] genirq/msi: " Manivannan Sadhasivam
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 27+ messages in thread
From: Marek Vasut @ 2024-07-23 13:27 UTC (permalink / raw)
  To: linux-pci
  Cc: Marek Vasut, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
printing "IRQ...: set affinity failed(-22)" warning.

Remove .irq_set_affinity implementation which only return -EINVAL from this
controller driver.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: "Krzysztof Wilczyński" <kw@linux.com>
Cc: "Pali Rohár" <pali@kernel.org>
Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
Cc: Anup Patel <apatel@ventanamicro.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
Cc: Daire McNamara <daire.mcnamara@microchip.com>
Cc: Damien Le Moal <dlemoal@kernel.org>
Cc: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Cc: Jianjun Wang <jianjun.wang@mediatek.com>
Cc: Jim Quinlan <jim2101024@gmail.com>
Cc: Jingoo Han <jingoohan1@gmail.com>
Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Cc: Jon Hunter <jonathanh@nvidia.com>
Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
Cc: Jonathan Hunter <jonathanh@nvidia.com>
Cc: Joyce Ooi <joyce.ooi@intel.com>
Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
Cc: Kishon Vijay Abraham I <kishon@kernel.org>
Cc: Koichiro Den <den@valinux.co.jp>
Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Michal Simek <michal.simek@amd.com>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
Cc: Niklas Cassel <cassel@kernel.org>
Cc: Nipun Gupta <nipun.gupta@amd.com>
Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Ryder Lee <ryder.lee@mediatek.com>
Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-mediatek@lists.infradead.org
Cc: linux-pci@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
Cc: linux-rpi-kernel@lists.infradead.org
Cc: linux-tegra@vger.kernel.org
---
V4: - New patch
---
 drivers/pci/controller/pcie-xilinx.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/drivers/pci/controller/pcie-xilinx.c b/drivers/pci/controller/pcie-xilinx.c
index cb6e9f7b0152c..0b534f73a9420 100644
--- a/drivers/pci/controller/pcie-xilinx.c
+++ b/drivers/pci/controller/pcie-xilinx.c
@@ -208,11 +208,6 @@ static struct irq_chip xilinx_msi_top_chip = {
 	.irq_ack	= xilinx_msi_top_irq_ack,
 };
 
-static int xilinx_msi_set_affinity(struct irq_data *d, const struct cpumask *mask, bool force)
-{
-	return -EINVAL;
-}
-
 static void xilinx_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 {
 	struct xilinx_pcie *pcie = irq_data_get_irq_chip_data(data);
@@ -225,7 +220,6 @@ static void xilinx_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
 
 static struct irq_chip xilinx_msi_bottom_chip = {
 	.name			= "Xilinx MSI",
-	.irq_set_affinity 	= xilinx_msi_set_affinity,
 	.irq_compose_msi_msg	= xilinx_compose_msi_msg,
 };
 
@@ -271,7 +265,8 @@ static const struct irq_domain_ops xilinx_msi_domain_ops = {
 };
 
 static struct msi_domain_info xilinx_msi_info = {
-	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS),
+	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
+		  MSI_FLAG_NO_AFFINITY,
 	.chip	= &xilinx_msi_top_chip,
 };
 
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 05/15] PCI: dwc: Silence set affinity failed warning
  2024-07-23 13:27 ` [PATCH v4 05/15] PCI: dwc: " Marek Vasut
@ 2024-07-23 22:53   ` Damien Le Moal
  2024-07-24 13:47   ` Manivannan Sadhasivam
  1 sibling, 0 replies; 27+ messages in thread
From: Damien Le Moal @ 2024-07-23 22:53 UTC (permalink / raw)
  To: Marek Vasut, linux-pci
  Cc: Krzysztof Wilczyński, Pali Rohár, Uwe Kleine-König,
	Aleksandr Mishin, Anna-Maria Behnsen, Anup Patel, Bjorn Helgaas,
	Broadcom internal kernel review list, Daire McNamara,
	Florian Fainelli, Hou Zhiqiang, Jianjun Wang, Jim Quinlan,
	Jingoo Han, Jisheng Zhang, Jon Hunter, Jonathan Derrick,
	Joyce Ooi, Karthikeyan Mitran, Kishon Vijay Abraham I,
	Koichiro Den, Lorenzo Pieralisi, Manivannan Sadhasivam,
	Marc Zyngier, Michal Simek, Nicolas Saenz Julienne, Niklas Cassel,
	Nipun Gupta, Nirmal Patel, Rob Herring, Ryder Lee,
	Shivamurthy Shastri, Siddharth Vadapalli, Thierry Reding,
	Thomas Gleixner, Thomas Petazzoni, Yoshihiro Shimoda,
	linux-arm-kernel, linux-mediatek, linux-renesas-soc,
	linux-rpi-kernel, linux-tegra

On 7/23/24 10:27 PM, Marek Vasut wrote:
> Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
> and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
> printing "IRQ...: set affinity failed(-22)" warning.
> 
> Remove .irq_set_affinity implementation which only return -EINVAL from this
> controller driver.
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>

Looks good to me.

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>

-- 
Damien Le Moal
Western Digital Research



^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 01/15] genirq/msi: Silence set affinity failed warning
  2024-07-23 13:27 ` [PATCH v4 01/15] " Marek Vasut
@ 2024-07-23 22:54   ` Damien Le Moal
  0 siblings, 0 replies; 27+ messages in thread
From: Damien Le Moal @ 2024-07-23 22:54 UTC (permalink / raw)
  To: Marek Vasut, linux-pci
  Cc: Krzysztof Wilczyński, Pali Rohár, Uwe Kleine-König,
	Aleksandr Mishin, Anna-Maria Behnsen, Anup Patel, Bjorn Helgaas,
	Broadcom internal kernel review list, Daire McNamara,
	Florian Fainelli, Hou Zhiqiang, Jianjun Wang, Jim Quinlan,
	Jingoo Han, Jisheng Zhang, Jon Hunter, Jonathan Derrick,
	Joyce Ooi, Karthikeyan Mitran, Kishon Vijay Abraham I,
	Koichiro Den, Lorenzo Pieralisi, Manivannan Sadhasivam,
	Marc Zyngier, Michal Simek, Nicolas Saenz Julienne, Niklas Cassel,
	Nipun Gupta, Nirmal Patel, Rob Herring, Ryder Lee,
	Shivamurthy Shastri, Siddharth Vadapalli, Thierry Reding,
	Thomas Gleixner, Thomas Petazzoni, Yoshihiro Shimoda,
	linux-arm-kernel, linux-mediatek, linux-renesas-soc,
	linux-rpi-kernel, linux-tegra

On 7/23/24 10:27 PM, Marek Vasut wrote:
> Various PCIe controllers that mux MSIs onto single IRQ line produce these
> "IRQ%d: set affinity failed" warnings when entering suspend. This has been
> discussed before [1] [2] and an example test case is included at the end
> of this commit message.
> 
> Controller drivers which create MSI IRQ domain with MSI_FLAG_USE_DEF_CHIP_OPS
> flag set and which do not override the .irq_set_affinity irqchip callback get
> assigned default .irq_set_affinity = msi_domain_set_affinity() callback. That
> is not desired on controllers where it is not possible to set affinity of each
> MSI IRQ line to a specific CPU core due to hardware limitation.
> 
> Introduce dedicated flag MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity
> unset in case the controller driver did not assign the callback. This way, the
> migrate_one_irq() code in cpuhotplug.c can exit right away, without printing
> the aforementioned warning. The .irq_set_affinity implementations which only
> return -EINVAL can be removed from multiple controller drivers.
> 
> ```
> $ grep 25 /proc/interrupts
>  25:   0 0 0 0 0 0 0 0   PCIe MSI   0   Edge   PCIe PME
> 
> $ echo core > /sys/power/pm_test ; echo mem > /sys/power/state
> ...
> Disabling non-boot CPUs ...
> IRQ25: set affinity failed(-22). <---------- This is being silenced here
> psci: CPU7 killed (polled 4 ms)
> ...
> ```
> 
> [1] https://lore.kernel.org/all/d4a6eea3c5e33a3a4056885419df95a7@kernel.org/
> [2] https://lore.kernel.org/all/5f4947b18bf381615a37aa81c2242477@kernel.org/
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>

Looks good to me.

Reviewed-by: Damien Le Moal <dlemoal@kernel.org>

-- 
Damien Le Moal
Western Digital Research



^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 04/15] PCI: brcmstb: Silence set affinity failed warning
  2024-07-23 13:27 ` [PATCH v4 04/15] PCI: brcmstb: " Marek Vasut
@ 2024-07-24  0:00   ` Florian Fainelli
  0 siblings, 0 replies; 27+ messages in thread
From: Florian Fainelli @ 2024-07-24  0:00 UTC (permalink / raw)
  To: Marek Vasut, linux-pci
  Cc: Krzysztof Wilczyński, Pali Rohár, Uwe Kleine-König,
	Aleksandr Mishin, Anna-Maria Behnsen, Anup Patel, Bjorn Helgaas,
	Broadcom internal kernel review list, Daire McNamara,
	Damien Le Moal, Florian Fainelli, Hou Zhiqiang, Jianjun Wang,
	Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

On 7/23/24 06:27, Marek Vasut wrote:
> Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
> and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
> printing "IRQ...: set affinity failed(-22)" warning.
> 
> Remove .irq_set_affinity implementation which only return -EINVAL from this
> controller driver.
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>

Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
-- 
Florian



^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 07/15] PCI: mediatek: Silence set affinity failed warning
  2024-07-23 13:27 ` [PATCH v4 07/15] PCI: mediatek: " Marek Vasut
@ 2024-07-24  6:25   ` Jianjun Wang (王建军)
  0 siblings, 0 replies; 27+ messages in thread
From: Jianjun Wang (王建军) @ 2024-07-24  6:25 UTC (permalink / raw)
  To: marek.vasut+renesas@mailbox.org, linux-pci@vger.kernel.org
  Cc: jim2101024@gmail.com, jonathan.derrick@linux.dev,
	Jisheng.Zhang@synaptics.com, thierry.reding@gmail.com, Ryder Lee,
	manivannan.sadhasivam@linaro.org, den@valinux.co.jp,
	bcm-kernel-feedback-list@broadcom.com, Zhiqiang.Hou@nxp.com,
	jonathanh@nvidia.com, jingoohan1@gmail.com, nipun.gupta@amd.com,
	florian.fainelli@broadcom.com, nsaenz@kernel.org,
	daire.mcnamara@microchip.com, michal.simek@amd.com,
	joyce.ooi@intel.com, robh@kernel.org, anna-maria@linutronix.de,
	shivamurthy.shastri@linutronix.de,
	linux-mediatek@lists.infradead.org, bhelgaas@google.com,
	yoshihiro.shimoda.uh@renesas.com,
	linux-rpi-kernel@lists.infradead.org, dlemoal@kernel.org,
	kw@linux.com, amishin@t-argos.ru, linux-tegra@vger.kernel.org,
	maz@kernel.org, nirmal.patel@linux.intel.com,
	apatel@ventanamicro.com, tglx@linutronix.de,
	thomas.petazzoni@bootlin.com, kishon@kernel.org,
	cassel@kernel.org, m.karthikeyan@mobiveil.co.in,
	s-vadapalli@ti.com, linux-arm-kernel@lists.infradead.org,
	linux-renesas-soc@vger.kernel.org, u.kleine-koenig@pengutronix.de,
	pali@kernel.org, lpieralisi@kernel.org

On Tue, 2024-07-23 at 15:27 +0200, Marek Vasut wrote:
>  	 
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
>  Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps
> .irq_set_affinity unset
> and allows migrate_one_irq() code in cpuhotplug.c to exit right away,
> without
> printing "IRQ...: set affinity failed(-22)" warning.
> 
> Remove .irq_set_affinity implementation which only return -EINVAL
> from this
> controller driver.
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>

Acked-by: Jianjun Wang <jianjun.wang@mediatek.com>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 06/15] PCI: mediatek-gen3: Silence set affinity failed warning
  2024-07-23 13:27 ` [PATCH v4 06/15] PCI: mediatek-gen3: " Marek Vasut
@ 2024-07-24  6:27   ` Jianjun Wang (王建军)
  0 siblings, 0 replies; 27+ messages in thread
From: Jianjun Wang (王建军) @ 2024-07-24  6:27 UTC (permalink / raw)
  To: marek.vasut+renesas@mailbox.org, linux-pci@vger.kernel.org
  Cc: jim2101024@gmail.com, jonathan.derrick@linux.dev,
	Jisheng.Zhang@synaptics.com, thierry.reding@gmail.com, Ryder Lee,
	manivannan.sadhasivam@linaro.org, den@valinux.co.jp,
	bcm-kernel-feedback-list@broadcom.com, Zhiqiang.Hou@nxp.com,
	jonathanh@nvidia.com, jingoohan1@gmail.com, nipun.gupta@amd.com,
	florian.fainelli@broadcom.com, nsaenz@kernel.org,
	daire.mcnamara@microchip.com, michal.simek@amd.com,
	joyce.ooi@intel.com, robh@kernel.org, anna-maria@linutronix.de,
	shivamurthy.shastri@linutronix.de,
	linux-mediatek@lists.infradead.org, bhelgaas@google.com,
	yoshihiro.shimoda.uh@renesas.com,
	linux-rpi-kernel@lists.infradead.org, dlemoal@kernel.org,
	kw@linux.com, amishin@t-argos.ru, linux-tegra@vger.kernel.org,
	maz@kernel.org, nirmal.patel@linux.intel.com,
	apatel@ventanamicro.com, tglx@linutronix.de,
	thomas.petazzoni@bootlin.com, kishon@kernel.org,
	cassel@kernel.org, m.karthikeyan@mobiveil.co.in,
	s-vadapalli@ti.com, linux-arm-kernel@lists.infradead.org,
	linux-renesas-soc@vger.kernel.org, u.kleine-koenig@pengutronix.de,
	pali@kernel.org, lpieralisi@kernel.org

On Tue, 2024-07-23 at 15:27 +0200, Marek Vasut wrote:
>  	 
> External email : Please do not click links or open attachments until
> you have verified the sender or the content.
>  Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps
> .irq_set_affinity unset
> and allows migrate_one_irq() code in cpuhotplug.c to exit right away,
> without
> printing "IRQ...: set affinity failed(-22)" warning.
> 
> Remove .irq_set_affinity implementation which only return -EINVAL
> from this
> controller driver.
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>

Acked-by: Jianjun Wang <jianjun.wang@mediatek.com>

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 05/15] PCI: dwc: Silence set affinity failed warning
  2024-07-23 13:27 ` [PATCH v4 05/15] PCI: dwc: " Marek Vasut
  2024-07-23 22:53   ` Damien Le Moal
@ 2024-07-24 13:47   ` Manivannan Sadhasivam
  1 sibling, 0 replies; 27+ messages in thread
From: Manivannan Sadhasivam @ 2024-07-24 13:47 UTC (permalink / raw)
  To: Marek Vasut
  Cc: linux-pci, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Marc Zyngier, Michal Simek, Nicolas Saenz Julienne, Niklas Cassel,
	Nipun Gupta, Nirmal Patel, Rob Herring, Ryder Lee,
	Shivamurthy Shastri, Siddharth Vadapalli, Thierry Reding,
	Thomas Gleixner, Thomas Petazzoni, Yoshihiro Shimoda,
	linux-arm-kernel, linux-mediatek, linux-renesas-soc,
	linux-rpi-kernel, linux-tegra

On Tue, Jul 23, 2024 at 03:27:05PM +0200, Marek Vasut wrote:
> Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps .irq_set_affinity unset
> and allows migrate_one_irq() code in cpuhotplug.c to exit right away, without
> printing "IRQ...: set affinity failed(-22)" warning.
> 
> Remove .irq_set_affinity implementation which only return -EINVAL from this
> controller driver.
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

- Mani

> ---
> Cc: "Krzysztof Wilczyński" <kw@linux.com>
> Cc: "Pali Rohár" <pali@kernel.org>
> Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
> Cc: Aleksandr Mishin <amishin@t-argos.ru>
> Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
> Cc: Anup Patel <apatel@ventanamicro.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
> Cc: Daire McNamara <daire.mcnamara@microchip.com>
> Cc: Damien Le Moal <dlemoal@kernel.org>
> Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
> Cc: Jianjun Wang <jianjun.wang@mediatek.com>
> Cc: Jim Quinlan <jim2101024@gmail.com>
> Cc: Jingoo Han <jingoohan1@gmail.com>
> Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
> Cc: Jon Hunter <jonathanh@nvidia.com>
> Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
> Cc: Jonathan Hunter <jonathanh@nvidia.com>
> Cc: Joyce Ooi <joyce.ooi@intel.com>
> Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
> Cc: Kishon Vijay Abraham I <kishon@kernel.org>
> Cc: Koichiro Den <den@valinux.co.jp>
> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> Cc: Marc Zyngier <maz@kernel.org>
> Cc: Michal Simek <michal.simek@amd.com>
> Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
> Cc: Niklas Cassel <cassel@kernel.org>
> Cc: Nipun Gupta <nipun.gupta@amd.com>
> Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Ryder Lee <ryder.lee@mediatek.com>
> Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
> Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-mediatek@lists.infradead.org
> Cc: linux-pci@vger.kernel.org
> Cc: linux-renesas-soc@vger.kernel.org
> Cc: linux-rpi-kernel@lists.infradead.org
> Cc: linux-tegra@vger.kernel.org
> ---
> V4: - New patch
> ---
>  drivers/pci/controller/dwc/pci-keystone.c         |  7 -------
>  drivers/pci/controller/dwc/pcie-designware-host.c | 12 +++---------
>  2 files changed, 3 insertions(+), 16 deletions(-)
> 
> diff --git a/drivers/pci/controller/dwc/pci-keystone.c b/drivers/pci/controller/dwc/pci-keystone.c
> index 52c6420ae2003..ce9d9e0a52609 100644
> --- a/drivers/pci/controller/dwc/pci-keystone.c
> +++ b/drivers/pci/controller/dwc/pci-keystone.c
> @@ -189,12 +189,6 @@ static void ks_pcie_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
>  		(int)data->hwirq, msg->address_hi, msg->address_lo);
>  }
>  
> -static int ks_pcie_msi_set_affinity(struct irq_data *irq_data,
> -				    const struct cpumask *mask, bool force)
> -{
> -	return -EINVAL;
> -}
> -
>  static void ks_pcie_msi_mask(struct irq_data *data)
>  {
>  	struct dw_pcie_rp *pp = irq_data_get_irq_chip_data(data);
> @@ -247,7 +241,6 @@ static struct irq_chip ks_pcie_msi_irq_chip = {
>  	.name = "KEYSTONE-PCI-MSI",
>  	.irq_ack = ks_pcie_msi_irq_ack,
>  	.irq_compose_msi_msg = ks_pcie_compose_msi_msg,
> -	.irq_set_affinity = ks_pcie_msi_set_affinity,
>  	.irq_mask = ks_pcie_msi_mask,
>  	.irq_unmask = ks_pcie_msi_unmask,
>  };
> diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
> index a0822d5371bc5..3e41865c72904 100644
> --- a/drivers/pci/controller/dwc/pcie-designware-host.c
> +++ b/drivers/pci/controller/dwc/pcie-designware-host.c
> @@ -48,8 +48,9 @@ static struct irq_chip dw_pcie_msi_irq_chip = {
>  };
>  
>  static struct msi_domain_info dw_pcie_msi_domain_info = {
> -	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
> -		   MSI_FLAG_PCI_MSIX | MSI_FLAG_MULTI_PCI_MSI),
> +	.flags	= MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
> +		  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX |
> +		  MSI_FLAG_MULTI_PCI_MSI,
>  	.chip	= &dw_pcie_msi_irq_chip,
>  };
>  
> @@ -116,12 +117,6 @@ static void dw_pci_setup_msi_msg(struct irq_data *d, struct msi_msg *msg)
>  		(int)d->hwirq, msg->address_hi, msg->address_lo);
>  }
>  
> -static int dw_pci_msi_set_affinity(struct irq_data *d,
> -				   const struct cpumask *mask, bool force)
> -{
> -	return -EINVAL;
> -}
> -
>  static void dw_pci_bottom_mask(struct irq_data *d)
>  {
>  	struct dw_pcie_rp *pp = irq_data_get_irq_chip_data(d);
> @@ -177,7 +172,6 @@ static struct irq_chip dw_pci_msi_bottom_irq_chip = {
>  	.name = "DWPCI-MSI",
>  	.irq_ack = dw_pci_bottom_ack,
>  	.irq_compose_msi_msg = dw_pci_setup_msi_msg,
> -	.irq_set_affinity = dw_pci_msi_set_affinity,
>  	.irq_mask = dw_pci_bottom_mask,
>  	.irq_unmask = dw_pci_bottom_unmask,
>  };
> -- 
> 2.43.0
> 

-- 
மணிவண்ணன் சதாசிவம்


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (14 preceding siblings ...)
  2024-07-23 13:27 ` [PATCH v4 15/15] PCI: xilinx: " Marek Vasut
@ 2024-07-24 13:50 ` Manivannan Sadhasivam
  2024-07-24 15:43 ` Bjorn Helgaas
  2024-07-26 18:57 ` Bjorn Helgaas
  17 siblings, 0 replies; 27+ messages in thread
From: Manivannan Sadhasivam @ 2024-07-24 13:50 UTC (permalink / raw)
  To: Marek Vasut
  Cc: linux-pci, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Marc Zyngier, Michal Simek, Nicolas Saenz Julienne, Niklas Cassel,
	Nipun Gupta, Nirmal Patel, Rob Herring, Ryder Lee,
	Shivamurthy Shastri, Siddharth Vadapalli, Thierry Reding,
	Thomas Gleixner, Thomas Petazzoni, Yoshihiro Shimoda,
	linux-arm-kernel, linux-mediatek, linux-renesas-soc,
	linux-rpi-kernel, linux-tegra

On Tue, Jul 23, 2024 at 03:27:00PM +0200, Marek Vasut wrote:
> Various PCIe controllers that mux MSIs onto single IRQ line produce these
> "IRQ%d: set affinity failed" warnings when entering suspend. Remove the
> .irq_set_affinity callbacks and make sure they are NULL in all affected
> controllers, so this warning in kernel/irq/msi.c is not triggered.
> 
> This has been compile-tested only on all but the R-Car PCI controller.
> 
> The clean ups are done per-driver so they can be easily reverted in case
> they break something.
> 

Whole series looks good to me (PCI controller specific patches).

FWIW,

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

- Mani

> Marek Vasut (15):
>   genirq/msi: Silence set affinity failed warning
>   PCI: aardvark: Silence set affinity failed warning
>   PCI: altera-msi: Silence set affinity failed warning
>   PCI: brcmstb: Silence set affinity failed warning
>   PCI: dwc: Silence set affinity failed warning
>   PCI: mediatek-gen3: Silence set affinity failed warning
>   PCI: mediatek: Silence set affinity failed warning
>   PCI: mobiveil: Silence set affinity failed warning
>   PCI: plda: Silence set affinity failed warning
>   PCI: rcar-host: Silence set affinity failed warning
>   PCI: tegra: Silence set affinity failed warning
>   PCI: vmd: Silence set affinity failed warning
>   PCI: xilinx-nwl: Silence set affinity failed warning
>   PCI: xilinx-xdma: Silence set affinity failed warning
>   PCI: xilinx: Silence set affinity failed warning
> 
>  drivers/pci/controller/dwc/pci-keystone.c           |  7 -------
>  drivers/pci/controller/dwc/pcie-designware-host.c   | 12 +++---------
>  .../pci/controller/mobiveil/pcie-mobiveil-host.c    | 11 ++---------
>  drivers/pci/controller/pci-aardvark.c               | 10 ++--------
>  drivers/pci/controller/pci-tegra.c                  | 10 ++--------
>  drivers/pci/controller/pcie-altera-msi.c            | 11 ++---------
>  drivers/pci/controller/pcie-brcmstb.c               | 11 ++---------
>  drivers/pci/controller/pcie-mediatek-gen3.c         | 13 +++----------
>  drivers/pci/controller/pcie-mediatek.c              | 11 ++---------
>  drivers/pci/controller/pcie-rcar-host.c             | 10 ++--------
>  drivers/pci/controller/pcie-xilinx-dma-pl.c         | 11 ++---------
>  drivers/pci/controller/pcie-xilinx-nwl.c            | 11 ++---------
>  drivers/pci/controller/pcie-xilinx.c                |  9 ++-------
>  drivers/pci/controller/plda/pcie-plda-host.c        | 11 ++---------
>  drivers/pci/controller/vmd.c                        | 13 +------------
>  include/linux/msi.h                                 |  2 ++
>  kernel/irq/msi.c                                    |  2 +-
>  17 files changed, 32 insertions(+), 133 deletions(-)
> 
> Cc: "Krzysztof Wilczyński" <kw@linux.com>
> Cc: "Pali Rohár" <pali@kernel.org>
> Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
> Cc: Aleksandr Mishin <amishin@t-argos.ru>
> Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
> Cc: Anup Patel <apatel@ventanamicro.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Broadcom internal kernel review list <bcm-kernel-feedback-list@broadcom.com>
> Cc: Daire McNamara <daire.mcnamara@microchip.com>
> Cc: Damien Le Moal <dlemoal@kernel.org>
> Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
> Cc: Jianjun Wang <jianjun.wang@mediatek.com>
> Cc: Jim Quinlan <jim2101024@gmail.com>
> Cc: Jingoo Han <jingoohan1@gmail.com>
> Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
> Cc: Jon Hunter <jonathanh@nvidia.com>
> Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
> Cc: Jonathan Hunter <jonathanh@nvidia.com>
> Cc: Joyce Ooi <joyce.ooi@intel.com>
> Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
> Cc: Kishon Vijay Abraham I <kishon@kernel.org>
> Cc: Koichiro Den <den@valinux.co.jp>
> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> Cc: Marc Zyngier <maz@kernel.org>
> Cc: Michal Simek <michal.simek@amd.com>
> Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
> Cc: Niklas Cassel <cassel@kernel.org>
> Cc: Nipun Gupta <nipun.gupta@amd.com>
> Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Ryder Lee <ryder.lee@mediatek.com>
> Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
> Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-mediatek@lists.infradead.org
> Cc: linux-pci@vger.kernel.org
> Cc: linux-renesas-soc@vger.kernel.org
> Cc: linux-rpi-kernel@lists.infradead.org
> Cc: linux-tegra@vger.kernel.org
> 
> -- 
> 2.43.0
> 

-- 
மணிவண்ணன் சதாசிவம்


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (15 preceding siblings ...)
  2024-07-24 13:50 ` [PATCH v4 00/15] genirq/msi: " Manivannan Sadhasivam
@ 2024-07-24 15:43 ` Bjorn Helgaas
  2024-07-26 12:10   ` Thomas Gleixner
  2024-07-26 18:57 ` Bjorn Helgaas
  17 siblings, 1 reply; 27+ messages in thread
From: Bjorn Helgaas @ 2024-07-24 15:43 UTC (permalink / raw)
  To: Marek Vasut
  Cc: linux-pci, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

On Tue, Jul 23, 2024 at 03:27:00PM +0200, Marek Vasut wrote:
> Various PCIe controllers that mux MSIs onto single IRQ line produce these
> "IRQ%d: set affinity failed" warnings when entering suspend. Remove the
> .irq_set_affinity callbacks and make sure they are NULL in all affected
> controllers, so this warning in kernel/irq/msi.c is not triggered.
> 
> This has been compile-tested only on all but the R-Car PCI controller.
> 
> The clean ups are done per-driver so they can be easily reverted in case
> they break something.
> 
> Marek Vasut (15):
>   genirq/msi: Silence set affinity failed warning
>   PCI: aardvark: Silence set affinity failed warning
>   PCI: altera-msi: Silence set affinity failed warning
>   PCI: brcmstb: Silence set affinity failed warning
>   PCI: dwc: Silence set affinity failed warning
>   PCI: mediatek-gen3: Silence set affinity failed warning
>   PCI: mediatek: Silence set affinity failed warning
>   PCI: mobiveil: Silence set affinity failed warning
>   PCI: plda: Silence set affinity failed warning
>   PCI: rcar-host: Silence set affinity failed warning
>   PCI: tegra: Silence set affinity failed warning
>   PCI: vmd: Silence set affinity failed warning
>   PCI: xilinx-nwl: Silence set affinity failed warning
>   PCI: xilinx-xdma: Silence set affinity failed warning
>   PCI: xilinx: Silence set affinity failed warning

Happy to apply this series via the PCI tree given an ack from Thomas.

In that event I would rewrap the commit logs to fit in 75 columns and
include a note in the driver patches about what event causes the
warning.  No need to repost for that unless other changes are needed.

Thanks for doing this work!

Bjorn


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning
  2024-07-24 15:43 ` Bjorn Helgaas
@ 2024-07-26 12:10   ` Thomas Gleixner
  0 siblings, 0 replies; 27+ messages in thread
From: Thomas Gleixner @ 2024-07-26 12:10 UTC (permalink / raw)
  To: Bjorn Helgaas, Marek Vasut
  Cc: linux-pci, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Petazzoni, Yoshihiro Shimoda,
	linux-arm-kernel, linux-mediatek, linux-renesas-soc,
	linux-rpi-kernel, linux-tegra

On Wed, Jul 24 2024 at 10:43, Bjorn Helgaas wrote:
> Happy to apply this series via the PCI tree given an ack from Thomas.

Here you go:

Acked-by: Thomas Gleixner <tglx@linutronix.de>


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning
  2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
                   ` (16 preceding siblings ...)
  2024-07-24 15:43 ` Bjorn Helgaas
@ 2024-07-26 18:57 ` Bjorn Helgaas
  17 siblings, 0 replies; 27+ messages in thread
From: Bjorn Helgaas @ 2024-07-26 18:57 UTC (permalink / raw)
  To: Marek Vasut
  Cc: linux-pci, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Nirmal Patel,
	Rob Herring, Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

On Tue, Jul 23, 2024 at 03:27:00PM +0200, Marek Vasut wrote:
> Various PCIe controllers that mux MSIs onto single IRQ line produce these
> "IRQ%d: set affinity failed" warnings when entering suspend. Remove the
> .irq_set_affinity callbacks and make sure they are NULL in all affected
> controllers, so this warning in kernel/irq/msi.c is not triggered.
> 
> This has been compile-tested only on all but the R-Car PCI controller.
> 
> The clean ups are done per-driver so they can be easily reverted in case
> they break something.
> 
> Marek Vasut (15):
>   genirq/msi: Silence set affinity failed warning
>   PCI: aardvark: Silence set affinity failed warning
>   PCI: altera-msi: Silence set affinity failed warning
>   PCI: brcmstb: Silence set affinity failed warning
>   PCI: dwc: Silence set affinity failed warning
>   PCI: mediatek-gen3: Silence set affinity failed warning
>   PCI: mediatek: Silence set affinity failed warning
>   PCI: mobiveil: Silence set affinity failed warning
>   PCI: plda: Silence set affinity failed warning
>   PCI: rcar-host: Silence set affinity failed warning
>   PCI: tegra: Silence set affinity failed warning
>   PCI: vmd: Silence set affinity failed warning
>   PCI: xilinx-nwl: Silence set affinity failed warning
>   PCI: xilinx-xdma: Silence set affinity failed warning
>   PCI: xilinx: Silence set affinity failed warning
> 
>  drivers/pci/controller/dwc/pci-keystone.c           |  7 -------
>  drivers/pci/controller/dwc/pcie-designware-host.c   | 12 +++---------
>  .../pci/controller/mobiveil/pcie-mobiveil-host.c    | 11 ++---------
>  drivers/pci/controller/pci-aardvark.c               | 10 ++--------
>  drivers/pci/controller/pci-tegra.c                  | 10 ++--------
>  drivers/pci/controller/pcie-altera-msi.c            | 11 ++---------
>  drivers/pci/controller/pcie-brcmstb.c               | 11 ++---------
>  drivers/pci/controller/pcie-mediatek-gen3.c         | 13 +++----------
>  drivers/pci/controller/pcie-mediatek.c              | 11 ++---------
>  drivers/pci/controller/pcie-rcar-host.c             | 10 ++--------
>  drivers/pci/controller/pcie-xilinx-dma-pl.c         | 11 ++---------
>  drivers/pci/controller/pcie-xilinx-nwl.c            | 11 ++---------
>  drivers/pci/controller/pcie-xilinx.c                |  9 ++-------
>  drivers/pci/controller/plda/pcie-plda-host.c        | 11 ++---------
>  drivers/pci/controller/vmd.c                        | 13 +------------
>  include/linux/msi.h                                 |  2 ++
>  kernel/irq/msi.c                                    |  2 +-
>  17 files changed, 32 insertions(+), 133 deletions(-)

Applied to pci/controller/affinity for v6.11, thank you very much for
doing this work!

I pushed this branch, but it won't show up in linux-next until after
v6.12-rc1 is tagged.


^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [PATCH v4 12/15] PCI: vmd: Silence set affinity failed warning
  2024-07-23 13:27 ` [PATCH v4 12/15] PCI: vmd: " Marek Vasut
@ 2024-08-05 14:30   ` Nirmal Patel
  0 siblings, 0 replies; 27+ messages in thread
From: Nirmal Patel @ 2024-08-05 14:30 UTC (permalink / raw)
  To: Marek Vasut
  Cc: linux-pci, Krzysztof Wilczyński, Pali Rohár,
	Uwe Kleine-König, Aleksandr Mishin, Anna-Maria Behnsen,
	Anup Patel, Bjorn Helgaas, Broadcom internal kernel review list,
	Daire McNamara, Damien Le Moal, Florian Fainelli, Hou Zhiqiang,
	Jianjun Wang, Jim Quinlan, Jingoo Han, Jisheng Zhang, Jon Hunter,
	Jonathan Derrick, Joyce Ooi, Karthikeyan Mitran,
	Kishon Vijay Abraham I, Koichiro Den, Lorenzo Pieralisi,
	Manivannan Sadhasivam, Marc Zyngier, Michal Simek,
	Nicolas Saenz Julienne, Niklas Cassel, Nipun Gupta, Rob Herring,
	Ryder Lee, Shivamurthy Shastri, Siddharth Vadapalli,
	Thierry Reding, Thomas Gleixner, Thomas Petazzoni,
	Yoshihiro Shimoda, linux-arm-kernel, linux-mediatek,
	linux-renesas-soc, linux-rpi-kernel, linux-tegra

On Tue, 23 Jul 2024 15:27:12 +0200
Marek Vasut <marek.vasut+renesas@mailbox.org> wrote:

> Use newly introduced MSI_FLAG_NO_AFFINITY, which keeps
> .irq_set_affinity unset and allows migrate_one_irq() code in
> cpuhotplug.c to exit right away, without printing "IRQ...: set
> affinity failed(-22)" warning.
> 
> Remove .irq_set_affinity implementation which only return -EINVAL
> from this controller driver.
> 
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
> ---
> Cc: "Krzysztof Wilczyński" <kw@linux.com>
> Cc: "Pali Rohár" <pali@kernel.org>
> Cc: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
> Cc: Aleksandr Mishin <amishin@t-argos.ru>
> Cc: Anna-Maria Behnsen <anna-maria@linutronix.de>
> Cc: Anup Patel <apatel@ventanamicro.com>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Broadcom internal kernel review list
> <bcm-kernel-feedback-list@broadcom.com> Cc: Daire McNamara
> <daire.mcnamara@microchip.com> Cc: Damien Le Moal <dlemoal@kernel.org>
> Cc: Florian Fainelli <florian.fainelli@broadcom.com>
> Cc: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
> Cc: Jianjun Wang <jianjun.wang@mediatek.com>
> Cc: Jim Quinlan <jim2101024@gmail.com>
> Cc: Jingoo Han <jingoohan1@gmail.com>
> Cc: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
> Cc: Jon Hunter <jonathanh@nvidia.com>
> Cc: Jonathan Derrick <jonathan.derrick@linux.dev>
> Cc: Jonathan Hunter <jonathanh@nvidia.com>
> Cc: Joyce Ooi <joyce.ooi@intel.com>
> Cc: Karthikeyan Mitran <m.karthikeyan@mobiveil.co.in>
> Cc: Kishon Vijay Abraham I <kishon@kernel.org>
> Cc: Koichiro Den <den@valinux.co.jp>
> Cc: Lorenzo Pieralisi <lpieralisi@kernel.org>
> Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> Cc: Marc Zyngier <maz@kernel.org>
> Cc: Michal Simek <michal.simek@amd.com>
> Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>
> Cc: Niklas Cassel <cassel@kernel.org>
> Cc: Nipun Gupta <nipun.gupta@amd.com>
> Cc: Nirmal Patel <nirmal.patel@linux.intel.com>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Ryder Lee <ryder.lee@mediatek.com>
> Cc: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de>
> Cc: Siddharth Vadapalli <s-vadapalli@ti.com>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> Cc: Thomas Gleixner <tglx@linutronix.de>
> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> Cc: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-mediatek@lists.infradead.org
> Cc: linux-pci@vger.kernel.org
> Cc: linux-renesas-soc@vger.kernel.org
> Cc: linux-rpi-kernel@lists.infradead.org
> Cc: linux-tegra@vger.kernel.org
> ---
> V4: - New patch
> ---
>  drivers/pci/controller/vmd.c | 13 +------------
>  1 file changed, 1 insertion(+), 12 deletions(-)
> 
> diff --git a/drivers/pci/controller/vmd.c
> b/drivers/pci/controller/vmd.c index a726de0af011f..bc849b0d9e8dc
> 100644 --- a/drivers/pci/controller/vmd.c
> +++ b/drivers/pci/controller/vmd.c
> @@ -204,22 +204,11 @@ static void vmd_irq_disable(struct irq_data
> *data) raw_spin_unlock_irqrestore(&list_lock, flags);
>  }
>  
> -/*
> - * XXX: Stubbed until we develop acceptable way to not create
> conflicts with
> - * other devices sharing the same vector.
> - */
> -static int vmd_irq_set_affinity(struct irq_data *data,
> -				const struct cpumask *dest, bool
> force) -{
> -	return -EINVAL;
> -}
> -
>  static struct irq_chip vmd_msi_controller = {
>  	.name			= "VMD-MSI",
>  	.irq_enable		= vmd_irq_enable,
>  	.irq_disable		= vmd_irq_disable,
>  	.irq_compose_msi_msg	= vmd_compose_msi_msg,
> -	.irq_set_affinity	= vmd_irq_set_affinity,
>  };
>  
>  static irq_hw_number_t vmd_get_hwirq(struct msi_domain_info *info,
> @@ -326,7 +315,7 @@ static struct msi_domain_ops vmd_msi_domain_ops =
> { 
>  static struct msi_domain_info vmd_msi_domain_info = {
>  	.flags		= MSI_FLAG_USE_DEF_DOM_OPS |
> MSI_FLAG_USE_DEF_CHIP_OPS |
> -			  MSI_FLAG_PCI_MSIX,
> +			  MSI_FLAG_NO_AFFINITY | MSI_FLAG_PCI_MSIX,
>  	.ops		= &vmd_msi_domain_ops,
>  	.chip		= &vmd_msi_controller,
>  };

Reviewed-by: Nirmal Patel <nirmal.patel@linux.intel.com>

Thanks.


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2024-08-05 14:31 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-23 13:27 [PATCH v4 00/15] genirq/msi: Silence set affinity failed warning Marek Vasut
2024-07-23 13:27 ` [PATCH v4 01/15] " Marek Vasut
2024-07-23 22:54   ` Damien Le Moal
2024-07-23 13:27 ` [PATCH v4 02/15] PCI: aardvark: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 03/15] PCI: altera-msi: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 04/15] PCI: brcmstb: " Marek Vasut
2024-07-24  0:00   ` Florian Fainelli
2024-07-23 13:27 ` [PATCH v4 05/15] PCI: dwc: " Marek Vasut
2024-07-23 22:53   ` Damien Le Moal
2024-07-24 13:47   ` Manivannan Sadhasivam
2024-07-23 13:27 ` [PATCH v4 06/15] PCI: mediatek-gen3: " Marek Vasut
2024-07-24  6:27   ` Jianjun Wang (王建军)
2024-07-23 13:27 ` [PATCH v4 07/15] PCI: mediatek: " Marek Vasut
2024-07-24  6:25   ` Jianjun Wang (王建军)
2024-07-23 13:27 ` [PATCH v4 08/15] PCI: mobiveil: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 09/15] PCI: plda: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 10/15] PCI: rcar-host: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 11/15] PCI: tegra: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 12/15] PCI: vmd: " Marek Vasut
2024-08-05 14:30   ` Nirmal Patel
2024-07-23 13:27 ` [PATCH v4 13/15] PCI: xilinx-nwl: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 14/15] PCI: xilinx-xdma: " Marek Vasut
2024-07-23 13:27 ` [PATCH v4 15/15] PCI: xilinx: " Marek Vasut
2024-07-24 13:50 ` [PATCH v4 00/15] genirq/msi: " Manivannan Sadhasivam
2024-07-24 15:43 ` Bjorn Helgaas
2024-07-26 12:10   ` Thomas Gleixner
2024-07-26 18:57 ` Bjorn Helgaas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).