]> git.openfabrics.org - compat-rdma/compat-rdma.git/commitdiff
i40iw: remove support for ib_get_vector_affinity
authorSagi Grimberg <sagi@grimberg.me>
Wed, 14 Nov 2018 22:28:57 +0000 (17:28 -0500)
committerVladimir Sokolovsky <vlad@mellanox.com>
Wed, 14 Nov 2018 22:28:57 +0000 (17:28 -0500)
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>
Acked-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
linux-next-pending/0001-i40iw-remove-support-for-ib_get_vector_affinity.patch [new file with mode: 0644]

diff --git a/linux-next-pending/0001-i40iw-remove-support-for-ib_get_vector_affinity.patch b/linux-next-pending/0001-i40iw-remove-support-for-ib_get_vector_affinity.patch
new file mode 100644 (file)
index 0000000..5550503
--- /dev/null
@@ -0,0 +1,64 @@
+From a4f2054ebc5184cc2a9c195c5b7bb3c1fc6b703a Mon Sep 17 00:00:00 2001
+From: Sagi Grimberg <sagi@grimberg.me>
+Date: Thu, 1 Nov 2018 13:08:07 -0700
+Subject: [PATCH] i40iw: remove support for ib_get_vector_affinity
+
+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>
+Acked-by: Shiraz Saleem <shiraz.saleem@intel.com>
+Signed-off-by: Doug Ledford <dledford@redhat.com>
+Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
+---
+ drivers/infiniband/hw/i40iw/i40iw_verbs.c | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/drivers/infiniband/hw/i40iw/i40iw_verbs.c b/drivers/infiniband/hw/i40iw/i40iw_verbs.c
+index 68679ad..69ca741 100644
+--- a/drivers/infiniband/hw/i40iw/i40iw_verbs.c
++++ b/drivers/infiniband/hw/i40iw/i40iw_verbs.c
+@@ -2754,25 +2754,6 @@ static int i40iw_destroy_ah(struct ib_ah *ah)
+ }
+ /**
+- * 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
+  */
+@@ -2868,7 +2849,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;
+ }
+-- 
+1.8.3.1
+