datapath: Send to userspace errors shouldn't halt processing.
authorJesse Gross <jesse@nicira.com>
Tue, 20 Sep 2011 23:29:38 +0000 (16:29 -0700)
committerJesse Gross <jesse@nicira.com>
Wed, 21 Sep 2011 17:24:02 +0000 (10:24 -0700)
If we encounter an error when sending a packet to userspace due to
an explicit action we stop processing further actions.  This makes
sense for things like push vlan, where to continue means outputting
an incorrect packet.  However, sending to userspace is more akin
to outputting to a port, which does not halt further processing.
For consistency, ignore errors in this case as well.

Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
datapath/actions.c

index 83b531a..deaa4dc 100644 (file)
@@ -290,7 +290,7 @@ static int do_execute_actions(struct datapath *dp, struct sk_buff *skb,
                        break;
 
                case OVS_ACTION_ATTR_USERSPACE:
-                       err = output_userspace(dp, skb, nla_get_u64(a));
+                       output_userspace(dp, skb, nla_get_u64(a));
                        break;
 
                case OVS_ACTION_ATTR_SET_TUNNEL: