All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] net/mlx5: fix link status query
@ 2017-01-25 12:42 Shahaf Shuler
  2017-01-30 15:25 ` Nélio Laranjeiro
  2017-01-31 11:45 ` [PATCH v2] " Shahaf Shuler
  0 siblings, 2 replies; 19+ messages in thread
From: Shahaf Shuler @ 2017-01-25 12:42 UTC (permalink / raw)
  To: adrien.mazarguil, nelio.laranjeiro; +Cc: dev, stable

Trying to query the link status through new kernel ioctl API
ETHTOOL_GLINKSETTINGS was always failing due to kernel bug.
The bug was fixed on version 4.9
this patch uses the legacy ioctl API for lower kernels.

Fixes: 188408719888 ("net/mlx5: fix support for newer link speeds")
CC: stable@dpdk.org

Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
---
while the ETHTOOL_GLINKSETTINGS API was introduced on kernel v4.6 [1]                   
the bug was fixed only on kernel v4.9 [2]                                               
                                                                                        
[1] https://github.com/torvalds/linux/commit/3f1ac7a700d039c61d8d8b99f28d605d489a60cf   
[2] https://github.com/torvalds/linux/commit/8006f6bf5e39f11c697f48df20382b81d2f2f8b8   
---
 drivers/net/mlx5/mlx5_ethdev.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_ethdev.c b/drivers/net/mlx5/mlx5_ethdev.c
index 8efdff7..e77238f 100644
--- a/drivers/net/mlx5/mlx5_ethdev.c
+++ b/drivers/net/mlx5/mlx5_ethdev.c
@@ -46,6 +46,7 @@
 #include <netinet/in.h>
 #include <linux/ethtool.h>
 #include <linux/sockios.h>
+#include <linux/version.h>
 #include <fcntl.h>
 
 /* DPDK headers don't like -pedantic. */
@@ -697,7 +698,7 @@ struct priv *
 
 /**
  * Retrieve physical link information (unlocked version using new ioctl from
- * Linux 4.5).
+ * Linux 4.9).
  *
  * @param dev
  *   Pointer to Ethernet device structure.
@@ -707,7 +708,7 @@ struct priv *
 static int
 mlx5_link_update_unlocked_gs(struct rte_eth_dev *dev, int wait_to_complete)
 {
-#ifdef ETHTOOL_GLINKSETTINGS
+#if KERNEL_VERSION(4, 9, 0) <= LINUX_VERSION_CODE
 	struct priv *priv = mlx5_get_priv(dev);
 	struct ethtool_link_settings edata = {
 		.cmd = ETHTOOL_GLINKSETTINGS,
-- 
1.8.3.1

^ permalink raw reply related	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2017-02-09 14:45 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-25 12:42 [PATCH 1/2] net/mlx5: fix link status query Shahaf Shuler
2017-01-30 15:25 ` Nélio Laranjeiro
2017-01-31 11:45 ` [PATCH v2] " Shahaf Shuler
2017-01-31 15:42   ` Nélio Laranjeiro
2017-02-01 18:31     ` [dpdk-stable] " Ferruh Yigit
2017-02-02  8:20       ` Nélio Laranjeiro
2017-02-02 10:18         ` Ferruh Yigit
2017-01-31 16:17   ` Ferruh Yigit
2017-02-01  6:53     ` Shahaf Shuler
2017-02-01  9:07       ` Adrien Mazarguil
2017-02-01 11:13         ` Ferruh Yigit
2017-02-01 12:57           ` Adrien Mazarguil
2017-02-01 18:11             ` Ferruh Yigit
2017-02-02  8:45               ` Adrien Mazarguil
2017-02-02 10:15                 ` Ferruh Yigit
2017-02-02 10:37                   ` Adrien Mazarguil
2017-02-02 10:43                     ` Ferruh Yigit
2017-02-09 12:29   ` [PATCH v3] " Shahaf Shuler
2017-02-09 14:45     ` [dpdk-stable] " Ferruh Yigit

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.