[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] enable ethtool for xen loopback interface (network in dom0)
Hi, this patch allows disabling the tx checksums on the xen loopback interface, which is used for the virtual interfaces of dom0 instead of netfront/netback. I need to issue ethtool -K eth0 tx off to work around a bad checksum problem, which has been reported for domUs a few months ago. I'm bridging dom0's eth0 to a domU where I do NAT to a different virtual interface. Without this change, I get lots of packets with bad checksums. Jan Signed-off-by: Jan Niehusmann <jan@xxxxxxxxxx> --- linux-2.6.12/drivers/xen/netback/loopback.c.orig 2006-01-14 12:46:42.000000000 +0100 +++ linux-2.6.12/drivers/xen/netback/loopback.c 2006-01-14 11:59:49.000000000 +0100 @@ -27,6 +27,7 @@ #include <linux/inetdevice.h> #include <linux/etherdevice.h> #include <linux/skbuff.h> +#include <linux/ethtool.h> #include <net/dst.h> static int nloopbacks = 8; @@ -122,6 +123,12 @@ /*dev->mtu = 16*1024;*/ } +static struct ethtool_ops network_ethtool_ops = +{ + .get_tx_csum = ethtool_op_get_tx_csum, + .set_tx_csum = ethtool_op_set_tx_csum, +}; + static int __init make_loopback(int i) { struct net_device *dev1, *dev2; @@ -141,6 +148,8 @@ dev1->features |= NETIF_F_NO_CSUM; dev2->features |= NETIF_F_IP_CSUM; + SET_ETHTOOL_OPS(dev2, &network_ethtool_ops); + /* * Initialise a dummy MAC address for the 'dummy backend' interface. We * choose the numerically largest non-broadcast address to prevent the _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |