All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Carpenter <dan.carpenter@oracle.com>
To: Srishti Sharma <srishtishar@gmail.com>
Cc: gregkh@linuxfoundation.org, devel@driverdev.osuosl.org,
	outreachy-kernel@googlegroups.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/4] Staging: rtl8188eu: core: rtw_ap: Use list_for_each_entry_safe
Date: Thu, 19 Oct 2017 11:17:18 +0300	[thread overview]
Message-ID: <20171019081718.luqsobcus7ihzipm@mwanda> (raw)
In-Reply-To: <869f4d40ae746a70e2b7456a143a6f966fbe05c9.1508354332.git.srishtishar@gmail.com>

On Thu, Oct 19, 2017 at 01:01:14AM +0530, Srishti Sharma wrote:
> This is a cleanup patch and doesn't change runtime behaviour. It
> changes an open coded list traversal to use list_for_each_entry_safe.
> 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 <srishtishar@gmail.com>
> ---
>  drivers/staging/rtl8188eu/core/rtw_ap.c | 34 +++++++++------------------------
>  1 file changed, 9 insertions(+), 25 deletions(-)
> 
> diff --git a/drivers/staging/rtl8188eu/core/rtw_ap.c b/drivers/staging/rtl8188eu/core/rtw_ap.c
> index 32a4837..551af9e 100644
> --- a/drivers/staging/rtl8188eu/core/rtw_ap.c
> +++ b/drivers/staging/rtl8188eu/core/rtw_ap.c
> @@ -280,7 +280,7 @@ void	expire_timeout_chk(struct adapter *padapter)
>  {
>  	struct list_head *phead, *plist;
>  	u8 updated = 0;
> -	struct sta_info *psta = NULL;
> +	struct sta_info *psta = NULL, *tmp;
>  	struct sta_priv *pstapriv = &padapter->stapriv;
>  	u8 chk_alive_num = 0;
>  	char chk_alive_list[NUM_STA];
> @@ -292,10 +292,7 @@ void	expire_timeout_chk(struct adapter *padapter)
>  	plist = phead->next;
>  
>  	/* check auth_queue */
> -	while (phead != plist) {
> -		psta = container_of(plist, struct sta_info, auth_list);
> -		plist = plist->next;
> -
> +	list_for_each_entry_safe(psta, tmp, plist, auth_list) {


This one as well.  (I'm reviewing in reverse order)  We don't need
plist, just phead.

regards,
dan carpenter



  reply	other threads:[~2017-10-19  8:17 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-18 19:30 [PATCH 0/4] Code cleanup Srishti Sharma
2017-10-18 19:30 ` [PATCH 1/4] Staging: rtl8188eu: core: rtw_xmit: Use list_for_each_entry_safe Srishti Sharma
2017-10-18 19:31 ` [PATCH 2/4] Staging: rtl8188eu: core: rtw_ap: " Srishti Sharma
2017-10-19  8:17   ` Dan Carpenter [this message]
2017-10-18 19:31 ` [PATCH 3/4] Staging: rtl8188eu: core: rtw_mlme_ext: " Srishti Sharma
2017-10-19  8:14   ` Dan Carpenter
2017-10-18 19:32 ` [PATCH 4/4] Staging: rtl8188eu: core: Use list_entry instead of container_of Srishti Sharma

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171019081718.luqsobcus7ihzipm@mwanda \
    --to=dan.carpenter@oracle.com \
    --cc=devel@driverdev.osuosl.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=outreachy-kernel@googlegroups.com \
    --cc=srishtishar@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.