Paolo Bonzini
2011-Oct-17 07:41 UTC
[Xen-devel] [PATCH] netback: disable features not supported by netfront
From: pbonzini@redhat.com # HG changeset patch # User Paolo Bonzini <pbonzini@redhat.com> # Date 1318837036 -7200 # Node ID eb896361fc70b60b9a257d0c82e19633a11b9d41 # Parent 3c900d6a5f6a51ff1547f21fef30ab8b92feccc9 netback: disable features not supported by netfront Netback works by first setting all possible features, and then resetting some after connection, if the front-end didn''t negotiate them. Except that in the old 2.6.18 tree the "resetting" part was missing. In the pvops tree, this should work correctly through the fix_features mechanism. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> diff --git a/drivers/xen/netback/interface.c b/drivers/xen/netback/interface.c --- a/drivers/xen/netback/interface.c +++ b/drivers/xen/netback/interface.c @@ -98,8 +98,9 @@ static int netbk_change_mtu(struct net_d void netif_set_features(netif_t *netif) { struct net_device *dev = netif->dev; - int features = dev->features; + int features; + features = dev->features & ~(NETIF_F_SG|NETIF_F_TSO|NETIF_F_IP_CSUM); if (netif->can_sg) features |= NETIF_F_SG; if (netif->gso) _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Jan Beulich
2011-Oct-17 08:20 UTC
Re: [Xen-devel] [PATCH] netback: disable features not supported by netfront
>>> On 17.10.11 at 09:41, Paolo Bonzini <pbonzini@redhat.com> wrote: > From: pbonzini@redhat.com > > # HG changeset patch > # User Paolo Bonzini <pbonzini@redhat.com> > # Date 1318837036 -7200 > # Node ID eb896361fc70b60b9a257d0c82e19633a11b9d41 > # Parent 3c900d6a5f6a51ff1547f21fef30ab8b92feccc9 > netback: disable features not supported by netfront > > Netback works by first setting all possible features, and then > resetting some after connection, if the front-end didn''t negotiate them. > Except that in the old 2.6.18 tree the "resetting" part was missing.Indeed - I always wondered about that. Applied, thanks! Jan> In the pvops tree, this should work correctly through the fix_features > mechanism. > > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> > > diff --git a/drivers/xen/netback/interface.c b/drivers/xen/netback/interface.c > --- a/drivers/xen/netback/interface.c > +++ b/drivers/xen/netback/interface.c > @@ -98,8 +98,9 @@ static int netbk_change_mtu(struct net_d > void netif_set_features(netif_t *netif) > { > struct net_device *dev = netif->dev; > - int features = dev->features; > + int features; > > + features = dev->features & ~(NETIF_F_SG|NETIF_F_TSO|NETIF_F_IP_CSUM); > if (netif->can_sg) > features |= NETIF_F_SG; > if (netif->gso) > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Reasonably Related Threads
- [PATCH] linux-2.6.18/backends: use xenbus_be.ko interfaces instead of open-coding them
- problems with netback
- [PATCH] netback: add ethtool stat to track copied skbs
- [PATCH net-next v3 5/5] xen-netback: enable IPv6 TCP GSO to the guest
- [PATCH 2/10] Add support for netfront/netback acceleration drivers