Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932621AbbLVMp6 (ORCPT ); Tue, 22 Dec 2015 07:45:58 -0500 Received: from mail-wm0-f54.google.com ([74.125.82.54]:35895 "EHLO mail-wm0-f54.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755210AbbLVMp4 (ORCPT ); Tue, 22 Dec 2015 07:45:56 -0500 Date: Tue, 22 Dec 2015 12:45:50 +0000 From: Okash Khawaja To: dan.carpenter@oracle.com, gregkh@linuxfoundation.org Cc: devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v4] staging: rtl8192u: fix large frame size compiler warning Message-ID: <20151222124550.GA11629@bytefire-computer> References: <20151217110435.GG5284@mwanda> <20151217203038.GA28254@bytefire-computer> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20151217203038.GA28254@bytefire-computer> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2988 Lines: 81 On Thu, Dec 17, 2015 at 08:30:38PM +0000, Okash Khawaja wrote: > This patch fixes following compiler warning: > > drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c: In function > ‘RxReorderIndicatePacket’: > drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c:758:1: warning: the > frame size of 1064 bytes is larger than 1024 bytes > [-Wframe-larger-than=] > > It replaces the statically allocated array prxbIndicateArray with > a kmalloc'd one. > > Signed-off-by: Okash Khawaja > --- > drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c b/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c > index 130c852..28ad63a 100644 > --- a/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c > +++ b/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c > @@ -594,12 +594,18 @@ static void RxReorderIndicatePacket(struct ieee80211_device *ieee, > { > PRT_HIGH_THROUGHPUT pHTInfo = ieee->pHTInfo; > PRX_REORDER_ENTRY pReorderEntry = NULL; > - struct ieee80211_rxb *prxbIndicateArray[REORDER_WIN_SIZE]; > + struct ieee80211_rxb **prxbIndicateArray; > u8 WinSize = pHTInfo->RxReorderWinSize; > u16 WinEnd = (pTS->RxIndicateSeq + WinSize -1)%4096; > u8 index = 0; > bool bMatchWinStart = false, bPktInBuf = false; > IEEE80211_DEBUG(IEEE80211_DL_REORDER,"%s(): Seq is %d,pTS->RxIndicateSeq is %d, WinSize is %d\n",__func__,SeqNum,pTS->RxIndicateSeq,WinSize); > + > + prxbIndicateArray = kmalloc(sizeof(struct ieee80211_rxb *) * > + REORDER_WIN_SIZE, GFP_KERNEL); > + if (!prxbIndicateArray) > + return; > + > /* Rx Reorder initialize condition.*/ > if (pTS->RxIndicateSeq == 0xffff) { > pTS->RxIndicateSeq = SeqNum; > @@ -618,6 +624,8 @@ static void RxReorderIndicatePacket(struct ieee80211_device *ieee, > kfree(prxb); > prxb = NULL; > } > + > + kfree(prxbIndicateArray); > return; > } > > @@ -741,6 +749,7 @@ static void RxReorderIndicatePacket(struct ieee80211_device *ieee, > // Indicate packets > if(index>REORDER_WIN_SIZE){ > IEEE80211_DEBUG(IEEE80211_DL_ERR, "RxReorderIndicatePacket(): Rx Reorer buffer full!! \n"); > + kfree(prxbIndicateArray); > return; > } > ieee80211_indicate_packets(ieee, prxbIndicateArray, index); > @@ -755,6 +764,8 @@ static void RxReorderIndicatePacket(struct ieee80211_device *ieee, > pTS->RxPktPendingTimer.expires = jiffies + MSECS(pHTInfo->RxReorderPendingTime); > add_timer(&pTS->RxPktPendingTimer); > } > + > + kfree(prxbIndicateArray); > } > > static u8 parse_subframe(struct sk_buff *skb, > -- > 2.5.2 > Hi, Has a return path been missed out now? Thanks, Okash -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/