diff mbox series

i40iw: remove support for ib_get_vector_affinity

Message ID 20181101200807.511-1-sagi@grimberg.me (mailing list archive)
State Accepted
Commit 759ace7832802eaefbca821b2b43a44ab896b449
Headers show
Series i40iw: remove support for ib_get_vector_affinity | expand

Commit Message

Sagi Grimberg Nov. 1, 2018, 8:08 p.m. UTC
devices that does not use managed affinity can not export a vector
affinity as the consumer relies on having a static mapping it can map
to upper layer affinity (e.g. sw queues). If the driver allows the user
to set the device irq affinity, then the affinitization of a long term
existing entites is not relevant.

For example, nvme-rdma controllers queue-irq affinitization is determined
at init time so if the irq affinity changes over time, we are no longer
aligned.

Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
---
 drivers/infiniband/hw/i40iw/i40iw_verbs.c | 20 --------------------
 1 file changed, 20 deletions(-)

Comments

Shiraz Saleem Nov. 1, 2018, 8:17 p.m. UTC | #1
On Thu, Nov 01, 2018 at 01:08:07PM -0700, Sagi Grimberg wrote:
> devices that does not use managed affinity can not export a vector
> affinity as the consumer relies on having a static mapping it can map
> to upper layer affinity (e.g. sw queues). If the driver allows the user
> to set the device irq affinity, then the affinitization of a long term
> existing entites is not relevant.
> 
> For example, nvme-rdma controllers queue-irq affinitization is determined
> at init time so if the irq affinity changes over time, we are no longer
> aligned.
> 
> Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
> ---
>

Thanks Sagi!

Jason/Doug - Please pick this one up and drop the one I sent. The commit message is much better.

Acked-by: Shiraz Saleem <shiraz.saleem@intel.com>
Doug Ledford Nov. 6, 2018, 9:46 p.m. UTC | #2
On Thu, 2018-11-01 at 15:17 -0500, Shiraz Saleem wrote:
> On Thu, Nov 01, 2018 at 01:08:07PM -0700, Sagi Grimberg wrote:
> > devices that does not use managed affinity can not export a vector
> > affinity as the consumer relies on having a static mapping it can map
> > to upper layer affinity (e.g. sw queues). If the driver allows the user
> > to set the device irq affinity, then the affinitization of a long term
> > existing entites is not relevant.
> > 
> > For example, nvme-rdma controllers queue-irq affinitization is determined
> > at init time so if the irq affinity changes over time, we are no longer
> > aligned.
> > 
> > Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
> > ---
> > 
> 
> Thanks Sagi!
> 
> Jason/Doug - Please pick this one up and drop the one I sent. The commit message is much better.
> 
> Acked-by: Shiraz Saleem <shiraz.saleem@intel.com>
>  

Applied to for-next.
diff mbox series

Patch

diff --git a/drivers/infiniband/hw/i40iw/i40iw_verbs.c b/drivers/infiniband/hw/i40iw/i40iw_verbs.c
index e2e6c74a7452..84b46d4e0044 100644
--- a/drivers/infiniband/hw/i40iw/i40iw_verbs.c
+++ b/drivers/infiniband/hw/i40iw/i40iw_verbs.c
@@ -2718,25 +2718,6 @@  static int i40iw_query_pkey(struct ib_device *ibdev,
 	return 0;
 }
 
-/**
- * i40iw_get_vector_affinity - report IRQ affinity mask
- * @ibdev: IB device
- * @comp_vector: completion vector index
- */
-static const struct cpumask *i40iw_get_vector_affinity(struct ib_device *ibdev,
-						       int comp_vector)
-{
-	struct i40iw_device *iwdev = to_iwdev(ibdev);
-	struct i40iw_msix_vector *msix_vec;
-
-	if (iwdev->msix_shared)
-		msix_vec = &iwdev->iw_msixtbl[comp_vector];
-	else
-		msix_vec = &iwdev->iw_msixtbl[comp_vector + 1];
-
-	return irq_get_affinity_mask(msix_vec->irq);
-}
-
 /**
  * i40iw_init_rdma_device - initialization of iwarp device
  * @iwdev: iwarp device
@@ -2830,7 +2811,6 @@  static struct i40iw_ib_device *i40iw_init_rdma_device(struct i40iw_device *iwdev
 	iwibdev->ibdev.req_notify_cq = i40iw_req_notify_cq;
 	iwibdev->ibdev.post_send = i40iw_post_send;
 	iwibdev->ibdev.post_recv = i40iw_post_recv;
-	iwibdev->ibdev.get_vector_affinity = i40iw_get_vector_affinity;
 
 	return iwibdev;
 }