Return-path: Received: from mail-gw2-out.broadcom.com ([216.31.210.63]:62188 "EHLO mail-gw2-out.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754715AbaKPNCS (ORCPT ); Sun, 16 Nov 2014 08:02:18 -0500 Message-ID: <5468A056.9030200@broadcom.com> (sfid-20141116_140307_638133_B746EFCA) Date: Sun, 16 Nov 2014 14:02:14 +0100 From: Arend van Spriel MIME-Version: 1.0 To: Dmitry Torokhov CC: "John W. Linville" , Brett Rudley , "Franky (Zhenhui) Lin" , Hante Meuleman , Pieter-Paul Giesberts , , , , , Hans de Goede Subject: Re: [PATCH] brcmfmac: fix error handling of irq_of_parse_and_map References: <20141114221221.GA35541@dtor-ws> In-Reply-To: <20141114221221.GA35541@dtor-ws> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Sender: linux-wireless-owner@vger.kernel.org List-ID: On 11/14/14 23:12, Dmitry Torokhov wrote: > Return value of irq_of_parse_and_map() is unsigned int, with 0 > indicating failure, so testing for negative result never works. Whoops, that is bad. Thanks for catching this. It probably needs to go to stable as well for 3.17 kernel. +Cc: stable@vger.kernel.org # v3.17 +Acked-by: Arend van Spriel > Signed-off-by: Dmitry Torokhov > --- > > Not tested, found by casual code inspection. > > drivers/net/wireless/brcm80211/brcmfmac/of.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/wireless/brcm80211/brcmfmac/of.c b/drivers/net/wireless/brcm80211/brcmfmac/of.c > index eb3fce82..c824570 100644 > --- a/drivers/net/wireless/brcm80211/brcmfmac/of.c > +++ b/drivers/net/wireless/brcm80211/brcmfmac/of.c > @@ -40,8 +40,8 @@ void brcmf_of_probe(struct brcmf_sdio_dev *sdiodev) > return; > > irq = irq_of_parse_and_map(np, 0); > - if (irq< 0) { > - brcmf_err("interrupt could not be mapped: err=%d\n", irq); > + if (!irq) { > + brcmf_err("interrupt could not be mapped\n"); > devm_kfree(dev, sdiodev->pdata); > return; > }