Put a v3 in the subject. There are still paths where this is not freed, so we need a v4. Take your time, there is no rush. > drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c | 15 ++++++++++++++- > 1 file changed, 14 insertions(+), 1 deletion(-) > > diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c b/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c > index 130c852..77eed52 100644 > --- a/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c > +++ b/drivers/staging/rtl8192u/ieee80211/ieee80211_rx.c > @@ -594,12 +594,22 @@ 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) { > + IEEE80211_DEBUG(IEEE80211_DL_ERR, > + "%s(): kmalloc prxbIndicateArray error\n", > + __func__); Don't print an error if kmalloc() fails. kmalloc has its own message. > + return; > + } regards, dan carpenter _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel