Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3290243imm; Sun, 17 Jun 2018 16:07:03 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJ8Et24GkUhjixu0sFV0utf4KfoowNHdHbqZT32DMLqnPlfHHKPTWjU65Eh4vPVTn574PrX X-Received: by 2002:a65:5bce:: with SMTP id o14-v6mr9001593pgr.449.1529276823731; Sun, 17 Jun 2018 16:07:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529276823; cv=none; d=google.com; s=arc-20160816; b=Ro8PFR397selJP5zuhErlPcRGCXpfEE5pUY9sNEnKbeerJwPFwvuZ7dJ4x3VCP88NK nPZIyvNA1xHSwnaFUdW0xtbDgYL3whXSre0TDJLIscpyG631N8aCCuUpd/8FUM0kWV0d 6x5qJ/Py1mLkcoDyfFif1wpZe0Aab44uUZ6fYE7iEJ790YmDE9kHP2O8EfwOg6ZQUilN 51rwDU8ngJJpiNdAW+ptx1uCPbRXY9XghLgTPWjLdtAnBBAquBm7zTT0Sl+6CGV3I1Un QOcbkh8M3j7dwDSmNITcnWrxDhLCoYranavjndrwz3qXnFFSM6fNemZkKdzP2dfdpoNO S4xA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :organization:references:in-reply-to:date:cc:to:from:subject :message-id:arc-authentication-results; bh=TQNoN0bji9heKwNl2Q/2A6CgYrjF2eEBroaRjrepKK8=; b=Tx23z1up1y9P9i7yhi1F1M0QNoAJu0u9VnLtrUBaEpwuoJv7dAPtJZ+ahYwwkoJS6C Mqaz3RnhtzOZacr6kf/MzAhQzOahTeRAW/tmT7G+inv9Pos2iZE+/sGp7Y0xEXZg1X0a EqAPrFHokX2XlH33xSpbJu1heLZHwNwDF4xkkOUlHg9z470wY66tMxsiWeA3LcljGnu3 BP9JQlIlxvBY1eCmNGpe8UEQdSruE0kOhalW3Ne7w1pIp67qxOVMQrmskWBIM/KqMUqg j7Pnq6C/WKO6dk16NN2b/5eHtme5yEFSkKnNyll0+oZNby3II7zM7aMjKvEJ66PYq75B pvlQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=codethink.co.uk Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r12-v6si11102768pgp.39.2018.06.17.16.06.48; Sun, 17 Jun 2018 16:07:03 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=codethink.co.uk Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754386AbeFQXGY (ORCPT + 99 others); Sun, 17 Jun 2018 19:06:24 -0400 Received: from imap1.codethink.co.uk ([176.9.8.82]:48163 "EHLO imap1.codethink.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754256AbeFQXGX (ORCPT ); Sun, 17 Jun 2018 19:06:23 -0400 Received: from shadbolt.e.decadent.org.uk ([88.96.1.126] helo=xylophone) by imap1.codethink.co.uk with esmtpsa (Exim 4.84_2 #1 (Debian)) id 1fUgkV-00023d-OI; Mon, 18 Jun 2018 00:06:19 +0100 Message-ID: <1529276779.2289.243.camel@codethink.co.uk> Subject: Re: [PATCH 4.4 234/268] enic: enable rq before updating rq descriptors From: Ben Hutchings To: Govindarajulu Varadarajan Cc: stable@vger.kernel.org, "David S. Miller" , Sasha Levin , Greg Kroah-Hartman , LKML Date: Mon, 18 Jun 2018 00:06:19 +0100 In-Reply-To: <20180528100229.860636552@linuxfoundation.org> References: <20180528100202.045206534@linuxfoundation.org> <20180528100229.860636552@linuxfoundation.org> Organization: Codethink Ltd. Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.22.6-1+deb9u1 Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2018-05-28 at 12:03 +0200, Greg Kroah-Hartman wrote: > 4.4-stable review patch.  If anyone has any objections, please let me know. > > ------------------ > > From: Govindarajulu Varadarajan > > [ Upstream commit e8588e268509292550634d9a35f2723a207683b2 ] [...] > --- a/drivers/net/ethernet/cisco/enic/enic_main.c > +++ b/drivers/net/ethernet/cisco/enic/enic_main.c [...] > @@ -1765,8 +1765,12 @@ static int enic_open(struct net_device * > >   return 0; >   >  err_out_free_rq: > - for (i = 0; i < enic->rq_count; i++) > + for (i = 0; i < enic->rq_count; i++) { > + err = vnic_rq_disable(&enic->rq[i]); > + if (err) > + return err; This added code is wrong: it overwrites the error code that was previously in err. If vnic_rq_disable() succeeds, enic_open() will wrongly return 0. If vnic_rq_disable() fails, I still don't think it makes sense to skip the remaining cleanup actins. Ben. >   vnic_rq_clean(&enic->rq[i], enic_free_rq_buf); > + } >   enic_dev_notify_unset(enic); >  err_out_free_intr: >   enic_unset_affinity_hint(enic); > > > -- Ben Hutchings, Software Developer   Codethink Ltd https://www.codethink.co.uk/ Dale House, 35 Dale Street Manchester, M1 2HF, United Kingdom