* [PATCH for-4.14] IB: Avoid ib_modify_port() failure for RoCE devices
@ 2017-08-23 8:08 Selvin Xavier
[not found] ` <1503475687-5227-1-git-send-email-selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Selvin Xavier @ 2017-08-23 8:08 UTC (permalink / raw)
To: dledford-H+wXaHxf7aLQT0dZR+AlfA
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Selvin Xavier, Leon Romanovsky
IB CM calls ib_modify_port() irrespective of link layer. If the
failure is returned, the mad agent gets unregistered for those
devices. Recently, modify_port() hook was removed from some of the
low level drivers as it was always returning success. This breaks
rdma connection establishment over those devices.
For ethernet devices, Qkey violation and port capabilities are not
applicable. So returning success for RoCE when modify_port hook is
is not implemented.
Cc: Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Signed-off-by: Selvin Xavier <selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
---
drivers/infiniband/core/device.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/infiniband/core/device.c b/drivers/infiniband/core/device.c
index fc6be11..2466ffc 100644
--- a/drivers/infiniband/core/device.c
+++ b/drivers/infiniband/core/device.c
@@ -1005,14 +1005,17 @@ int ib_modify_port(struct ib_device *device,
u8 port_num, int port_modify_mask,
struct ib_port_modify *port_modify)
{
- if (!device->modify_port)
- return -ENOSYS;
+ int rc;
if (!rdma_is_port_valid(device, port_num))
return -EINVAL;
- return device->modify_port(device, port_num, port_modify_mask,
- port_modify);
+ if (device->modify_port)
+ rc = device->modify_port(device, port_num, port_modify_mask,
+ port_modify);
+ else
+ rc = rdma_protocol_roce(device, port_num) ? 0 : -ENOSYS;
+ return rc;
}
EXPORT_SYMBOL(ib_modify_port);
--
2.5.5
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply related [flat|nested] 3+ messages in thread[parent not found: <1503475687-5227-1-git-send-email-selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>]
* Re: [PATCH for-4.14] IB: Avoid ib_modify_port() failure for RoCE devices [not found] ` <1503475687-5227-1-git-send-email-selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org> @ 2017-08-23 8:57 ` Leon Romanovsky [not found] ` <20170823085712.GM1724-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org> 0 siblings, 1 reply; 3+ messages in thread From: Leon Romanovsky @ 2017-08-23 8:57 UTC (permalink / raw) To: Selvin Xavier Cc: dledford-H+wXaHxf7aLQT0dZR+AlfA, linux-rdma-u79uwXL29TY76Z2rM5mHXA [-- Attachment #1: Type: text/plain, Size: 900 bytes --] On Wed, Aug 23, 2017 at 01:08:07AM -0700, Selvin Xavier wrote: > IB CM calls ib_modify_port() irrespective of link layer. If the > failure is returned, the mad agent gets unregistered for those > devices. Recently, modify_port() hook was removed from some of the > low level drivers as it was always returning success. This breaks > rdma connection establishment over those devices. > For ethernet devices, Qkey violation and port capabilities are not > applicable. So returning success for RoCE when modify_port hook is > is not implemented. > > Cc: Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> > Signed-off-by: Selvin Xavier <selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org> > --- > drivers/infiniband/core/device.c | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > Thanks, Reviewed-by: Leon Romanovsky <leonro-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <20170823085712.GM1724-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>]
* Re: [PATCH for-4.14] IB: Avoid ib_modify_port() failure for RoCE devices [not found] ` <20170823085712.GM1724-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org> @ 2017-08-24 21:36 ` Doug Ledford 0 siblings, 0 replies; 3+ messages in thread From: Doug Ledford @ 2017-08-24 21:36 UTC (permalink / raw) To: Leon Romanovsky, Selvin Xavier; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA On Wed, 2017-08-23 at 11:57 +0300, Leon Romanovsky wrote: > On Wed, Aug 23, 2017 at 01:08:07AM -0700, Selvin Xavier wrote: > > IB CM calls ib_modify_port() irrespective of link layer. If the > > failure is returned, the mad agent gets unregistered for those > > devices. Recently, modify_port() hook was removed from some of the > > low level drivers as it was always returning success. This breaks > > rdma connection establishment over those devices. > > For ethernet devices, Qkey violation and port capabilities are not > > applicable. So returning success for RoCE when modify_port hook is > > is not implemented. > > > > Cc: Leon Romanovsky <leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> > > Signed-off-by: Selvin Xavier <selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org> > > --- > > drivers/infiniband/core/device.c | 11 +++++++---- > > 1 file changed, 7 insertions(+), 4 deletions(-) > > > > Thanks, > Reviewed-by: Leon Romanovsky <leonro-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org> Thanks, applied. -- Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> GPG KeyID: B826A3330E572FDD Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-08-24 21:36 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-23 8:08 [PATCH for-4.14] IB: Avoid ib_modify_port() failure for RoCE devices Selvin Xavier
[not found] ` <1503475687-5227-1-git-send-email-selvin.xavier-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2017-08-23 8:57 ` Leon Romanovsky
[not found] ` <20170823085712.GM1724-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2017-08-24 21:36 ` Doug Ledford
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox