[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] xen-netfront: report link speed to ethtool



Add .get_settings function, return fake data so that ethtool can get
enough information. For some application like VCS, this is useful,
otherwise some of application logic will get panic.
The reported data refers to VMWare vmxnet.

Signed-off-by: Xin Wei Hu <xwhu@xxxxxxxx>
Signed-off-by: Chunyan Liu <cyliu@xxxxxxxx>
Signed-off-by: Olaf Hering <olaf@xxxxxxxxx>

---
 drivers/net/xen-netfront.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)

Index: linux-3.2-rc2/drivers/net/xen-netfront.c
===================================================================
--- linux-3.2-rc2.orig/drivers/net/xen-netfront.c
+++ linux-3.2-rc2/drivers/net/xen-netfront.c
@@ -1727,6 +1727,17 @@ static void netback_changed(struct xenbu
        }
 }
 
+static int xennet_get_settings(struct net_device *netdev, struct ethtool_cmd 
*ecmd)
+{
+       ecmd->supported = SUPPORTED_1000baseT_Full | SUPPORTED_TP;
+       ecmd->advertising = ADVERTISED_TP;
+       ecmd->port = PORT_TP;
+       ecmd->transceiver = XCVR_INTERNAL;
+       ecmd->speed = SPEED_1000;
+       ecmd->duplex = DUPLEX_FULL;
+       return 0;
+}
+
 static const struct xennet_stat {
        char name[ETH_GSTRING_LEN];
        u16 offset;
@@ -1774,6 +1785,7 @@ static const struct ethtool_ops xennet_e
 {
        .get_link = ethtool_op_get_link,
 
+       .get_settings = xennet_get_settings,
        .get_sset_count = xennet_get_sset_count,
        .get_ethtool_stats = xennet_get_ethtool_stats,
        .get_strings = xennet_get_strings,

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.