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:12:10 +0000 (16:12 -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 f9084ca66f3959131c4f0524f70b8f9b9092ef6b..471ba643ddc3281c87953a24a994befbc439bdec 100644 (file)
@@ -5815,7 +5815,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) {
@@ -5823,6 +5823,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");
 }