ofproto-dpif: Revalidate flows after "fdb/flush".
authorBen Pfaff <blp@nicira.com>
Thu, 19 Jan 2012 00:08:46 +0000 (16:08 -0800)
committerBen Pfaff <blp@nicira.com>
Tue, 24 Jan 2012 00:14:37 +0000 (16:14 -0800)
Otherwise bad translations can stick around.

Bug #9253.
Reported-by: Paul Ingram <paul@nicira.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
ofproto/ofproto-dpif.c

index e93e2a7..d1e513e 100644 (file)
@@ -5645,7 +5645,7 @@ static void
 ofproto_unixctl_fdb_flush(struct unixctl_conn *conn, int argc OVS_UNUSED,
                           const char *argv[], void *aux OVS_UNUSED)
 {
-    const struct ofproto_dpif *ofproto;
+    struct ofproto_dpif *ofproto;
 
     ofproto = ofproto_dpif_lookup(argv[1]);
     if (!ofproto) {
@@ -5653,6 +5653,7 @@ ofproto_unixctl_fdb_flush(struct unixctl_conn *conn, int argc OVS_UNUSED,
         return;
     }
     mac_learning_flush(ofproto->ml);
+    ofproto->need_revalidate = true;
 
     unixctl_command_reply(conn, 200, "table successfully flushed");
 }