IB/ipoib: Enable ioctl for to IPoIB rdma netdevs
PATCH 1/1 IB/ipoib: Enable ioctl for to IPoIB rdma netdevs
From: Feras Daoud <ferasda-VPRAkNaXOzVWk0Htik3J/[email protected]>
Adds support for ioctl callback in the RDMA netdevs to allow supporting functions not handled by the generic interface code.
--- drivers/infiniband/ulp/ipoib/ipoib_main.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
drivers/infiniband/ulp/ipoib/ipoib_main.c +15 -0
@@ -99,6 +99,8 @@ static struct net_device *ipoib_get_net_dev_by_params( const union ib_gid *gid, const struct sockaddr *addr, void *client_data);static int ipoib_set_mac (struct net_device *dev,void *addr); +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd);static struct ib_client ipoib_client = { .name ="ipoib" ,
@@ -1680,6 +1682,17 @@ static int ipoib_dev_init_default(struct net_device *dev)return -ENOMEM ; } +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd) +{ +struct ipoib_dev_priv *priv =ipoib_priv (dev); + +if (!priv->rn_ops->ndo_do_ioctl) +return -EOPNOTSUPP ; + +return priv->rn_ops->ndo_do_ioctl (dev, ifr, cmd); +} +int ipoib_dev_init (struct net_device *dev,struct ib_device *ca,int port) {struct ipoib_dev_priv *priv =ipoib_priv (dev);
@@ -1834,6 +1847,7 @@ static const struct net_device_ops ipoib_netdev_ops_pf = { .ndo_set_vf_guid = ipoib_set_vf_guid, .ndo_set_mac_address = ipoib_set_mac, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };static const struct net_device_ops ipoib_netdev_ops_vf = {
@@ -1847,6 +1861,7 @@ static const struct net_device_ops ipoib_netdev_ops_vf = { .ndo_set_rx_mode = ipoib_set_mcast_list, .ndo_get_iflink = ipoib_get_iflink, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };void ipoib_setup_common (struct net_device *dev)
--
2.14.1
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
A message that is not in the archive (sent off-list or not yet received): 20170823053721.18510-1-leon-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org
Yuval Shaia
Reviewed-byQuoted 4 lines · Leon Romanovsky
From: Feras Daoud <ferasda-VPRAkNaXOzVWk0Htik3J/[email protected]>
Adds support for ioctl callback in the RDMA netdevs to allow supporting functions not handled by the generic interface code.
Suggesting:
s/supporting functions/supporting ioctl functions
Quoted 58 lines
Signed-off-by Leon Romanovsky <[email protected]>--- drivers/infiniband/ulp/ipoib/ipoib_main.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)drivers/infiniband/ulp/ipoib/ipoib_main.c +15
-1@@ -99,6 +99,8 @@ static struct net_device *ipoib_get_net_dev_by_params( const union ib_gid *gid, const struct sockaddr *addr, void *client_data);static int ipoib_set_mac (struct net_device *dev,void *addr); +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd);static struct ib_client ipoib_client = { .name ="ipoib" ,@@ -1680,6 +1682,17 @@ static int ipoib_dev_init_default(struct net_device *dev)return -ENOMEM ; } +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd) +{ +struct ipoib_dev_priv *priv =ipoib_priv (dev); + +if (!priv->rn_ops->ndo_do_ioctl) +return -EOPNOTSUPP ; + +return priv->rn_ops->ndo_do_ioctl (dev, ifr, cmd); +} +int ipoib_dev_init (struct net_device *dev,struct ib_device *ca,int port) {struct ipoib_dev_priv *priv =ipoib_priv (dev);@@ -1834,6 +1847,7 @@ static const struct net_device_ops ipoib_netdev_ops_pf = { .ndo_set_vf_guid = ipoib_set_vf_guid, .ndo_set_mac_address = ipoib_set_mac, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };static const struct net_device_ops ipoib_netdev_ops_vf = {@@ -1847,6 +1861,7 @@ static const struct net_device_ops ipoib_netdev_ops_vf = { .ndo_set_rx_mode = ipoib_set_mcast_list, .ndo_get_iflink = ipoib_get_iflink, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };void ipoib_setup_common (struct net_device *dev) --2.14.1
Quoted 4 lines
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 8 lines · Yuval Shaia
Quoted 4 lines · Leon Romanovsky
From: Feras Daoud <ferasda-VPRAkNaXOzVWk0Htik3J/[email protected]>
Adds support for ioctl callback in the RDMA netdevs to allow supporting functions not handled by the generic interface code.
Suggesting:
s/supporting functions/supporting ioctl functions
I think the "ioctl" word in the line above catches all readers who are doing grep in the commit message to find relevant for them, but if you still not convinced and think that it needs to be updated, please say it and I'll resend.
Quoted 2 lines
Reviewed-by Yuval Shaia <[email protected]>
Thanks
Quoted 63 lines
Quoted 63 lines
Signed-off-by Leon Romanovsky <[email protected]>--- drivers/infiniband/ulp/ipoib/ipoib_main.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)drivers/infiniband/ulp/ipoib/ipoib_main.c +15
-1@@ -99,6 +99,8 @@ static struct net_device *ipoib_get_net_dev_by_params( const union ib_gid *gid, const struct sockaddr *addr, void *client_data);static int ipoib_set_mac (struct net_device *dev,void *addr); +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd);static struct ib_client ipoib_client = { .name ="ipoib" ,@@ -1680,6 +1682,17 @@ static int ipoib_dev_init_default(struct net_device *dev)return -ENOMEM ; } +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd) +{ +struct ipoib_dev_priv *priv =ipoib_priv (dev); + +if (!priv->rn_ops->ndo_do_ioctl) +return -EOPNOTSUPP ; + +return priv->rn_ops->ndo_do_ioctl (dev, ifr, cmd); +} +int ipoib_dev_init (struct net_device *dev,struct ib_device *ca,int port) {struct ipoib_dev_priv *priv =ipoib_priv (dev);@@ -1834,6 +1847,7 @@ static const struct net_device_ops ipoib_netdev_ops_pf = { .ndo_set_vf_guid = ipoib_set_vf_guid, .ndo_set_mac_address = ipoib_set_mac, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };static const struct net_device_ops ipoib_netdev_ops_vf = {@@ -1847,6 +1861,7 @@ static const struct net_device_ops ipoib_netdev_ops_vf = { .ndo_set_rx_mode = ipoib_set_mcast_list, .ndo_get_iflink = ipoib_get_iflink, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };void ipoib_setup_common (struct net_device *dev) --2.14.1
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
A message that is not in the archive (sent off-list or not yet received): 20170824092035.GE1724-U/[email protected]
Quoted 7 lines · Leon Romanovsky
Quoted 6 lines · Yuval Shaia
Quoted 4 lines · Leon Romanovsky
From: Feras Daoud <ferasda-VPRAkNaXOzVWk0Htik3J/[email protected]>
Adds support for ioctl callback in the RDMA netdevs to allow supporting functions not handled by the generic interface code.
Quoted 7 lines
Quoted 2 lines
Suggesting:
s/supporting functions/supporting ioctl functionsI think the "ioctl" word in the line above catches all readers who are doing grep in the commit message to find relevant for them, but if you still not convinced and think that it needs to be updated, please say it and I'll resend.
No. This is minor, no need for new post just for that.
Quoted 62 lines
Quoted 3 lines
Reviewed-by Yuval Shaia <[email protected]>Thanks
Quoted 55 lines
Quoted 55 lines
Signed-off-by Leon Romanovsky <[email protected]>--- drivers/infiniband/ulp/ipoib/ipoib_main.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+)drivers/infiniband/ulp/ipoib/ipoib_main.c +15
-0@@ -99,6 +99,8 @@ static struct net_device *ipoib_get_net_dev_by_params( const union ib_gid *gid, const struct sockaddr *addr, void *client_data);static int ipoib_set_mac (struct net_device *dev,void *addr); +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd);static struct ib_client ipoib_client = { .name ="ipoib" ,@@ -1680,6 +1682,17 @@ static int ipoib_dev_init_default(struct net_device *dev)return -ENOMEM ; } +static int ipoib_ioctl (struct net_device *dev,struct ifreq *ifr, +int cmd) +{ +struct ipoib_dev_priv *priv =ipoib_priv (dev); + +if (!priv->rn_ops->ndo_do_ioctl) +return -EOPNOTSUPP ; + +return priv->rn_ops->ndo_do_ioctl (dev, ifr, cmd); +} +int ipoib_dev_init (struct net_device *dev,struct ib_device *ca,int port) {struct ipoib_dev_priv *priv =ipoib_priv (dev);@@ -1834,6 +1847,7 @@ static const struct net_device_ops ipoib_netdev_ops_pf = { .ndo_set_vf_guid = ipoib_set_vf_guid, .ndo_set_mac_address = ipoib_set_mac, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };static const struct net_device_ops ipoib_netdev_ops_vf = {@@ -1847,6 +1861,7 @@ static const struct net_device_ops ipoib_netdev_ops_vf = { .ndo_set_rx_mode = ipoib_set_mcast_list, .ndo_get_iflink = ipoib_get_iflink, .ndo_get_stats64 = ipoib_get_stats, + .ndo_do_ioctl = ipoib_ioctl, };
Quoted 8 lines
Quoted 8 lines
Quoted 8 lines
drivers/infiniband/ulp/ipoib/ipoib_main.c +0
-1void ipoib_setup_common (struct net_device *dev) --2.14.1
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 11 lines · Yuval Shaia
Quoted 10 lines · Leon Romanovsky
Quoted 8 lines · Yuval Shaia
Quoted 4 lines · Leon Romanovsky
From: Feras Daoud <ferasda-VPRAkNaXOzVWk0Htik3J/[email protected]>
Adds support for ioctl callback in the RDMA netdevs to allow supporting functions not handled by the generic interface code.
Suggesting:
s/supporting functions/supporting ioctl functions
Quoted 7 lines
Quoted 4 lines
I think the "ioctl" word in the line above catches all readers who are doing grep in the commit message to find relevant for them, but if you still not convinced and think that it needs to be updated, please say it and I'll resend.
No. This is minor, no need for new post just for that.
Thanks.
Doug Ledford
AppliedQuoted 8 lines · Leon Romanovsky
From: Feras Daoud <ferasda-VPRAkNaXOzVWk0Htik3J/[email protected]>
Adds support for ioctl callback in the RDMA netdevs to allow supporting functions not handled by the generic interface code.
Signed-off-by Leon Romanovsky <[email protected]>
Thanks, applied.
Signature · 8 lines
Doug Ledford <[email protected]> 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 [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html