[ovs-git] Open vSwitch: datapath: Check gso_type for correct sk_buff in queue_gso_packets(). (branch-1.4)

dev at openvswitch.org dev at openvswitch.org
Tue Jul 10 22:31:48 UTC 2012

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, branch-1.4 has been updated
       via  fdd80c39b1822db6c8b5c8274ff0c5cebcaa36b7 (commit)
      from  f266b3db510655f0d6bff84911c5c0d7806f1e4d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit fdd80c39b1822db6c8b5c8274ff0c5cebcaa36b7
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=fdd80c39b1822db6c8b5c8274ff0c5cebcaa36b7
Author: Ben Pfaff <blp at nicira.com>
datapath: Check gso_type for correct sk_buff in queue_gso_packets().
At the point where it was used, skb_shinfo(skb)->gso_type referred to a
post-GSO sk_buff.  Thus, it would always be 0.  We want to know the pre-GSO
gso_type, so we need to obtain it before segmenting.

Before this change, the kernel would pass inconsistent data to userspace:
packets for UDP fragments with nonzero offset would be passed along with
flow keys that indicate a zero offset (that is, the flow key for "later"
fragments claimed to be "first" fragments).  This inconsistency tended
to confuse Open vSwitch userspace, causing it to log messages about
"failed to flow_del" the flows with "later" fragments.

Bug #12394.
Signed-off-by: Ben Pfaff <blp at nicira.com>
Acked-by: Jesse Gross <jesse at nicira.com>


Summary of changes:
 datapath/datapath.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

Open vSwitch

More information about the git mailing list