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: http://git.onelab.eu/?a=commitdiff_plain;h=b89bd39fd949dbed8565e11e690372e0dea19c5f;p=sliver-openvswitch.git 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 ea53d1545..dc7df714a 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. */