[ovs-dev] [PATCH v2 01/24] datapath: return an error instead of doing BUG_ON()

Greg Rose gvrose8192 at gmail.com
Wed Sep 9 19:19:58 UTC 2020


From: Eelco Chaudron <echaudro at redhat.com>

Upstream commit:
    commit a734d1f4c2fc962ef4daa179e216df84a8ec5f84
    Author: Eelco Chaudron <echaudro at redhat.com>
    Date:   Thu May 2 16:12:38 2019 -0400

    net: openvswitch: return an error instead of doing BUG_ON()

    For all other error cases in queue_userspace_packet() the error is
    returned, so it makes sense to do the same for these two error cases.

    Reported-by: Davide Caratti <dcaratti at redhat.com>
    Signed-off-by: Eelco Chaudron <echaudro at redhat.com>
    Acked-by: Flavio Leitner <fbl at sysclose.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Cc: Eelco Chaudron <echaudro at redhat.com>
Signed-off-by: Greg Rose <gvrose8192 at gmail.com>
---
 datapath/datapath.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/datapath/datapath.c b/datapath/datapath.c
index 05c1e4274..d604bfd36 100644
--- a/datapath/datapath.c
+++ b/datapath/datapath.c
@@ -469,7 +469,8 @@ static int queue_userspace_packet(struct datapath *dp, struct sk_buff *skb,
 	upcall->dp_ifindex = dp_ifindex;
 
 	err = ovs_nla_put_key(key, key, OVS_PACKET_ATTR_KEY, false, user_skb);
-	BUG_ON(err);
+	if (err)
+		goto out;
 
 	if (upcall_info->userdata)
 		__nla_put(user_skb, OVS_PACKET_ATTR_USERDATA,
@@ -486,7 +487,9 @@ static int queue_userspace_packet(struct datapath *dp, struct sk_buff *skb,
 		}
 		err = ovs_nla_put_tunnel_info(user_skb,
 					      upcall_info->egress_tun_info);
-		BUG_ON(err);
+		if (err)
+			goto out;
+
 		nla_nest_end(user_skb, nla);
 	}
 
-- 
2.17.1



More information about the dev mailing list