ofproto-dpif-xlate: Fix in_port=controller case for NORMAL action
authorYAMAMOTO Takashi <yamamoto@valinux.co.jp>
Wed, 30 Apr 2014 01:10:12 +0000 (10:10 +0900)
committerYAMAMOTO Takashi <yamamoto@valinux.co.jp>
Thu, 1 May 2014 06:49:20 +0000 (15:49 +0900)
The problem mentioned by Simon Horman in the following mail.
http://openvswitch.org/pipermail/dev/2014-April/039492.html

Cc: Simon Horman <horms@verge.net.au>
Acked-by: Ben Pfaff <blp@nicira.com>
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
ofproto/ofproto-dpif-xlate.c

index e2ac9ad..2c34aa8 100644 (file)
@@ -971,9 +971,10 @@ lookup_input_bundle(const struct xbridge *xbridge, ofp_port_t in_port,
         return xport->xbundle;
     }
 
-    /* Special-case OFPP_NONE, which a controller may use as the ingress
-     * port for traffic that it is sourcing. */
-    if (in_port == OFPP_NONE) {
+    /* Special-case OFPP_NONE (OF1.0) and OFPP_CONTROLLER (OF1.1+),
+     * which a controller may use as the ingress port for traffic that
+     * it is sourcing. */
+    if (in_port == OFPP_CONTROLLER || in_port == OFPP_NONE) {
         return &ofpp_none_bundle;
     }