From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965029AbdKBVaq (ORCPT ); Thu, 2 Nov 2017 17:30:46 -0400 Received: from mout.web.de ([212.227.15.4]:50669 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S964984AbdKBVap (ORCPT ); Thu, 2 Nov 2017 17:30:45 -0400 To: devel@driverdev.osuosl.org, Greg Kroah-Hartman , Thomas Petazzoni Cc: LKML , kernel-janitors@vger.kernel.org From: SF Markus Elfring Subject: [PATCH] staging: fbtft: fb_ssd1331: Use common error handling code in write_reg8_bus8() Message-ID: <233f4d2c-e099-e097-5484-7df2770d076f@users.sourceforge.net> Date: Thu, 2 Nov 2017 22:30:31 +0100 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:yIaXhcp7Y1h868S3HzgUjmi51b4MqRlJOD0C8ywzRW3v1L/kg1p SXLUA+liODfTsfy3CZtuT1SzC+lc9gHPmt87IYmvRKZb8o3xoh6JW5McLPT9aVaaK5EvC5V BbzS20YN6X9GlEPnmrBW8CViQ6oKJ88eOFixlkXd0bT4SWv7FJhCh4IQtNGw4zJrPG/mA/3 XJlV/xw0p4ArtbRscbfBw== X-UI-Out-Filterresults: notjunk:1;V01:K0:sX+OCzeSKIA=:LYMeHVtJXVtFBEV4PdrBtC eFFFPP5sWHv6X4XHpsS0+rtfMLsyl2Eb06/zZb8lOLS9q1nVzMdcsQjXQ3YQcguECH2caE2h3 HWcX6Laa+PwN6c5ZXNYrMSLnmpGbFa5w3BhuyohcyQg/TppYDDlA0uYr+wgxdP4IjhiGsmWCx VP8gdccdH6eHaVH17Q4+PE04e437PuFcc5A0itheDpvdojHygbZe4s+/7CGRSMR4lYb2g7UaW cOBcR4lOpWtXePzSJ6CjCAMg+R1U3cEs7YzQBaRj4IxinAt2suYkEPEH35yrjW0tEFVPdaSqH DBVwBnMojfOO0HHjkYNYqCEInN2dk5E5P9hBs5gplTZ2O/zXqJj7JFMGuIorqsudmDjS1GEzB qFdCbyHX1By7hPYcpefejn8iFsYpXCTWgLXaZyUR6IB1k2iNpuR25HArXzhgHnGMSqujSn/ot hYJ1rLcPXkQkJ0bnyVdSvJlsdq9hxkpZrlnhHeuVwmcOekwfNugpgJlv8t4w+j7rGNz/0iD32 UZFT9d/n/DqhnwG6xtaqfcRpNjZWQl7t/OiByC3BRTJ81MwOXBCxA6UmDaOr8kKxTWuJoJCfs vFbGefn0HQimCQQYxfJDUR2wF4OiNnrZo7fS1TfigBP9mWVbVqZ/+WTP8e7ReWaX8/bcMw++6 LpK6315X8ZG9qxQcS7eMk1NSUh5nOwvGnuIa2hhLlZlb+kPQbiK8sUMr2AlA5XICdKL053c6D FGHw1ewNN8EVYrbhMsJ7pBH3YJ+IA5HvZUqqNA0eLj7vWr/BBK4vDTjD79RtaTjC7nl4LFpqf XVrevVqeug9xCF83KIAqMEF5ZGhz3x3T6lHXLHUM7qHD361vfo= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Markus Elfring Date: Thu, 2 Nov 2017 22:27:13 +0100 * Add a jump target so that a specific error message is stored only once at the end of this function implementation. * Replace two calls of the function "dev_err" by goto statements. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- drivers/staging/fbtft/fb_ssd1331.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/drivers/staging/fbtft/fb_ssd1331.c b/drivers/staging/fbtft/fb_ssd1331.c index 9aa9864fcf30..b3a8f2668951 100644 --- a/drivers/staging/fbtft/fb_ssd1331.c +++ b/drivers/staging/fbtft/fb_ssd1331.c @@ -76,12 +76,9 @@ static void write_reg8_bus8(struct fbtft_par *par, int len, ...) if (par->gpio.dc != -1) gpio_set_value(par->gpio.dc, 0); ret = par->fbtftops.write(par, par->buf, sizeof(u8)); - if (ret < 0) { - va_end(args); - dev_err(par->info->device, - "write() failed and returned %d\n", ret); - return; - } + if (ret < 0) + goto end_va; + len--; if (len) { @@ -89,16 +86,17 @@ static void write_reg8_bus8(struct fbtft_par *par, int len, ...) while (i--) *buf++ = (u8)va_arg(args, unsigned int); ret = par->fbtftops.write(par, par->buf, len * (sizeof(u8))); - if (ret < 0) { - va_end(args); - dev_err(par->info->device, - "write() failed and returned %d\n", ret); - return; - } + if (ret < 0) + goto end_va; } if (par->gpio.dc != -1) gpio_set_value(par->gpio.dc, 1); va_end(args); + return; + +end_va: + va_end(args); + dev_err(par->info->device, "write() failed and returned %d\n", ret); } /* -- 2.15.0