[PATCH v5 01/13] xf86: Add PRIME flipping functions to Screen

2016-04-12 Thread Alex Goins
Adds typedefs for (*RRStartFlippingPixmapTrackingProcPtr), (*RREnableSharedPixmapFlippingProcPtr), and (*RRDisableSharedPixmapFlippingProcPtr) in randrstr.h. Adds typedefs for (*PresentSharedPixmapProcPtr), (*SharedPixmapNotifyDamageProcPtr), (*RequestSharedPixmapNotifyDamageProcPtr), and (*StopFl

[PATCH v5 05/13] modesetting: Always tear down scanout pixmap

2016-04-12 Thread Alex Goins
drmmode_set_scanout_pixmap_(cpu/gpu) would only do teardown if ppix == NULL. This meant that if there were consecutive calls to SetScanoutPixmap(ppix != NULL) without calls to SetScanoutPixmap(ppix == NULL) in between, earlier calls would be leaked. RRReplaceScanoutPixmap() does this today. Inste

[PATCH v5 06/13] modesetting: Always load ms->drmmode.pageflip

2016-04-12 Thread Alex Goins
ms->drmmode.pageflip was only loaded from options if ms->drmmode.glamor was defined, otherwise it would always assume FALSE. PRIME Synchronization requires ms->drmmode.pageflip even if we aren't using glamor, so load it unconditionally. v1: N/A v2: N/A v3: N/A v4: N/A v5: Initial commit Signed-o

[PATCH v5 08/13] modesetting: Fix mmap leak in scanout_pixmap_cpu

2016-04-12 Thread Alex Goins
drmmode_set_target_scanout_pixmap_cpu() uses drmmode_map_slave_bo(), which maps a dumb bo. However, when cleaning up scanout pixmaps, it never destroys it, leading to a leak of mapped memory. With enough modesets, this can result in an insane amount of memory being mapped. Add dumb_bo_destroy() of

[PATCH v5 11/13] modesetting: Disable Reverse PRIME for i915

2016-04-12 Thread Alex Goins
Reverse PRIME seems to be designed with discrete graphics as a sink in mind, designed to do an extra copy from sysmem to vidmem to prevent a discrete chip from needing to scan out from sysmem. The criteria it used to detect this case is if we are a GPU screen and Glamor accelerated. It's possible

[PATCH v5 13/13] modesetting: Implement PRIME syncing as a source

2016-04-12 Thread Alex Goins
Implements (Start/Stop)FlippingPixmapTracking, PresentSharedPixmap, and RequestSharedPixmapNotifyDamage, the source functions for PRIME synchronization and double buffering. Allows modesetting driver to be used as a source with PRIME synchronization. v1: N/A v2: N/A v3: N/A v4: Initial commit v5:

[PATCH v5 12/13] modesetting: Consistent whitespace in driver.c

2016-04-12 Thread Alex Goins
For some reason a couple of the dirty functions in driver.c used 8 spaces per tab instead of 4 like the rest of the file. Fix this to make it more consistent and give me more room to work in ms_dirty_update in subsequent commits. v1: N/A v2: N/A v3: N/A v4: Initial commit v5: Unchanged Signed-off

[PATCH v5 09/13] modesetting: Suspend and resume flipping with DPMS

2016-04-12 Thread Alex Goins
DPMS would prevent page flip / vblank events from being raised, freezing the screen until PRIME flipping was reinitialized. To handle DPMS cleanly, suspend PRIME page flipping when DPMS mode is not on, and resume it when DPMS mode is on. v1: Initial commit v2: Moved flipping_active check from prev

[PATCH v5 04/13] modesetting: Internal storage of scanout pixmaps

2016-04-12 Thread Alex Goins
modesetting relied on randr_crtc->scanout_pixmap being consistent with calls to SetScanoutPixmap, which is very fragile and makes a lot of assumptions about the caller's behavior. For example, RRReplaceScanoutPixmap(), when dropping off with !size_fits, will set randr_crtc->scanout_pixmap = NULL a

[PATCH v5 07/13] modesetting: Implement PRIME syncing as a sink

2016-04-12 Thread Alex Goins
Implements (Enable/Disable)SharedPixmapFlipping and SharedPixmapNotifyDamage, the sink functions for PRIME synchronization and double buffering. Allows modesetting driver to be used as a sink with PRIME synchronization. Changes dispatch_slave_dirty to flush damage from both scanout pixmaps. Chang

[PATCH v5 10/13] modesetting: Blacklist UDL from PRIME sync

2016-04-12 Thread Alex Goins
UDL (USB 2.0 DisplayLink DRM driver) has strange semantics when it comes to vblank events and damage tracking when page flipping. When doing a page flip, it will instantly raise a vblank event without waiting for vblank. However, it has no support for DRM_IOCTL_WAIT_VBLANK. It also seems to have s

[PATCH v5 03/13] randr: Add ability to turn PRIME sync off

2016-04-12 Thread Alex Goins
Adds an output parameter to disable PRIME synchronization. Output parameter is created when the user calls 'xrandr --setprovideroutputsource ' to prevent polluting output parameters of non-PRIME configurations. Defaults to on, so if the user wants PRIME synchronization they don't need to do anyt

[PATCH v5 00/13] PRIME Synchronization

2016-04-12 Thread Alex Goins
Hello all, These patches change the xserver to support setting up PRIME with double buffering, and implement double buffered PRIME sink and source support in the modesetting driver. In addition to these changes, I've upstreamed a couple of patches to the i915 DRM driver that mesh with these, and h

[PATCH v5 02/13] randr/xf86: Add PRIME Synchronization / Double Buffer

2016-04-12 Thread Alex Goins
Changes PRIME to use double buffering and synchronization if all required driver functions are available. rrcrtc.c: Changes rrSetupPixmapSharing() to use double buffering and synchronization in the case that all required driver functions are available. Otherwise, falls back to unsynchr

Re: [PATCH xserver] Search for DRI drivers at LIBGL_DRIVERS_PATH environment variable.

2016-04-12 Thread Alan Coopersmith
On 04/12/16 10:59 AM, Carlos Alberto Lopez Perez wrote: * The Mesa driver uses this environment variable to override the default compiled search path for DRI drivers. * This is useful for testing purposes when the user needs to override the system default one at runtime. +

Re: [PATCH xserver] Search for DRI drivers at LIBGL_DRIVERS_PATH environment variable.

2016-04-12 Thread Julien Cristau
On Tue, Apr 12, 2016 at 19:59:14 +0200, Carlos Alberto Lopez Perez wrote: > * The Mesa driver uses this environment variable to override the > default compiled search path for DRI drivers. > > * This is useful for testing purposes when the user needs to > override the system default o

[PATCH xserver] Search for DRI drivers at LIBGL_DRIVERS_PATH environment variable.

2016-04-12 Thread Carlos Alberto Lopez Perez
* The Mesa driver uses this environment variable to override the default compiled search path for DRI drivers. * This is useful for testing purposes when the user needs to override the system default one at runtime. Signed-off-by: Carlos Alberto Lopez Perez --- glx/glxdricommon.c |

Re: [Spice-devel] xf86-video-qxl 0.1.5?

2016-04-12 Thread Christophe Fergeau
Hey, On Mon, Apr 11, 2016 at 12:34:20PM +0200, poma wrote: > > https://cgit.freedesktop.org/xorg/driver/xf86-video-qxl > > 0001-Remove-unused-variables.patch > ... > 0036-spiceqxl_audio-Stop-the-playback-channel-if-there-is.patch > > 36 patches queueing from the last xf86-video-qxl release - 0.

Re: [PATCH xserver] xkb: fix SlowKeys release/reject beeps

2016-04-12 Thread Daniel Stone
On 12 April 2016 at 06:48, Peter Hutterer wrote: > On Tue, Mar 08, 2016 at 03:42:42PM +1000, Peter Hutterer wrote: >> Wrong use of the mask here caused a beep whenever a key was rejected but also >> when it was released after being accepted. Fix the mask to check for the >> correct enabled control

Re: pythonic XCB build error

2016-04-12 Thread Simon Thum
Well, if they're all whitespace-only like those you linked you're welcome to make them Reviewed-by: Simon Thum Cheers Simon On 04/11/2016 06:42 PM, Peter Harris wrote: On 2016-04-11 12:32, Simon Thum wrote: Does anyone know what is the "correct" fix? Older/newer python, wait for master to