All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nitesh Narayan Lal <nitesh@redhat.com>
To: linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
	linux-scsi@vger.kernel.org, netdev@vger.kernel.org,
	davem@davemloft.net, ajit.khaparde@broadcom.com,
	sriharsha.basavapatna@broadcom.com, somnath.kotur@broadcom.com,
	huangguangbin2@huawei.com, huangdaode@huawei.com,
	mtosatti@redhat.com, juri.lelli@redhat.com, frederic@kernel.org,
	abelits@marvell.com, bhelgaas@google.com, rostedt@goodmis.org,
	peterz@infradead.org
Cc: nilal@redhat.com, jesse.brandeburg@intel.com,
	robin.murphy@arm.com, mingo@kernel.org, jbrandeb@kernel.org,
	akpm@linuxfoundation.org, sfr@canb.auug.org.au,
	stephen@networkplumber.org, rppt@linux.vnet.ibm.com,
	chris.friesen@windriver.com, maz@kernel.org,
	nhorman@tuxdriver.com, pjwaskiewicz@gmail.com,
	sassmann@redhat.com, thenzl@redhat.com, james.smart@broadcom.com,
	dick.kennedy@broadcom.com, jkc@redhat.com,
	faisal.latif@intel.com, shiraz.saleem@intel.com,
	tariqt@nvidia.com, ahleihel@redhat.com, kheib@redhat.com,
	borisp@nvidia.com, saeedm@nvidia.com,
	tatyana.e.nikolova@intel.com, mustafa.ismail@intel.com,
	ahs3@redhat.com, leonro@nvidia.com,
	chandrakanth.patil@broadcom.com, bjorn.andersson@linaro.org,
	chunkuang.hu@kernel.org, yongqiang.niu@mediatek.com,
	baolin.wang7@gmail.com, poros@redhat.com, minlei@redhat.com,
	emilne@redhat.com, jejb@linux.ibm.com,
	martin.petersen@oracle.com, kabel@kernel.org,
	viresh.kumar@linaro.org, kuba@kernel.org,
	kashyap.desai@broadcom.com, sumit.saxena@broadcom.com,
	shivasharan.srikanteshwara@broadcom.com,
	sathya.prakash@broadcom.com, sreekanth.reddy@broadcom.com,
	suganath-prabu.subramani@broadcom.com, tglx@linutronix.de,
	ley.foon.tan@intel.com, jbrunet@baylibre.com,
	johannes@sipsolutions.net, snelson@pensando.io,
	lewis.hanly@microchip.com, benve@cisco.com, _govind@gmx.com,
	jassisinghbrar@gmail.com
Subject: [PATCH v6 10/14] mailbox: Use irq_update_affinity_hint
Date: Fri,  3 Sep 2021 11:24:26 -0400	[thread overview]
Message-ID: <20210903152430.244937-11-nitesh@redhat.com> (raw)
In-Reply-To: <20210903152430.244937-1-nitesh@redhat.com>

The driver uses irq_set_affinity_hint() to:

- Set the affinity_hint which is consumed by the userspace for
  distributing the interrupts

- Enforce affinity

As per commit 6ac17fe8c14a ("mailbox: bcm-flexrm-mailbox: Set IRQ affinity
hint for FlexRM ring IRQs") the latter is done to ensure that the FlexRM
ring interrupts are evenly spread across all available CPUs. However, since
commit a0c9259dc4e1 ("irq/matrix: Spread interrupts on allocation") the
spreading of interrupts is dynamically performed at the time of allocation.
Hence, there is no need for the drivers to enforce their own affinity for
the spreading of interrupts.

Also, irq_set_affinity_hint() applying the provided cpumask as an affinity
for the interrupt is an undocumented side effect. To remove this side
effect irq_set_affinity_hint() has been marked as deprecated and new
interfaces have been introduced. Hence, replace the irq_set_affinity_hint()
with the new interface irq_update_affinity_hint() that only sets the
affinity_hint pointer.

Signed-off-by: Nitesh Narayan Lal <nitesh@redhat.com>
Acked-by: Jassi Brar <jaswinder.singh@linaro.org>
---
 drivers/mailbox/bcm-flexrm-mailbox.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/mailbox/bcm-flexrm-mailbox.c b/drivers/mailbox/bcm-flexrm-mailbox.c
index 78073ad1f2f1..16982c13d323 100644
--- a/drivers/mailbox/bcm-flexrm-mailbox.c
+++ b/drivers/mailbox/bcm-flexrm-mailbox.c
@@ -1298,7 +1298,7 @@ static int flexrm_startup(struct mbox_chan *chan)
 	val = (num_online_cpus() < val) ? val / num_online_cpus() : 1;
 	cpumask_set_cpu((ring->num / val) % num_online_cpus(),
 			&ring->irq_aff_hint);
-	ret = irq_set_affinity_hint(ring->irq, &ring->irq_aff_hint);
+	ret = irq_update_affinity_hint(ring->irq, &ring->irq_aff_hint);
 	if (ret) {
 		dev_err(ring->mbox->dev,
 			"failed to set IRQ affinity hint for ring%d\n",
@@ -1425,7 +1425,7 @@ static void flexrm_shutdown(struct mbox_chan *chan)
 
 	/* Release IRQ */
 	if (ring->irq_requested) {
-		irq_set_affinity_hint(ring->irq, NULL);
+		irq_update_affinity_hint(ring->irq, NULL);
 		free_irq(ring->irq, ring);
 		ring->irq_requested = false;
 	}
-- 
2.27.0


  parent reply	other threads:[~2021-09-03 15:26 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-03 15:24 [PATCH v6 00/14] genirq: Cleanup the abuse of irq_set_affinity_hint() Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 01/14] genirq: Provide new interfaces for affinity hints Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 02/14] iavf: Use irq_update_affinity_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] iavf: Use irq_update_affinity_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 03/14] i40e: Use irq_update_affinity_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] i40e: Use irq_update_affinity_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 04/14] scsi: megaraid_sas: Use irq_set_affinity_and_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] scsi: megaraid_sas: Use irq_set_affinity_and_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 05/14] scsi: mpt3sas: Use irq_set_affinity_and_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] scsi: mpt3sas: Use irq_set_affinity_and_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 06/14] RDMA/irdma: Use irq_update_affinity_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] RDMA/irdma: Use irq_update_affinity_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 07/14] enic: Use irq_update_affinity_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] enic: Use irq_update_affinity_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 08/14] be2net: Use irq_update_affinity_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] be2net: Use irq_update_affinity_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 09/14] ixgbe: Use irq_update_affinity_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] ixgbe: Use irq_update_affinity_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` Nitesh Narayan Lal [this message]
2021-12-10 19:54   ` [tip: irq/core] mailbox: " tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 11/14] scsi: lpfc: Use irq_set_affinity Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] scsi: lpfc: Use irq_set_affinity() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 12/14] hinic: Use irq_set_affinity_and_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] hinic: Use irq_set_affinity_and_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 13/14] net/mlx5: Use irq_set_affinity_and_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] net/mlx5: Use irq_set_affinity_and_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-03 15:24 ` [PATCH v6 14/14] net/mlx4: Use irq_update_affinity_hint Nitesh Narayan Lal
2021-12-10 19:54   ` [tip: irq/core] net/mlx4: Use irq_update_affinity_hint() tip-bot2 for Nitesh Narayan Lal
2021-09-13 14:34 ` [PATCH v6 00/14] genirq: Cleanup the abuse of irq_set_affinity_hint() Nitesh Lal
2021-11-24 19:30   ` Thomas Gleixner
2021-11-24 22:16     ` Nitesh Lal
2021-12-10 13:51       ` Nitesh Lal
2021-12-10 18:44         ` Thomas Gleixner
2021-12-10 18:54           ` Nitesh Lal

Reply instructions:

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

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

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

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

  git send-email \
    --in-reply-to=20210903152430.244937-11-nitesh@redhat.com \
    --to=nitesh@redhat.com \
    --cc=_govind@gmx.com \
    --cc=abelits@marvell.com \
    --cc=ahleihel@redhat.com \
    --cc=ahs3@redhat.com \
    --cc=ajit.khaparde@broadcom.com \
    --cc=akpm@linuxfoundation.org \
    --cc=baolin.wang7@gmail.com \
    --cc=benve@cisco.com \
    --cc=bhelgaas@google.com \
    --cc=bjorn.andersson@linaro.org \
    --cc=borisp@nvidia.com \
    --cc=chandrakanth.patil@broadcom.com \
    --cc=chris.friesen@windriver.com \
    --cc=chunkuang.hu@kernel.org \
    --cc=davem@davemloft.net \
    --cc=dick.kennedy@broadcom.com \
    --cc=emilne@redhat.com \
    --cc=faisal.latif@intel.com \
    --cc=frederic@kernel.org \
    --cc=huangdaode@huawei.com \
    --cc=huangguangbin2@huawei.com \
    --cc=james.smart@broadcom.com \
    --cc=jassisinghbrar@gmail.com \
    --cc=jbrandeb@kernel.org \
    --cc=jbrunet@baylibre.com \
    --cc=jejb@linux.ibm.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=jkc@redhat.com \
    --cc=johannes@sipsolutions.net \
    --cc=juri.lelli@redhat.com \
    --cc=kabel@kernel.org \
    --cc=kashyap.desai@broadcom.com \
    --cc=kheib@redhat.com \
    --cc=kuba@kernel.org \
    --cc=leonro@nvidia.com \
    --cc=lewis.hanly@microchip.com \
    --cc=ley.foon.tan@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=maz@kernel.org \
    --cc=mingo@kernel.org \
    --cc=minlei@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=mustafa.ismail@intel.com \
    --cc=netdev@vger.kernel.org \
    --cc=nhorman@tuxdriver.com \
    --cc=nilal@redhat.com \
    --cc=peterz@infradead.org \
    --cc=pjwaskiewicz@gmail.com \
    --cc=poros@redhat.com \
    --cc=robin.murphy@arm.com \
    --cc=rostedt@goodmis.org \
    --cc=rppt@linux.vnet.ibm.com \
    --cc=saeedm@nvidia.com \
    --cc=sassmann@redhat.com \
    --cc=sathya.prakash@broadcom.com \
    --cc=sfr@canb.auug.org.au \
    --cc=shiraz.saleem@intel.com \
    --cc=shivasharan.srikanteshwara@broadcom.com \
    --cc=snelson@pensando.io \
    --cc=somnath.kotur@broadcom.com \
    --cc=sreekanth.reddy@broadcom.com \
    --cc=sriharsha.basavapatna@broadcom.com \
    --cc=stephen@networkplumber.org \
    --cc=suganath-prabu.subramani@broadcom.com \
    --cc=sumit.saxena@broadcom.com \
    --cc=tariqt@nvidia.com \
    --cc=tatyana.e.nikolova@intel.com \
    --cc=tglx@linutronix.de \
    --cc=thenzl@redhat.com \
    --cc=viresh.kumar@linaro.org \
    --cc=yongqiang.niu@mediatek.com \
    /path/to/YOUR_REPLY

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

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