|
[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 |