[PATCH] staging: rtl8723au: fix static checker warning

Geliang Tang geliangtang at 163.com
Tue Mar 1 15:22:23 UTC 2016


Fix the following static checker warning:

 drivers/staging/rtl8723au/core/rtw_sta_mgt.c:365 rtw_get_stainfo23a()
 error: potential NULL dereference 'psta'.

Fixes: e280d71("staging: rtl8723au: use list_for_each_entry*()")
Signed-off-by: Geliang Tang <geliangtang at 163.com>
---
 drivers/staging/rtl8723au/core/rtw_sta_mgt.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/rtl8723au/core/rtw_sta_mgt.c b/drivers/staging/rtl8723au/core/rtw_sta_mgt.c
index 22d857b..5f85ee0 100644
--- a/drivers/staging/rtl8723au/core/rtw_sta_mgt.c
+++ b/drivers/staging/rtl8723au/core/rtw_sta_mgt.c
@@ -346,7 +346,7 @@ void rtw_free_all_stainfo23a(struct rtw_adapter *padapter)
 struct sta_info *rtw_get_stainfo23a(struct sta_priv *pstapriv, const u8 *hwaddr)
 {
 	struct list_head *phead;
-	struct sta_info *psta = NULL;
+	struct sta_info *pos, *psta = NULL;
 	u32 index;
 	const u8 *addr;
 
@@ -362,7 +362,9 @@ struct sta_info *rtw_get_stainfo23a(struct sta_priv *pstapriv, const u8 *hwaddr)
 
 	spin_lock_bh(&pstapriv->sta_hash_lock);
 	phead = &pstapriv->sta_hash[index];
-	list_for_each_entry(psta, phead, hash_list) {
+	list_for_each_entry(pos, phead, hash_list) {
+		psta = pos;
+
 		/*  if found the matched address */
 		if (ether_addr_equal(psta->hwaddr, addr))
 			break;
-- 
2.5.0




More information about the devel mailing list