Message ID | 1501070969-15984-1-git-send-email-arend.vanspriel@broadcom.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 5f5d03143de5e0c593da4ab18fc6393c2815e108 |
Delegated to: | Kalle Valo |
Headers | show |
Arend van Spriel <arend.vanspriel@broadcom.com> writes: > Due to a bugfix in wireless tree and the commit mentioned below a merge > was needed which went haywire. So the submitted change resulted in the > function brcmf_sdiod_sgtable_alloc() being called twice during the probe > thus leaking the memory of the first call. > > Cc: stable@vger.kernel.org # 4.6.x > Fixes: 4d7928959832 ("brcmfmac: switch to new platform data") > Reported-by: Stefan Wahren <stefan.wahren@i2se.com> > Tested-by: Stefan Wahren <stefan.wahren@i2se.com> > Reviewed-by: Hante Meuleman <hante.meuleman@broadcom.com> > Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com> I'll queue this for 4.13.
Arend Van Spriel <arend.vanspriel@broadcom.com> wrote: > Due to a bugfix in wireless tree and the commit mentioned below a merge > was needed which went haywire. So the submitted change resulted in the > function brcmf_sdiod_sgtable_alloc() being called twice during the probe > thus leaking the memory of the first call. > > Cc: stable@vger.kernel.org # 4.6.x > Fixes: 4d7928959832 ("brcmfmac: switch to new platform data") > Reported-by: Stefan Wahren <stefan.wahren@i2se.com> > Tested-by: Stefan Wahren <stefan.wahren@i2se.com> > Reviewed-by: Hante Meuleman <hante.meuleman@broadcom.com> > Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com> Patch applied to wireless-drivers.git, thanks. 5f5d03143de5 brcmfmac: fix memleak due to calling brcmf_sdiod_sgtable_alloc() twice
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c index c3ecec6..f355612 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c @@ -4175,11 +4175,6 @@ struct brcmf_sdio *brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev) goto fail; } - /* allocate scatter-gather table. sg support - * will be disabled upon allocation failure. - */ - brcmf_sdiod_sgtable_alloc(bus->sdiodev); - /* Query the F2 block size, set roundup accordingly */ bus->blocksize = bus->sdiodev->func[2]->cur_blksize; bus->roundup = min(max_roundup, bus->blocksize);