[ovs-dev] [PATCH] revalidator: Don't delete non-existent flow.
Joe Stringer
joestringer at nicira.com
Wed Dec 17 03:04:02 UTC 2014
If ukey_acquire() returns ENOENT, then it is unable to locate the ukey
corresponding to the flow and the flow has disappeared since it was
dumped. Don't bother deleting the flow in this case, as it will fail.
Signed-off-by: Joe Stringer <joestringer at nicira.com>
---
ofproto/ofproto-dpif-upcall.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/ofproto/ofproto-dpif-upcall.c b/ofproto/ofproto-dpif-upcall.c
index 89de528..f0cd4cc 100644
--- a/ofproto/ofproto-dpif-upcall.c
+++ b/ofproto/ofproto-dpif-upcall.c
@@ -1857,7 +1857,9 @@ revalidate(struct revalidator *revalidator)
COVERAGE_INC(upcall_ukey_contention);
} else {
log_unexpected_flow(f, error);
- delete_op_init__(&ops[n_ops++], f);
+ if (error != ENOENT) {
+ delete_op_init__(&ops[n_ops++], f);
+ }
}
continue;
}
--
1.7.10.4
More information about the dev
mailing list