This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-changelog] [xen-unstable] [NET] front: Zero negotiated bits in xen_

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [NET] front: Zero negotiated bits in xen_set_features
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 03 Jul 2006 10:20:56 +0000
Delivery-date: Mon, 03 Jul 2006 03:29:45 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID addde2d2d97a7a5d399e4f6c41206cb303a7669b
# Parent  4b9876fe2f1fbb1996e475e83dc85d843387e353
[NET] front: Zero negotiated bits in xen_set_features

When we reconnect to the backend we need to first zero all negotiated
bits as the functions xen_set_sg and xen_set_tso do not (and are not
supposed to) zero bits when they fail to set them.

This patch also permanently enables the NETIF_F_GSO_ROBUST bit as we
never parse any GSO fields ourselves (even if we did the backend could
not trust us so it's wasted effort).

Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
 linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c |    5 +++++
 1 files changed, 5 insertions(+)

diff -r 4b9876fe2f1f -r addde2d2d97a 
--- a/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c      Mon Jul 03 
09:05:18 2006 +0100
+++ b/linux-2.6-xen-sparse/drivers/xen/netfront/netfront.c      Mon Jul 03 
09:06:59 2006 +0100
@@ -1112,6 +1112,11 @@ static int xennet_set_tso(struct net_dev
 static void xennet_set_features(struct net_device *dev)
+       /* Turn off all GSO bits except ROBUST. */
+       dev->features &= (1 << NETIF_F_GSO_SHIFT) - 1;
+       dev->features |= NETIF_F_GSO_ROBUST;
+       xennet_set_sg(dev, 0);
        if (!xennet_set_sg(dev, 1))
                xennet_set_tso(dev, 1);

Xen-changelog mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [NET] front: Zero negotiated bits in xen_set_features, Xen patchbot-unstable <=