Hi, there is a problem with xmit hash policy in bonding driver. It doesn't work when using layer 2+3 or 3+4 policy on vlan tagged or PPPoE frames. Functions bond_xmit_hash_policy_l23() and bond_xmit_hash_policy_l34() check if frame ethertype is ETH_P_IP and unless, it fall back to layer 2 hashing. It additionally should check, if frame ethertype is ETH_P_8021Q or ETH_P_PPP_SES and embedded type is ETH_P_IP and if so, also treat it as IP packet. Appropriate patch in attachment.
Created attachment 20795 [details] Patch
(switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface). On Fri, 3 Apr 2009 16:34:24 GMT bugzilla-daemon@bugzilla.kernel.org wrote: > http://bugzilla.kernel.org/show_bug.cgi?id=13004 > > Summary: [bonding] xmit hash policy doesn't recognize vlan > tagged and PPPoE frames > Product: Networking > Version: 2.5 > Platform: All > OS/Version: Linux > Tree: Mainline > Status: NEW > Severity: normal > Priority: P1 > Component: Other > AssignedTo: acme@ghostprotocols.net > ReportedBy: adwol@zonk.pl > Regression: No > > > Hi, > > there is a problem with xmit hash policy in bonding driver. It doesn't work > when using layer 2+3 or 3+4 policy on vlan tagged or PPPoE frames. > Functions bond_xmit_hash_policy_l23() and bond_xmit_hash_policy_l34() > check if frame ethertype is ETH_P_IP and unless, it fall back to layer 2 > hashing. It additionally should check, if frame ethertype is ETH_P_8021Q or > ETH_P_PPP_SES and embedded type is ETH_P_IP and if so, also treat it as > IP packet. > > Appropriate patch in attachment. > Jay, there's a patch in there. Adam, please prefer to submit patches via email as per Documentation/SubmittingPatches rather than via bugzilla, thanks.