> -----Original Message----- > From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf > Of Michel Dänzer > Sent: Wednesday, August 16, 2017 5:36 AM > To: amd-gfx at lists.freedesktop.org > Subject: [PATCH xf86-video-ati] Use xorg_list_append for the DRM event list > > From: Michel Dänzer <michel.daenzer at amd.com> > > We were adding entries at the start of the list, i.e. the list was > ordered from most recently added to least recently added. However, the > corresponding DRM events are generally expected to arrive in the same > order as they are queued, which means that radeon_drm_queue_alloc > would > generally have to traverse the whole list to find the entry > corresponding to an arrived event. Fix this by adding entries at the end > of the list. > > Signed-off-by: Michel Dänzer <michel.daenzer at amd.com> Reviewed-by: Alex Deucher <alexander.deucher at amd.com> > --- > src/radeon_drm_queue.c | 2 +- > src/radeon_list.h | 7 +++++++ > 2 files changed, 8 insertions(+), 1 deletion(-) > > diff --git a/src/radeon_drm_queue.c b/src/radeon_drm_queue.c > index 31f24350e..37fdafeb9 100644 > --- a/src/radeon_drm_queue.c > +++ b/src/radeon_drm_queue.c > @@ -105,7 +105,7 @@ radeon_drm_queue_alloc(xf86CrtcPtr crtc, ClientPtr > client, > e->handler = handler; > e->abort = abort; > > - xorg_list_add(&e->list, &radeon_drm_queue); > + xorg_list_append(&e->list, &radeon_drm_queue); > > return e->seq; > } > diff --git a/src/radeon_list.h b/src/radeon_list.h > index a0038c96c..f9e4ff73c 100644 > --- a/src/radeon_list.h > +++ b/src/radeon_list.h > @@ -35,6 +35,13 @@ > #define xorg_list_del list_del > #define xorg_list_for_each_entry list_for_each_entry > #define xorg_list_for_each_entry_safe list_for_each_entry_safe > + > +static inline void > +xorg_list_append(struct list *entry, struct list *head) > +{ > + __list_add(entry, head->prev, head); > +} > + > #endif > > #endif /* _RADEON_LIST_H_ */ > -- > 2.14.1 > > _______________________________________________ > amd-gfx mailing list > amd-gfx at lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx