Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp1290607pxy; Fri, 23 Apr 2021 05:00:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy9STvvYuG2EzzVsRa1m6/rSgvdgClthBRBh06NFcE3gYqi3csiQyDL5xeR6DRr0wbk3+zJ X-Received: by 2002:aa7:cb90:: with SMTP id r16mr4071948edt.139.1619179221778; Fri, 23 Apr 2021 05:00:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619179221; cv=none; d=google.com; s=arc-20160816; b=coXZIH3do+lBckjHGAjm7AHdZVBArYGwVK55L1G2kH+WgtxFyo6EvvCb1MzymDQvt0 ZGSYIkgMbz4Bz+h9Q3z+18PNteuRI0yS1zFJBU/1pw3/u0/z2A0FfoIc5Az6DNnGDjeF 4cnzonSJdNWaitJEeLCpRa8j0Bp03JjANLYUPfFVJJoIE1reN/wNp6arJ3Hb5LkpYY1E 0KeNmm9Egea3fCrZiIlu2a7ipR5r6DsHDRRgE1awD+1DSTyYPkbjb3KLJLbY/XEDjMia 5GLPYFZNao9xre2CLUx1IGkd8CijpdSlCRpPyRRtrjiMu0kFunTLBgKe2B+fEOKjLDOK 5INw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:date:cc:to:from:subject :message-id; bh=AAdsRO94S8wy3Xh3FBgsjeQZRCxtJn899mit33hcGlY=; b=F51IOiErRP9Csscd3wmN4Ge59XTfxRYs++Xlh7ytEmtpUbrU+kkhZsbBO/Cp5CVyVn 5cQaI16M4E83fgpFzwNlM+eL1HfkvPeVJ2HDPMxDBHSTQ1H8EATdhsHZPKeyR11lCWzY CluoASeSH62VzU3GwDJ/RN0yOG6HDsCdydqQbXKlVo5kxlKYKUdXvTx8ozML9RYKQCXr +Nqzh7mnVfSMGrwDZ4BC3yW0fLNeyvd+kv040AZhe5cunLZQK1iRTVHOi5Ju+A/PWa+I 8XPuFx0tBysf6mwj5cpBrwXv96oTrwAcwPXV1JspdDXc2jnPqHUmdHzs2Q7yz317k664 ePtQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i26si4767451ejc.496.2021.04.23.04.59.57; Fri, 23 Apr 2021 05:00:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242153AbhDWMA3 (ORCPT + 99 others); Fri, 23 Apr 2021 08:00:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37356 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230305AbhDWMA3 (ORCPT ); Fri, 23 Apr 2021 08:00:29 -0400 Received: from sipsolutions.net (s3.sipsolutions.net [IPv6:2a01:4f8:191:4433::2]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 20A47C061574; Fri, 23 Apr 2021 04:59:53 -0700 (PDT) Received: by sipsolutions.net with esmtpsa (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.94) (envelope-from ) id 1lZuTB-00FeW1-OS; Fri, 23 Apr 2021 13:59:37 +0200 Message-ID: <427e33af49758c61bc23cf1eedb6dd6964c40296.camel@sipsolutions.net> Subject: Re: [PATCH] brcmfmac: fix a loop exit condition From: Johannes Berg To: Dan Carpenter , Arend van Spriel , Matthias Brugger Cc: Franky Lin , Hante Meuleman , Chi-hsien Lin , Wright Feng , Chung-hsien Hsu , Kalle Valo , Hans deGoede , linux-wireless@vger.kernel.org, brcm80211-dev-list.pdl@broadcom.com, kernel-janitors@vger.kernel.org Date: Fri, 23 Apr 2021 13:59:36 +0200 In-Reply-To: (sfid-20210423_134702_525310_A6DD2972) References: (sfid-20210423_134702_525310_A6DD2972) Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.38.4 (3.38.4-1.fc33) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-malware-bazaar: not-scanned Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org On Fri, 2021-04-23 at 14:46 +0300, Dan Carpenter wrote: > This code is supposed to loop over the whole board_type[] string. The > current code kind of works just because ascii values start 97 and the > string is likely shorter than that so it will break when we hit the NUL > terminator. But really the condition should be "i < len" instead of > "i < board_type[i]". > > Fixes: 29e354ebeeec ("brcmfmac: Transform compatible string for FW loading") > Signed-off-by: Dan Carpenter > --- >  drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c | 2 +- >  1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c > index a7554265f95f..9b75e396fc50 100644 > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c > @@ -34,7 +34,7 @@ void brcmf_of_probe(struct device *dev, enum brcmf_bus_type bus_type, >   len = strlen(tmp) + 1; >   board_type = devm_kzalloc(dev, len, GFP_KERNEL); >   strscpy(board_type, tmp, len); > - for (i = 0; i < board_type[i]; i++) { > + for (i = 0; i < len; i++) { >   if (board_type[i] == '/') >   board_type[i] = '-'; >   } It should probably just use strreplace() though :) johannes