From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=3.0 tests=DATE_IN_PAST_06_12, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_NEOMUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72214C04AB4 for ; Sun, 19 May 2019 17:26:51 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 4F833204EC for ; Sun, 19 May 2019 17:26:51 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727005AbfESR0u (ORCPT ); Sun, 19 May 2019 13:26:50 -0400 Received: from gofer.mess.org ([88.97.38.141]:35459 "EHLO gofer.mess.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726607AbfESR0u (ORCPT ); Sun, 19 May 2019 13:26:50 -0400 Received: by gofer.mess.org (Postfix, from userid 1000) id 13CF460ADD; Sun, 19 May 2019 11:17:33 +0100 (BST) Date: Sun, 19 May 2019 11:17:33 +0100 From: Sean Young To: Stefan =?iso-8859-1?Q?Br=FCns?= Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, Mauro Carvalho Chehab , Antti Palosaari Subject: Re: [PATCH 1/3] media: dvb-usb-v2: Report error on all error paths Message-ID: <20190519101733.qaef5ricdqnmlf73@gofer.mess.org> References: <20190412011300.5468-1-stefan.bruens@rwth-aachen.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Hi Stefan, On Fri, Apr 12, 2019 at 03:12:58AM +0200, Stefan Brüns wrote: > actual_length != wlen is the only error path which does not generate an > error message. Adding an error message here allows to report a more > specific error and to remove the error reporting from the call sites. > > Also clean up the error paths - in case of an error, the remaining > code is skipped, and ret is returned. Skip setting ret and return > immediately (no cleanup necessary). There is no Signed-off-by: line: https://www.kernel.org/doc/html/latest/process/submitting-patches.html?highlight=signed%20off#sign-your-work-the-developer-s-certificate-of-origin This is needed for merging. Sean > --- > drivers/media/usb/dvb-usb-v2/dvb_usb_urb.c | 15 ++++++++++----- > 1 file changed, 10 insertions(+), 5 deletions(-) > > diff --git a/drivers/media/usb/dvb-usb-v2/dvb_usb_urb.c b/drivers/media/usb/dvb-usb-v2/dvb_usb_urb.c > index 5bafeb6486be..5b32d159f968 100644 > --- a/drivers/media/usb/dvb-usb-v2/dvb_usb_urb.c > +++ b/drivers/media/usb/dvb-usb-v2/dvb_usb_urb.c > @@ -37,14 +37,19 @@ static int dvb_usb_v2_generic_io(struct dvb_usb_device *d, > ret = usb_bulk_msg(d->udev, usb_sndbulkpipe(d->udev, > d->props->generic_bulk_ctrl_endpoint), wbuf, wlen, > &actual_length, 2000); > - if (ret < 0) > + if (ret) { > dev_err(&d->udev->dev, "%s: usb_bulk_msg() failed=%d\n", > KBUILD_MODNAME, ret); > - else > - ret = actual_length != wlen ? -EIO : 0; > + return ret; > + } > + if (actual_length != wlen) { > + dev_err(&d->udev->dev, "%s: usb_bulk_msg() write length=%d, actual=%d\n", > + KBUILD_MODNAME, wlen, actual_length); > + return -EIO; > + } > > - /* an answer is expected, and no error before */ > - if (!ret && rbuf && rlen) { > + /* an answer is expected */ > + if (rbuf && rlen) { > if (d->props->generic_bulk_ctrl_delay) > usleep_range(d->props->generic_bulk_ctrl_delay, > d->props->generic_bulk_ctrl_delay > -- > 2.21.0