Mike Pattrick <m...@redhat.com> writes: > When conntrack is reassembling packet fragments, the same reassembly > context can be shared across multiple threads handling different packets > simultaneously. Once a full packet is assembled, it is added to a packet > batch for processing, in the case where there are multiple different pmd > threads accessing conntrack simultaneously, there is a race condition > where the reassembled packet may be added to an arbitrary batch even if > the current batch is available. > > When this happens, the packet may be handled incorrectly as it is > inserted into a random openflow execution pipeline, instead of the > pipeline for that packets flow. > > This change makes a best effort attempt to try to add the defragmented > packet to the current batch. directly. This should succeed most of the > time. > > Fixes: 4ea96698f667 ("Userspace datapath: Add fragmentation handling.") > Reported-at: https://issues.redhat.com/browse/FDP-560 > Signed-off-by: Mike Pattrick <m...@redhat.com> > ---
Applied and backported to branches down to 2.17 Thanks, Mike, Paolo, and Simon. _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev