From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752446AbdJ0QU2 (ORCPT ); Fri, 27 Oct 2017 12:20:28 -0400 Received: from mout.web.de ([217.72.192.78]:53455 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752238AbdJ0QUZ (ORCPT ); Fri, 27 Oct 2017 12:20:25 -0400 To: kernel-janitors@vger.kernel.org, Andrew Morton , Arnd Bergmann , Dan Carpenter , Greg Kroah-Hartman From: SF Markus Elfring Subject: [PATCH] misc: bh1770glc: Use common error handling code in bh1770_power_state_store() Cc: LKML , Jonathan Cameron , Samu Onkalo Message-ID: <568ee0ee-8ff1-9739-fa6b-f2eeae53e11a@users.sourceforge.net> Date: Fri, 27 Oct 2017 18:20:02 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:Sdzao6LoaEaN6d8ADFO4xWVtEtQCRn6+iXMTkiauth/bqBXFfdK 3XsBUQm2XhXtOEMicTllxNaY6cS0uMP2WzE3aEErH1Fa0a6MjuAhIysOPbZxuzqwcjDKRGO PKjUMvFbwWTNiRWjT2RjLYG4/p3rXRmxK3MUexiTMIYRlvC1lwQzKUOqjbxoTOT5J4/0QTm eseR2XwSYlXuDuhua6SlA== X-UI-Out-Filterresults: notjunk:1;V01:K0:yAZwvFNVrpE=:SFkqavLKBaRjMeIku+VMUm z2zYPpwkYoyRIzaPyRjDKfs/Ujw5i733CXeDP/VHf4cxWyuv8XiGabSOGr1YqO1QnHbYEYBHO xPI5OtA7wBOSioYpQboMjuhsFxzrnQ1twg21OnDz1WtbPclefgE5WW5HR8goo0Lu8k5lBxPlY 1piaFYA/NM2dxrD0tYe0IaH4sEdBk2IkXc2J4vKgHlovTBKnhk5L+72XSwBJjeCvwEZutOF8H RWHUBXlxPbcpP1l1+T/7gKAFBd9trvIm+l6mIOOuLe/uFzRUzrVohSN25rldWQ6DV4IUCFBwt gITK6UWoFzZFGKb//Z+IoC6cdvNZSawNuCDGoficgmDuIA9xoXgbQ0lWb7/gCou2alrsT8Dme wb62E+3Y0DnqmNArWHAL1dUZTBmyRvkw7O+mbmUIjnFLWiCG7ytgy+dX364eBINu1Qc0VCcrr IAYxFsYerzurpriMw1VylcNBHTs5re5YghKHZ86ZLR3evW52QKj3TsshV1MJh51JD3SifjxRe K4zrXDWCaV5enPeCbj5RThZiB+/duPVn2W74YwV+K4+gJg5OujPAbOX9+T8/gSyxw1dnbs+Gj Uj5dCyT5lMBvgkC8qNBhtrHSZTpDQkkENdQPs4+n400URsfbSKADKmUsN/XHVhI8xQqbWExdE u2AMgrhg5oXOfPmf+BBY4udWLjJ74bCMMuTVenKSGCCRr9ljNB3LZfOsgr94iOHIusnAhxDwv AJNmnANufoDW4aYYHetWIZGtYbZou6AR6gMnczGVwBFEz9lJIbR8WwY3RIGWOCjkhFaJxv4Kk +xI5L/ZcU7EdO9TVvUoNku2/Eftr4kNixl2H0j67Um3wGdOdLk= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Markus Elfring Date: Fri, 27 Oct 2017 18:00:31 +0200 Adjust jump targets 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 --- drivers/misc/bh1770glc.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/misc/bh1770glc.c b/drivers/misc/bh1770glc.c index 9c62bf064f77..c4c108ed88b0 100644 --- a/drivers/misc/bh1770glc.c +++ b/drivers/misc/bh1770glc.c @@ -660,15 +660,14 @@ static ssize_t bh1770_power_state_store(struct device *dev, pm_runtime_get_sync(dev); ret = bh1770_lux_rate(chip, chip->lux_rate_index); - if (ret < 0) { - pm_runtime_put(dev); - goto leave; - } + if (ret < 0) + goto put_runtime; ret = bh1770_lux_interrupt_control(chip, BH1770_ENABLE); if (ret < 0) { +put_runtime: pm_runtime_put(dev); - goto leave; + goto unlock; } /* This causes interrupt after the next measurement cycle */ @@ -681,7 +680,7 @@ static ssize_t bh1770_power_state_store(struct device *dev, pm_runtime_put(dev); } ret = count; -leave: +unlock: mutex_unlock(&chip->mutex); return ret; } -- 2.14.3