Bug 738389 - Patch needed to allow MTU >1500 on vif prior to connecting to bridge [rhel-5.7.z]
Summary: Patch needed to allow MTU >1500 on vif prior to connecting to bridge [rhel-5....
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel-xen
Version: 5.6
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: ---
Assignee: Phillip Lougher
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On: 697021 746600
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-09-14 17:16 UTC by RHEL Product and Program Management
Modified: 2018-11-14 12:45 UTC (History)
16 users (show)

Fixed In Version: kernel-2.6.18-274.5.1.el5
Doc Type: Bug Fix
Doc Text:
Prior to this update, MTU was constrained to 1500 unless Scatter/Gather I/O (SG) was supported by the NIC; in the case of netback, this would mean unless SG was supported by the front-end. Because the hotplugging scripts ran before features have been negotiated with the front-end, at that point SG would still be disabled, breaking anything using larger MTUs, (for example, cluster communication using that NIC). This update inverts the behavior and assumes SG to be present until negotiations prove otherwise (in such a case, MTU is automatically reduced).
Clone Of:
Environment:
Last Closed: 2011-10-20 17:31:40 UTC


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2011:1386 normal SHIPPED_LIVE Important: kernel security, bug fix, and enhancement update 2011-10-20 17:28:15 UTC

Description RHEL Product and Program Management 2011-09-14 17:16:44 UTC
This bug has been copied from bug #697021 and has been proposed
to be backported to 5.7 z-stream (EUS).

Comment 7 Phillip Lougher 2011-09-17 01:42:58 UTC
in kernel-2.6.18-274.5.1.el5

linux-2.6-virt-xen-allow-arbitrary-mtu-size-until-frontend-connected.patch

Comment 10 Paolo Bonzini 2011-10-14 14:59:07 UTC
This causes a regression with Windows guests, bug 746225.

Comment 11 errata-xmlrpc 2011-10-20 17:31:40 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2011-1386.html

Comment 12 Martin Prpič 2011-10-27 09:20:59 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Prior to this update, MTU was constrained to 1500 unless Scatter/Gather I/O (SG) was supported by the NIC; in the case of netback, this would mean unless SG was supported by the front-end. Because the hotplugging scripts ran before features have been negotiated with the front-end, at that point SG would still be disabled, breaking anything using larger MTUs, (for example, cluster communication using that NIC). This update inverts the behavior and assumes SG to be present until negotiations prove otherwise (in such a case, MTU is automatically reduced).

Comment 13 Tom 2012-02-21 14:32:23 UTC
Can you please share the detail of 746225? I am seeing following patch in kernel-2.6.18-274.12.1 and it fixes one of Windows guests issue we were facing. We want to confirm whether the problem we were facing is same as the problem described in 746225. Also, without this patch, what else could be affected?

diff -Naurp linux-2.6.18.4/drivers/xen/netback/interface.c linux-2.6.18-redhat/drivers/xen/netback/interface.c
--- linux-2.6.18.4/drivers/xen/netback/interface.c      2012-02-20 19:22:37.000000000 -0700
+++ linux-2.6.18-redhat/drivers/xen/netback/interface.c 2012-02-20 19:22:59.000000000 -0700
@@ -93,8 +93,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)


Note You need to log in before you can comment on or make changes to this bug.