Thanks! I have simply verified in our testing enviroment, and it really worked!
At 2019-10-24 20:32:11, "Ilya Maximets" <[email protected]> wrote: >Mixing of RSS hash with recirculation depth is useful for flow lookup >because same packet after recirculation should match with different >datapath rule. Setting of the mixed value back to the packet is >completely unnecessary because recirculation depth is different on >each recirculation, i.e. we will have different packet hash for >flow lookup anyway. > >This should fix the issue that packets from the same flow could be >directed to different buckets based on a dp_hash or different ports of >a balanced bonding in case they were recirculated different number of >times (e.g. due to conntrack rules). >With this change, the original RSS hash will remain the same making >it possible to calculate equal dp_hash values for such packets. > >Reported-at: >https://mail.openvswitch.org/pipermail/ovs-dev/2019-September/363127.html >Fixes: 048963aa8507 ("dpif-netdev: Reset RSS hash when recirculating.") >Signed-off-by: Ilya Maximets <[email protected]> >--- > lib/dpif-netdev.c | 1 - > 1 file changed, 1 deletion(-) > >diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c >index 4546b55e8..c09b8fd95 100644 >--- a/lib/dpif-netdev.c >+++ b/lib/dpif-netdev.c >@@ -6288,7 +6288,6 @@ dpif_netdev_packet_get_rss_hash(struct dp_packet *packet, > recirc_depth = *recirc_depth_get_unsafe(); > if (OVS_UNLIKELY(recirc_depth)) { > hash = hash_finish(hash, recirc_depth); >- dp_packet_set_rss_hash(packet, hash); > } > return hash; > } >-- >2.17.1 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
