From: Justin Pettit Date: Sat, 25 Oct 2008 00:24:06 +0000 (-0700) Subject: Fix leaking of flows when output action validation fails. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b89bd39fd949dbed8565e11e690372e0dea19c5f;p=openvswitch Fix leaking of flows when output action validation fails. When action validation fails from a flow add, the flow would be leaked. This caused the kmem cache (which handles allocating flow entries) to be unhappy when we try to unload the OpenFlow module. Thanks to Brandon Heller for catching this. --- diff --git a/datapath/forward.c b/datapath/forward.c index ea53d154..dc7df714 100644 --- a/datapath/forward.c +++ b/datapath/forward.c @@ -224,7 +224,7 @@ add_flow(struct sw_chain *chain, const struct sender *sender, if (v_code != ACT_VALIDATION_OK) { dp_send_error_msg(chain->dp, sender, OFPET_BAD_ACTION, v_code, ofm, ntohs(ofm->header.length)); - goto error; + goto error_free_flow; } /* Fill out flow. */