mirror of
https://github.com/X11Libre/xf86-video-ati.git
synced 2026-03-24 01:24:43 +00:00
Use drm_abort_one in drm_queue_handler
At this point, we've already established that e->handler is NULL, no need to check again in drm_queue_handle_one. This also makes it clearer what's happening. (Ported from amdgpu commit eda571222f5a6be47f8897e82d85199bb9d95251)
This commit is contained in:
committed by
Michel Dänzer
parent
06957e3067
commit
189b6facb3
@@ -72,6 +72,19 @@ radeon_drm_queue_handle_one(struct radeon_drm_queue_entry *e)
|
||||
free(e);
|
||||
}
|
||||
|
||||
/*
|
||||
* Abort one queued DRM entry, removing it
|
||||
* from the list, calling the abort function and
|
||||
* freeing the memory
|
||||
*/
|
||||
static void
|
||||
radeon_drm_abort_one(struct radeon_drm_queue_entry *e)
|
||||
{
|
||||
xorg_list_del(&e->list);
|
||||
e->abort(e->crtc, e->data);
|
||||
free(e);
|
||||
}
|
||||
|
||||
static void
|
||||
radeon_drm_queue_handler(struct xorg_list *signalled, unsigned int frame,
|
||||
unsigned int sec, unsigned int usec, void *user_ptr)
|
||||
@@ -82,7 +95,7 @@ radeon_drm_queue_handler(struct xorg_list *signalled, unsigned int frame,
|
||||
xorg_list_for_each_entry_safe(e, tmp, &radeon_drm_queue, list) {
|
||||
if (e->seq == seq) {
|
||||
if (!e->handler) {
|
||||
radeon_drm_queue_handle_one(e);
|
||||
radeon_drm_abort_one(e);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -173,19 +186,6 @@ radeon_drm_queue_alloc(xf86CrtcPtr crtc, ClientPtr client,
|
||||
return e->seq;
|
||||
}
|
||||
|
||||
/*
|
||||
* Abort one queued DRM entry, removing it
|
||||
* from the list, calling the abort function and
|
||||
* freeing the memory
|
||||
*/
|
||||
static void
|
||||
radeon_drm_abort_one(struct radeon_drm_queue_entry *e)
|
||||
{
|
||||
xorg_list_del(&e->list);
|
||||
e->abort(e->crtc, e->data);
|
||||
free(e);
|
||||
}
|
||||
|
||||
/*
|
||||
* Abort drm queue entries for a client
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user