ofproto-dpif-upcall: Don't delete modified ukeys.
authorJoe Stringer <joe@ovn.org>
Thu, 7 Jan 2016 19:47:46 +0000 (11:47 -0800)
committerJoe Stringer <joe@ovn.org>
Fri, 8 Jan 2016 00:03:37 +0000 (16:03 -0800)
commit06a80fcdd93cdc07f6349429eb966a49e230b599
treeb5ddc991383ffe32338c832cdd79ac23015d21d1
parent1969f09c93eab0b9c15b8fd8316f40c4e91dcedb
ofproto-dpif-upcall: Don't delete modified ukeys.

If revalidation returns the result UKEY_DELETE, then both the ukey and
its corresponding flow should be deleted. However, if revalidation
returns UKEY_MODIFY, the ukey itself should be modified in-place and
should not be deleted.

Fix this by only applying the ukey deletion to ukeys whose datapath
operations delete a flow.

This may fix statistics accounting issues in rare cases involving
OpenFlow rule modification where actions are updated but flows remain
the same.

Found by inspection.

Signed-off-by: Joe Stringer <joe@ovn.org>
Acked-by: Jarno Rajahalme <jarno@ovn.org>
ofproto/ofproto-dpif-upcall.c