Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1299104 > unrolled thread
| Started by | Insu Yun <wuninsu@gmail.com> |
|---|---|
| First post | 2015-12-29 21:00 +0100 |
| Last post | 2015-12-29 21:10 +0100 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH] mwifiex: correctly handling kzalloc Insu Yun <wuninsu@gmail.com> - 2015-12-29 21:00 +0100
Re: [PATCH] mwifiex: correctly handling kzalloc David Miller <davem@davemloft.net> - 2015-12-29 21:10 +0100
| From | Insu Yun <wuninsu@gmail.com> |
|---|---|
| Date | 2015-12-29 21:00 +0100 |
| Subject | [PATCH] mwifiex: correctly handling kzalloc |
| Message-ID | <qL8B4-4SX-7@gated-at.bofh.it> |
Since kzalloc can be failed in memory pressure, it needs to be handled as above kzalloc. Signed-off-by: Insu Yun <wuninsu@gmail.com> --- drivers/net/wireless/mwifiex/sdio.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/wireless/mwifiex/sdio.c b/drivers/net/wireless/mwifiex/sdio.c index 78a8474..d114934 100644 --- a/drivers/net/wireless/mwifiex/sdio.c +++ b/drivers/net/wireless/mwifiex/sdio.c @@ -2053,8 +2053,14 @@ static int mwifiex_init_sdio(struct mwifiex_adapter *adapter) /* Allocate skb pointer buffers */ card->mpa_rx.skb_arr = kzalloc((sizeof(void *)) * card->mp_agg_pkt_limit, GFP_KERNEL); + if (!card->mpa_rx.skb_arr) + return -ENOMEM; + card->mpa_rx.len_arr = kzalloc(sizeof(*card->mpa_rx.len_arr) * card->mp_agg_pkt_limit, GFP_KERNEL); + if (!card->mpa_rx.len_arr) + return -ENOMEM; + ret = mwifiex_alloc_sdio_mpa_buffers(adapter, card->mp_tx_agg_buf_size, card->mp_rx_agg_buf_size); -- 1.9.1 -- 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/
[toc] | [next] | [standalone]
| From | David Miller <davem@davemloft.net> |
|---|---|
| Date | 2015-12-29 21:10 +0100 |
| Message-ID | <qL8KK-5c0-23@gated-at.bofh.it> |
| In reply to | #1299104 |
From: Insu Yun <wuninsu@gmail.com> Date: Tue, 29 Dec 2015 14:55:25 -0500 > Since kzalloc can be failed in memory pressure, > it needs to be handled as above kzalloc. > > Signed-off-by: Insu Yun <wuninsu@gmail.com> > --- > drivers/net/wireless/mwifiex/sdio.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/net/wireless/mwifiex/sdio.c b/drivers/net/wireless/mwifiex/sdio.c > index 78a8474..d114934 100644 > --- a/drivers/net/wireless/mwifiex/sdio.c > +++ b/drivers/net/wireless/mwifiex/sdio.c > @@ -2053,8 +2053,14 @@ static int mwifiex_init_sdio(struct mwifiex_adapter *adapter) > /* Allocate skb pointer buffers */ > card->mpa_rx.skb_arr = kzalloc((sizeof(void *)) * > card->mp_agg_pkt_limit, GFP_KERNEL); > + if (!card->mpa_rx.skb_arr) > + return -ENOMEM; > + > card->mpa_rx.len_arr = kzalloc(sizeof(*card->mpa_rx.len_arr) * > card->mp_agg_pkt_limit, GFP_KERNEL); > + if (!card->mpa_rx.len_arr) > + return -ENOMEM; > + > ret = mwifiex_alloc_sdio_mpa_buffers(adapter, > card->mp_tx_agg_buf_size, > card->mp_rx_agg_buf_size); You can't just return, you have to release all of the resources acquired above the point where the error happens. -- 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/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web