From patchwork Wed Sep 6 14:38:25 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 9940905 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 0CC6460350 for ; Wed, 6 Sep 2017 14:38:49 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CF6A02866D for ; Wed, 6 Sep 2017 14:38:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C3CB928C12; Wed, 6 Sep 2017 14:38:48 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8AD472866D for ; Wed, 6 Sep 2017 14:38:46 +0000 (UTC) Received: from alsa0.perex.cz (localhost [127.0.0.1]) by alsa0.perex.cz (Postfix) with ESMTP id E0533266DB3; Wed, 6 Sep 2017 16:38:42 +0200 (CEST) X-Original-To: alsa-devel@alsa-project.org Delivered-To: alsa-devel@alsa-project.org Received: by alsa0.perex.cz (Postfix, from userid 1000) id 5A657266DBF; Wed, 6 Sep 2017 16:38:41 +0200 (CEST) Received: from mout.web.de (mout.web.de [212.227.15.4]) by alsa0.perex.cz (Postfix) with ESMTP id 97532266B60 for ; Wed, 6 Sep 2017 16:38:37 +0200 (CEST) Received: from [192.168.1.2] ([77.182.162.119]) by smtp.web.de (mrweb004 [213.165.67.108]) with ESMTPSA (Nemesis) id 0Mef0K-1e54zj2YG0-00OCyu; Wed, 06 Sep 2017 16:38:27 +0200 To: alsa-devel@alsa-project.org, Arvind Yadav , Jaroslav Kysela , Takashi Iwai , Torsten Schenk From: SF Markus Elfring Message-ID: <6b3e5ec7-557c-4330-4fa4-221530d6c811@users.sourceforge.net> Date: Wed, 6 Sep 2017 16:38:25 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 Content-Language: en-GB X-Provags-ID: V03:K0:mMxn3WojT++VpNRt2oz5PyqeJLfBGdC3smPIMOEAlRzsOFikSgT IpGEzMDls7hTF9MoM3+7biwpnhx2i2TW8RGgXb8e8M31xBxDBIcV5HqpeSuAHVdqLSGGlsu qhdzRihScOO+d5eSlYYNYDXZM9FRjuqjfGcsNG5cA61DfDjamSv8lKPXju2GIE93rTeqCuI 5GT0c6pcK3KrBWRIbqzDw== X-UI-Out-Filterresults: notjunk:1; V01:K0:iP9Zo1Xm0s4=:e+1FvvEZAIEvUwsYvwbkUW XkqXFHkgzzGOkI9meOv0v8UwkI8wlXHljhb99ray6ACOB5DsQfei23T0sqP4rAF2AQFsqyZBP JEdfEjK/U0CocVLhTLCIiy8Yqo0sXgt6b+V0eAVDOGZMAyIvkw2oXWKN8ENFEfqVFrqzDPpO4 IeUUwNaIlIwWAHDDfa/kJLah22PqHZUM8v4IYahiXU4p1BoKxH2+yp7ANkM9OI/pPYl9XkA/H Nq8fTM0L5RgOVZCjbUri84m5APgKB7k4Q27ymo1IUNdA0ENDPgS07WZ64dDvCYRmKRC1gbCi2 h1wG3Z7kFJljsdPKtsvGAxySf1XsfXAMk3vn/uDovwB0AlFlJU5aLtF0S7rIwjBx+k1UWHWyg Nr7urv/f0uWs8hPnJ99/AydtrdJA2Mieo/CuNDDxX5Kwd3cDpVe8+Fi2jb7jMf5FPvQYoE0l9 lMZEsT82AkvsvWyPGb5Eoc3H2RGQZEFFphvRHZ0Br19g1eGpUCvFvi/MLwniKKJu318QvbHnc YqgLz+EK63QcdRyhLFwAZso+6XHaAZOZO9qTdYlu9TtxagK3L+ZPd2+j8Om9mc5NrVovD7kaT iURVSJuKsf6uI7Zwssv0CtyMsgQT4meojgxNB3HyHGyu8nWHHOir7QQlaRhC1eou7O8UyIYN4 7ZEzRN3Zl7r0n4q2lRUG5NSxK5T++tGKDGwFzVoBGlXBtHAUQkBL8HYMUIBlIMs6/5kk6D4f6 G/gAxRxFEI/7DjvGzBhNFLs16lstIpFwCxc+RRXtqVlI5kbcHJ5o0mDQyZ9VYqxQ4G8fTxmbv wAN1AmUt3U4gokzyOtk9qLrmY/xoFx2134YtlKA+p2LVBz1MbA= Cc: kernel-janitors@vger.kernel.org, LKML Subject: [alsa-devel] [PATCH] ALSA: 6Fire: Use common error handling code in usb6fire_chip_probe() X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org X-Virus-Scanned: ClamAV using ClamSMTP From: Markus Elfring Date: Wed, 6 Sep 2017 16:26:29 +0200 Add a jump target so that a bit of exception handling can be better reused at the end of this function. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- sound/usb/6fire/chip.c | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/sound/usb/6fire/chip.c b/sound/usb/6fire/chip.c index bc2a24f7a791..c7641cb50616 100644 --- a/sound/usb/6fire/chip.c +++ b/sound/usb/6fire/chip.c @@ -143,37 +143,32 @@ static int usb6fire_chip_probe(struct usb_interface *intf, chip->card = card; ret = usb6fire_comm_init(chip); - if (ret < 0) { - usb6fire_chip_destroy(chip); - return ret; - } + if (ret < 0) + goto destroy_chip; ret = usb6fire_midi_init(chip); - if (ret < 0) { - usb6fire_chip_destroy(chip); - return ret; - } + if (ret < 0) + goto destroy_chip; ret = usb6fire_pcm_init(chip); - if (ret < 0) { - usb6fire_chip_destroy(chip); - return ret; - } + if (ret < 0) + goto destroy_chip; ret = usb6fire_control_init(chip); - if (ret < 0) { - usb6fire_chip_destroy(chip); - return ret; - } + if (ret < 0) + goto destroy_chip; ret = snd_card_register(card); if (ret < 0) { dev_err(&intf->dev, "cannot register card."); - usb6fire_chip_destroy(chip); - return ret; + goto destroy_chip; } usb_set_intfdata(intf, chip); return 0; + +destroy_chip: + usb6fire_chip_destroy(chip); + return ret; } static void usb6fire_chip_disconnect(struct usb_interface *intf)