aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2014-08-01 04:23:57 -0400
committerDavid S. Miller <davem@davemloft.net>2014-08-02 18:28:23 -0400
commita5536e109453bc625461d287619f4bffe233ade9 (patch)
treee08c8a566be1f1390737e8ea09895295244682b9
parent188b1210f3d633e27dc97309c97315ce484122ec (diff)
dm9000: NULL dereferences on error in probe()
The dm9000_release_board() function is called with NULL ->data_req and ->addr_req pointers if dm9000_probe() fails. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/davicom/dm9000.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/ethernet/davicom/dm9000.c b/drivers/net/ethernet/davicom/dm9000.c
index 13723c96d1a2..23084fb2090e 100644
--- a/drivers/net/ethernet/davicom/dm9000.c
+++ b/drivers/net/ethernet/davicom/dm9000.c
@@ -817,10 +817,12 @@ dm9000_release_board(struct platform_device *pdev, struct board_info *db)
817 817
818 /* release the resources */ 818 /* release the resources */
819 819
820 release_resource(db->data_req); 820 if (db->data_req)
821 release_resource(db->data_req);
821 kfree(db->data_req); 822 kfree(db->data_req);
822 823
823 release_resource(db->addr_req); 824 if (db->addr_req)
825 release_resource(db->addr_req);
824 kfree(db->addr_req); 826 kfree(db->addr_req);
825} 827}
826 828