diff mbox

cxgb4: correctly handling failed allocation

Message ID 1451427611-32338-1-git-send-email-wuninsu@gmail.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Insu Yun Dec. 29, 2015, 10:20 p.m. UTC
Since t4_alloc_mem can be failed in memory pressure,
if not properly handled, NULL dereference could be happened.

Signed-off-by: Insu Yun <wuninsu@gmail.com>
---
 drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

David Miller Jan. 4, 2016, 10:19 p.m. UTC | #1
From: Insu Yun <wuninsu@gmail.com>
Date: Tue, 29 Dec 2015 17:20:11 -0500

> Since t4_alloc_mem can be failed in memory pressure,
> if not properly handled, NULL dereference could be happened.
> 
> Signed-off-by: Insu Yun <wuninsu@gmail.com>

Applied.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c b/drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c
index c308429..11dd91e 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c
@@ -295,6 +295,10 @@  struct clip_tbl *t4_init_clip_tbl(unsigned int clipt_start,
 		INIT_LIST_HEAD(&ctbl->hash_list[i]);
 
 	cl_list = t4_alloc_mem(clipt_size*sizeof(struct clip_entry));
+	if (!cl_list) {
+		t4_free_mem(ctbl);
+		return NULL;
+	}
 	ctbl->cl_list = (void *)cl_list;
 
 	for (i = 0; i < clipt_size; i++) {