From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Carpenter Date: Fri, 01 Aug 2014 08:23:57 +0000 Subject: [patch] dm9000: NULL dereferences on error in probe() Message-Id: <20140801082357.GC28869@mwanda> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Grant Likely Cc: Rob Herring , "David S. Miller" , Andrew Ruder , Nikita Kiryanov , Igor Grinberg , Paul Gortmaker , Jingoo Han , "Eric W. Biederman" , Michael Abbott , Barry Song , netdev@vger.kernel.org, kernel-janitors@vger.kernel.org The dm9000_release_board() function is called with NULL ->data_req and ->addr_req pointers if dm9000_probe() fails. Signed-off-by: Dan Carpenter --- Old bug, but not serious. diff --git a/drivers/net/ethernet/davicom/dm9000.c b/drivers/net/ethernet/davicom/dm9000.c index 13723c9..23084fb 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) /* release the resources */ - release_resource(db->data_req); + if (db->data_req) + release_resource(db->data_req); kfree(db->data_req); - release_resource(db->addr_req); + if (db->addr_req) + release_resource(db->addr_req); kfree(db->addr_req); } From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Carpenter Subject: [patch] dm9000: NULL dereferences on error in probe() Date: Fri, 1 Aug 2014 11:23:57 +0300 Message-ID: <20140801082357.GC28869@mwanda> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Rob Herring , "David S. Miller" , Andrew Ruder , Nikita Kiryanov , Igor Grinberg , Paul Gortmaker , Jingoo Han , "Eric W. Biederman" , Michael Abbott , Barry Song , netdev@vger.kernel.org, kernel-janitors@vger.kernel.org To: Grant Likely Return-path: Received: from aserp1040.oracle.com ([141.146.126.69]:51769 "EHLO aserp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750892AbaHAIYu (ORCPT ); Fri, 1 Aug 2014 04:24:50 -0400 Content-Disposition: inline Sender: netdev-owner@vger.kernel.org List-ID: The dm9000_release_board() function is called with NULL ->data_req and ->addr_req pointers if dm9000_probe() fails. Signed-off-by: Dan Carpenter --- Old bug, but not serious. diff --git a/drivers/net/ethernet/davicom/dm9000.c b/drivers/net/ethernet/davicom/dm9000.c index 13723c9..23084fb 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) /* release the resources */ - release_resource(db->data_req); + if (db->data_req) + release_resource(db->data_req); kfree(db->data_req); - release_resource(db->addr_req); + if (db->addr_req) + release_resource(db->addr_req); kfree(db->addr_req); }