]> git.proxmox.com Git - mirror_ovs.git/commit - ofproto/ofproto-dpif-sflow.c
ofproto-dpif-sflow: Recursively examine actions inside clone.
authorZoltan Balogh <zoltan.balogh@ericsson.com>
Tue, 9 Jan 2018 18:54:31 +0000 (19:54 +0100)
committerBen Pfaff <blp@ovn.org>
Tue, 23 Jan 2018 18:31:35 +0000 (10:31 -0800)
commit283d866294b128610acde63027283ce738d97b6c
tree5726d963bb208d7ffe7e34ff85bf0e93daa84d60
parent08129599db92fdeb8743e948c4c8109296bac941
ofproto-dpif-sflow: Recursively examine actions inside clone.

Until now, dpif_sflow_read_actions() has ignored actions inside clone.
This means that sflow missed tnl_push actions inside clone, which OVS
now uses to avoid tx recirculation.  This commit fixes the problem
by making dpif_sflow_read_actions() recursively process actions inside
clone.

In addition, some sflow data needs to be stored and restored in
ofproto-dpif-xlate when native_tunnel_output() is invoked. Otherwise the
output action of underlay bridge is getting counted too when sFlow is set
on the overlay bridge.

Both bugs are connected to sflows and were introduced by the commit in
the "Fixes:" tag below.

Signed-off-by: Zoltan Balogh <zoltan.balogh@ericsson.com>
CC: Sugesh Chandran <sugesh.chandran@intel.com>
Fixes: 7c12dfc527a5 ("tunneling: Avoid datapath-recirc by combining recirc actions at xlate.")
Signed-off-by: Ben Pfaff <blp@ovn.org>
ofproto/ofproto-dpif-sflow.c
ofproto/ofproto-dpif-sflow.h
ofproto/ofproto-dpif-upcall.c
ofproto/ofproto-dpif-xlate.c
tests/ofproto-dpif.at