答复: [PATCH] sync amdgpu scanout update event before mode setting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Michel,

drmmode_crtc_wait_pending_event(drmmode_crtc, pAMDGPUEnt->fd,
                                                drmmode_crtc->flip_pending ||
                                                drmmode_crtc->scanout_update_pending);

Here, should not use && for this condition?

Thanks
JimQu

________________________________________
å??件人: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> 代表 Qu, Jim <Jim.Qu at amd.com>
å??é??æ?¶é?´: 2018å¹´4æ??18æ?¥ 17:00
�件人: Michel Dänzer
æ??é??: amd-gfx at lists.freedesktop.org
主�: ��: [PATCH] sync amdgpu scanout update event before mode setting

Okay if I make that modification before pushing?

A: Yes , of course :p)

Thanks
JimQu

________________________________________
å??件人: Michel Dänzer <michel at daenzer.net>
å??é??æ?¶é?´: 2018å¹´4æ??18æ?¥ 16:55
�件人: Qu, Jim
æ??é??: amd-gfx at lists.freedesktop.org
主�: Re: [PATCH] sync amdgpu scanout update event before mode setting

On 2018-04-17 01:11 PM, Jim Qu wrote:
> There is a case that when set screen from reverse to normal, the old
> scanout damage is freed in modesetting before sanout update handler,
> so it causes segment fault issue.

Good catch, thanks.


> diff --git a/src/drmmode_display.c b/src/drmmode_display.c
> index 85970d1..ea38e29 100644
> --- a/src/drmmode_display.c
> +++ b/src/drmmode_display.c
> @@ -902,6 +902,9 @@ drmmode_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode,
>               drmmode_crtc_wait_pending_event(drmmode_crtc, pAMDGPUEnt->fd,
>                                               drmmode_crtc->flip_pending);
>
> +             drmmode_crtc_wait_pending_event(drmmode_crtc, pAMDGPUEnt->fd,
> +                                             drmmode_crtc->scanout_update_pending);
> +
>               if (!drmmode_set_mode(crtc, fb, mode, x, y))
>                       goto done;
>
>

The two drmmode_crtc_wait_pending_event invocations can be combined like
this:

                drmmode_crtc_wait_pending_event(drmmode_crtc, pAMDGPUEnt->fd,
                                                drmmode_crtc->flip_pending ||
                                                drmmode_crtc->scanout_update_pending);

Okay if I make that modification before pushing?


--
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer
_______________________________________________
amd-gfx mailing list
amd-gfx at lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux