[PATCH xf86-video-amdgpu] Call amdgpu_glamor_create_screen_resources after ModifyPixmapHeader
Alex Deucher
alexdeucher at gmail.com
Wed Jun 22 16:21:43 UTC 2016
On Wed, Jun 22, 2016 at 6:01 AM, Michel Dänzer <michel at daenzer.net> wrote:
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> Otherwise, glamor doesn't pick up the new screen pixmap size and
> continues using the old size, leaving garbage in some areas after
> enlarging the screen.
>
> Fixes regression from commit c315c00e44afc91a7c8e2eab5af836d9643ebb88
> ("Propagate failure from amdgpu_set_pixmap_bo").
>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> src/drmmode_display.c | 15 +++++++++------
> 1 file changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/src/drmmode_display.c b/src/drmmode_display.c
> index a07ada6..2cd99cb 100644
> --- a/src/drmmode_display.c
> +++ b/src/drmmode_display.c
> @@ -1936,14 +1936,8 @@ static Bool drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
> xf86DrvMsg(scrn->scrnIndex, X_INFO, " => pitch %d bytes\n", pitch);
> scrn->displayWidth = pitch / cpp;
>
> - if (!amdgpu_glamor_create_screen_resources(scrn->pScreen))
> - goto fail;
> -
> if (info->use_glamor ||
> (info->front_buffer->flags & AMDGPU_BO_FLAGS_GBM)) {
> - if (!amdgpu_set_pixmap_bo(ppix, info->front_buffer))
> - goto fail;
> -
> screen->ModifyPixmapHeader(ppix,
> width, height, -1, -1, pitch, info->front_buffer->cpu_ptr);
> } else {
> @@ -1960,6 +1954,15 @@ static Bool drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
> scrn->pixmapPrivate.ptr = ppix->devPrivate.ptr;
> #endif
>
> + if (!amdgpu_glamor_create_screen_resources(scrn->pScreen))
> + goto fail;
> +
> + if (info->use_glamor ||
> + (info->front_buffer->flags & AMDGPU_BO_FLAGS_GBM)) {
> + if (!amdgpu_set_pixmap_bo(ppix, info->front_buffer))
> + goto fail;
> + }
> +
> /* Clear new buffer */
> gc = GetScratchGC(ppix->drawable.depth, scrn->pScreen);
> ValidateGC(&ppix->drawable, gc);
> --
> 2.8.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
More information about the amd-gfx
mailing list