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 |
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>
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 --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; }
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(-)