From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752569AbdJDNQM (ORCPT ); Wed, 4 Oct 2017 09:16:12 -0400 Received: from mail-pg0-f67.google.com ([74.125.83.67]:35882 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752167AbdJDNQJ (ORCPT ); Wed, 4 Oct 2017 09:16:09 -0400 X-Google-Smtp-Source: AOwi7QDBQw7VASIW158P2vjoBbFtPtz4Dyentu9K1R60SpqDzB3gJyaC7NzUdXyOpw937oxCMb09cg== From: Srishti Sharma To: gregkh@linuxfoundation.org Cc: devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org, outreachy-kernel@googlegroups.com, Srishti Sharma Subject: [PATCH] Staging: rtl8188eu: core: Use list_for_each_entry_safe Date: Wed, 4 Oct 2017 18:45:59 +0530 Message-Id: <1507122959-5616-1-git-send-email-srishtishar@gmail.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Use list_for_each_entry_safe to make code more compact. Done using the following semantic patch by coccinelle. @r@ struct list_head* l; expression e; identifier m,list_del_init,f; type T1; T1* pos; iterator name list_for_each_entry_safe; @@ f(...){ +T1* tmp; <+... -while(...) +list_for_each_entry_safe(pos,tmp,l,m) { ... -pos = container_of(l,T1,m); ... -l=e; <+... list_del_init(&pos->m) ...+> } ...+> } Signed-off-by: Srishti Sharma --- drivers/staging/rtl8188eu/core/rtw_xmit.c | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) diff --git a/drivers/staging/rtl8188eu/core/rtw_xmit.c b/drivers/staging/rtl8188eu/core/rtw_xmit.c index e8d9858..6d8820b 100644 --- a/drivers/staging/rtl8188eu/core/rtw_xmit.c +++ b/drivers/staging/rtl8188eu/core/rtw_xmit.c @@ -1869,7 +1869,7 @@ void wakeup_sta_to_xmit(struct adapter *padapter, struct sta_info *psta) u8 update_mask = 0, wmmps_ac = 0; struct sta_info *psta_bmc; struct list_head *xmitframe_plist, *xmitframe_phead; - struct xmit_frame *pxmitframe = NULL; + struct xmit_frame *pxmitframe = NULL, *tmp; struct sta_priv *pstapriv = &padapter->stapriv; spin_lock_bh(&psta->sleep_q.lock); @@ -1877,11 +1877,7 @@ void wakeup_sta_to_xmit(struct adapter *padapter, struct sta_info *psta) xmitframe_phead = get_list_head(&psta->sleep_q); xmitframe_plist = xmitframe_phead->next; - while (xmitframe_phead != xmitframe_plist) { - pxmitframe = container_of(xmitframe_plist, struct xmit_frame, list); - - xmitframe_plist = xmitframe_plist->next; - + list_for_each_entry_safe(pxmitframe, tmp, xmitframe_plist, list) { list_del_init(&pxmitframe->list); switch (pxmitframe->attrib.priority) { @@ -1958,11 +1954,8 @@ void wakeup_sta_to_xmit(struct adapter *padapter, struct sta_info *psta) xmitframe_phead = get_list_head(&psta_bmc->sleep_q); xmitframe_plist = xmitframe_phead->next; - while (xmitframe_phead != xmitframe_plist) { - pxmitframe = container_of(xmitframe_plist, struct xmit_frame, list); - - xmitframe_plist = xmitframe_plist->next; - + list_for_each_entry_safe(pxmitframe, tmp, xmitframe_plist, + list) { list_del_init(&pxmitframe->list); psta_bmc->sleepq_len--; @@ -1997,7 +1990,7 @@ void xmit_delivery_enabled_frames(struct adapter *padapter, struct sta_info *pst { u8 wmmps_ac = 0; struct list_head *xmitframe_plist, *xmitframe_phead; - struct xmit_frame *pxmitframe = NULL; + struct xmit_frame *pxmitframe = NULL, *tmp; struct sta_priv *pstapriv = &padapter->stapriv; spin_lock_bh(&psta->sleep_q.lock); @@ -2005,11 +1998,7 @@ void xmit_delivery_enabled_frames(struct adapter *padapter, struct sta_info *pst xmitframe_phead = get_list_head(&psta->sleep_q); xmitframe_plist = xmitframe_phead->next; - while (xmitframe_phead != xmitframe_plist) { - pxmitframe = container_of(xmitframe_plist, struct xmit_frame, list); - - xmitframe_plist = xmitframe_plist->next; - + list_for_each_entry_safe(pxmitframe, tmp, xmitframe_plist, list) { switch (pxmitframe->attrib.priority) { case 1: case 2: -- 2.7.4