mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Julia Lawall <julia.lawall@lip6.fr>
To: "Christian König" <christian.koenig@amd.com>
Cc: Arushi Singhal <arushisinghal19971997@gmail.com>,
	alexander.deucher@amd.com, David Airlie <airlied@linux.ie>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	outreachy-kernel@googlegroups.com,
	Tomi Valkeinen <tomi.valkeinen@ti.com>,
	amd-gfx@lists.freedesktop.org
Subject: Re: [Outreachy kernel] Re: [PATCH] gpu: drm: Use list_first_entry instead of list_entry
Date: Mon, 19 Mar 2018 12:06:31 +0100 (CET)	[thread overview]
Message-ID: <alpine.DEB.2.20.1803191204550.3392@hadrien> (raw)
In-Reply-To: <8b1e22f8-7a05-b66b-8825-7d4d97e46dac@amd.com>

[-- Attachment #1: Type: text/plain, Size: 5258 bytes --]



On Mon, 19 Mar 2018, Christian König wrote:

> Mhm, actually that patch isn't correct. What we grab get here is the next
> entry, not the first one.
>
> We don't have an alias list_next_entry for list_first_entry?

As compared to the semantic patch I proposed earlier today, it would seem
that list_first_entry is useful when the types are different?  One would
have to check the result of course, but a list eleemnt with the same type
as the structure that contains the list might be unlikely?

julia

>
> Regards,
> Christian.
>
> Am 18.03.2018 um 22:51 schrieb Arushi Singhal:
> > This patch replaces list_entry with list_first_entry as it makes the
> > code more clear.
> > Done using coccinelle:
> >
> > @@
> > expression e;
> > @@
> > (
> > - list_entry(e->next,
> > + list_first_entry(e,
> >    ...)
> > |
> > - list_entry(e->prev,
> > + list_last_entry(e,
> >    ...)
> > )
> >
> > Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com>
> > ---
> >   drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c | 4 ++--
> >   drivers/gpu/drm/omapdrm/dss/display.c  | 4 ++--
> >   drivers/gpu/drm/radeon/radeon_sa.c     | 4 ++--
> >   3 files changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c
> > b/drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c
> > index 3144400..646f593 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c
> > @@ -158,7 +158,7 @@ static void amdgpu_sa_bo_try_free(struct
> > amdgpu_sa_manager *sa_manager)
> >   	if (sa_manager->hole->next == &sa_manager->olist)
> >   		return;
> >   -	sa_bo = list_entry(sa_manager->hole->next, struct amdgpu_sa_bo,
> > olist);
> > +	sa_bo = list_first_entry(sa_manager->hole, struct amdgpu_sa_bo,
> > olist);
> >   	list_for_each_entry_safe_from(sa_bo, tmp, &sa_manager->olist, olist) {
> >   		if (sa_bo->fence == NULL ||
> >   		    !dma_fence_is_signaled(sa_bo->fence)) {
> > @@ -183,7 +183,7 @@ static inline unsigned amdgpu_sa_bo_hole_eoffset(struct
> > amdgpu_sa_manager *sa_ma
> >   	struct list_head *hole = sa_manager->hole;
> >     	if (hole->next != &sa_manager->olist) {
> > -		return list_entry(hole->next, struct amdgpu_sa_bo,
> > olist)->soffset;
> > +		return list_first_entry(hole, struct amdgpu_sa_bo,
> > olist)->soffset;
> >   	}
> >   	return sa_manager->size;
> >   }
> > diff --git a/drivers/gpu/drm/omapdrm/dss/display.c
> > b/drivers/gpu/drm/omapdrm/dss/display.c
> > index 0c9480b..fb9ecae 100644
> > --- a/drivers/gpu/drm/omapdrm/dss/display.c
> > +++ b/drivers/gpu/drm/omapdrm/dss/display.c
> > @@ -158,8 +158,8 @@ struct omap_dss_device *omap_dss_get_next_device(struct
> > omap_dss_device *from)
> >   				goto out;
> >   			}
> >   -			dssdev = list_entry(l->next, struct omap_dss_device,
> > -					panel_list);
> > +			dssdev = list_first_entry(l, struct omap_dss_device,
> > +						  panel_list);
> >   			omap_dss_get_device(dssdev);
> >   			goto out;
> >   		}
> > diff --git a/drivers/gpu/drm/radeon/radeon_sa.c
> > b/drivers/gpu/drm/radeon/radeon_sa.c
> > index 197b157..66c0482 100644
> > --- a/drivers/gpu/drm/radeon/radeon_sa.c
> > +++ b/drivers/gpu/drm/radeon/radeon_sa.c
> > @@ -158,7 +158,7 @@ static void radeon_sa_bo_try_free(struct
> > radeon_sa_manager *sa_manager)
> >   	if (sa_manager->hole->next == &sa_manager->olist)
> >   		return;
> >   -	sa_bo = list_entry(sa_manager->hole->next, struct radeon_sa_bo,
> > olist);
> > +	sa_bo = list_first_entry(sa_manager->hole, struct radeon_sa_bo,
> > olist);
> >   	list_for_each_entry_safe_from(sa_bo, tmp, &sa_manager->olist, olist) {
> >   		if (sa_bo->fence == NULL ||
> > !radeon_fence_signaled(sa_bo->fence)) {
> >   			return;
> > @@ -182,7 +182,7 @@ static inline unsigned radeon_sa_bo_hole_eoffset(struct
> > radeon_sa_manager *sa_ma
> >   	struct list_head *hole = sa_manager->hole;
> >     	if (hole->next != &sa_manager->olist) {
> > -		return list_entry(hole->next, struct radeon_sa_bo,
> > olist)->soffset;
> > +		return list_first_entry(hole, struct radeon_sa_bo,
> > olist)->soffset;
> >   	}
> >   	return sa_manager->size;
> >   }
>
> --
> You received this message because you are subscribed to the Google Groups
> "outreachy-kernel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to outreachy-kernel+unsubscribe@googlegroups.com.
> To post to this group, send email to outreachy-kernel@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/outreachy-kernel/8b1e22f8-7a05-b66b-8825-7d4d97e46dac%40amd.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups "outreachy-kernel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to outreachy-kernel+unsubscribe@googlegroups.com.
To post to this group, send email to outreachy-kernel@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/outreachy-kernel/alpine.DEB.2.20.1803191204550.3392%40hadrien.
For more options, visit https://groups.google.com/d/optout.

  reply	other threads:[~2018-03-19 11:06 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-18 21:51 [Outreachy kernel] " Arushi Singhal
2018-03-19  9:40 ` [Outreachy kernel] " Christian König
2018-03-19 11:06   ` Julia Lawall [this message]
2018-03-19 13:15     ` Christian König
2018-03-19 13:17       ` Fwd: " Christian König

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=alpine.DEB.2.20.1803191204550.3392@hadrien \
    --to=julia.lawall@lip6.fr \
    --cc=airlied@linux.ie \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=arushisinghal19971997@gmail.com \
    --cc=christian.koenig@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=outreachy-kernel@googlegroups.com \
    --cc=tomi.valkeinen@ti.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®