[Intel-gfx] [PATCH 0/2 xf86-video-intel] Two DRI3/Present bug fixes for UXA

Kenneth Graunke kenneth at whitecape.org
Fri Sep 12 12:13:34 PDT 2014


On Wednesday, September 10, 2014 02:09:07 PM Keith Packard wrote:
> Here are a couple of small bug fixes which make DRI3/Present work
> better with UXA.
> 
>  [PATCH 1/2] Do not clear pending kernel events on mode switch
> 
> This patch prevents GL-based compositing managers from wedging when
> performing video mode setting. The problem was that DIX was never
> receiving notification about page flips being completed when one was
> pending across a mode switch.
> 
>  [PATCH 2/2] Correct BO allocation alignment
> 
> This patch makes UXA and Mesa agree about how buffers are allocated
> for images. Without this, UXA was requiring larger padding, which
> meant that converting some textures into pixmaps using DRI3 would
> fail.
> 
> -keith
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Both are:
Tested-by: Kenneth Graunke <kenneth at whitecape.org>

I tested them using DRI3/Present + UXA and DRI3/Present + Glamor on Haswell GT3e.
1. Plug external 2560x1440 DisplayPort monitor into laptop.
2. echo 'exec startkde' > ~/.xinitrc
3. startx
4. xrandr --output DP1 --auto

This used to result in DP1 switching to 2560x1440, but KWin getting stuck waiting on a buffer idle event that never came, so you'd only see a 1920x1080 screen in the top left corner of the display, with either black or white bars in the other area.  Other than the mouse cursor, nothing worked.

With these patches, X works as expected.  Thanks for the fixes, Keith!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.x.org/archives/xorg-devel/attachments/20140912/c535b27e/attachment.sig>


More information about the xorg-devel mailing list