From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752467AbdKHSlu (ORCPT ); Wed, 8 Nov 2017 13:41:50 -0500 Received: from mout.web.de ([212.227.17.11]:63258 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752380AbdKHSls (ORCPT ); Wed, 8 Nov 2017 13:41:48 -0500 Subject: [PATCH 1/3] net: sched: cls_fw: Use common error handling code in fw_change() From: SF Markus Elfring To: netdev@vger.kernel.org, Cong Wang , "David S. Miller" , Jamal Hadi Salim , Jiri Pirko Cc: LKML , kernel-janitors@vger.kernel.org References: <32efa965-896f-f24a-4d30-586e10c54a5b@users.sourceforge.net> Message-ID: <748e1a55-dd2d-e5e0-1097-73664115668f@users.sourceforge.net> Date: Wed, 8 Nov 2017 19:41:38 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <32efa965-896f-f24a-4d30-586e10c54a5b@users.sourceforge.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 8bit X-Provags-ID: V03:K0:a0IGXnkK3tBRhAnPZVab2Fw8WZOs9xmLDa1Hrd/3yrR7A7XsLsd p3vmQxwIqQ/RKhNm7aST4o9jAv676jPxRi77KGH+nTqLyzvUWbVDZ5OtSVxVohnprtLYpN0 yLoUj2pXHi2YiMpF2qgKjdyRmjfoWyDFdlyBQhyH14CgzMsiBXHEhjULMR1+5O26kT9NK8s pI9/DtAImmQnFO1xzK0qw== X-UI-Out-Filterresults: notjunk:1;V01:K0:cqz9/snoHYY=:k/u4/UHjQKxyz2qh2Du1cB 4kERM2D2z40bmAWHvzYKENePWG+YrcolDhdTxwTAhac42DV9Xa9DJoIPec05hqL3xJeZxDOII nRwMIaO1lum7u/l12pDyRj2ofbWv1Am+obQMpYFJVH3oh9V1pYpyGQGEzR+5bYDtw2mKL28za 2nqbG4HyBC9MqBDhtbpYRl+YUAEfEn0Q+Klg7TryCSy+AdOtgIFB9ueiUoEqpR5ZxPzRGZm2s qW87Z6+5OEMCgi6E+ZNATYzW5KJ89zcifkHsjEax8tB5wjZBUSkP7Y+gZq692BbN2+3RW+sFP +DLxEOUrJuUCTkZ4MHEh+0UzF4X0NvcMe2YBgE9aaR+VG9wo/JBZWd1kqCpfNIrBBOeNVCdWX wQeDXFhDASToUy2FRPHskVbvjFu3i/p/CQ6rCK6VBTj1fg5qb1ZpAn/6bKSDRUIA+WETZfsEa /h3mjOwwuPuP5nJRMbonn3JRrl77+9LYRibVrPxf84RhPv9H4abPN96nuTfdeMZ3JYOR4qRzo zGn6YHKtv79xBhsAyNzSIz/QFnMbCvGo5eqEN+YyQpT5TX4QlqdBzmVQemekD4XYpx9BdDLwC /qpQeMRaJq89Cet3keGXrw9C8X39cWy++yII2RGnkO3bLqlyhiKV5+mJ4iQnfU2DUyk7vWmj/ 2yeV31TZ3PGQRoC9+1Ic1b12pYUT0SPP7GnsdOiGymhSFuFE0wkysyMuZ5C7oIEVXfi53HQQE Pkmzahq0Um3RbrPLEszFyLzP9Yrpabrm9Otrs9RvTmQ08DUHVf0Y45ge3/ExTOhxu5ODwfqEW CvWJ/gmlha6dvjVLhmW+JeasQRlqVpvWhgU+zrjQk8Lps5CPAE= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Markus Elfring Date: Wed, 8 Nov 2017 19:15:08 +0100 Add a jump target so that a bit of exception handling can be better reused in an if branch of this function. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- net/sched/cls_fw.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/net/sched/cls_fw.c b/net/sched/cls_fw.c index 5908f56f76da..567db4d2349f 100644 --- a/net/sched/cls_fw.c +++ b/net/sched/cls_fw.c @@ -281,14 +281,13 @@ static int fw_change(struct net *net, struct sk_buff *in_skb, fnew->tp = f->tp; err = tcf_exts_init(&fnew->exts, TCA_FW_ACT, TCA_FW_POLICE); - if (err < 0) { - kfree(fnew); - return err; - } + if (err < 0) + goto free_filter; err = fw_set_parms(net, tp, fnew, tb, tca, base, ovr); if (err < 0) { tcf_exts_destroy(&fnew->exts); +free_filter: kfree(fnew); return err; } -- 2.15.0