[RFC xserver 06/12] present: Check the whole exec queue on event

Michel Dänzer michel at daenzer.net
Wed Aug 30 07:19:03 UTC 2017


On 30/08/17 02:16 PM, Louis-Francis Ratté-Boulianne wrote:
> Later events are sometimes added in front of the queue (e.g.
> if page flipping fails) so we need to check the whole queue
> on event.
> 
> Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb at collabora.com>
> ---
>  present/present.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/present/present.c b/present/present.c
> index aa9c041df..70cbad8f8 100644
> --- a/present/present.c
> +++ b/present/present.c
> @@ -527,8 +527,6 @@ present_event_notify(uint64_t event_id, uint64_t ust, uint64_t msc)
>              present_execute(vblank, ust, msc);
>              return;
>          }
> -        if (match < 0)
> -            break;
>      }
>      xorg_list_for_each_entry(vblank, &present_flip_queue, event_queue) {
>          if (vblank->event_id == event_id) {
> 

Hmm, I guess this can happen if present_flip() fails in
present_execute()? Do you have a reproducible way to trigger a problem
without this change?


Should the same code in present_abort_vblank() be removed as well?


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the xorg-devel mailing list