[PATCH 2/6] xfree86: Report Present as a built-in module

2014-05-28 Thread Chris Wilson
This is so that drivers can do a runtime check that Present is available, similar to existing runtime checks performed by the drivers for DRI. Signed-off-by: Chris Wilson ch...@chris-wilson.co.uk --- hw/xfree86/loader/loadmod.c | 3 +++ 1 file changed, 3 insertions(+) diff --git

[PATCH 6/6] present: Set abort_flip on the pending_flip when destroying the Window

2014-05-28 Thread Chris Wilson
Currently, the code asserts that the abort_flip is set on the pending_flip when the Window is closed. Presumably, it is expected that a configure event happens before it actually closes causing the pending present flip to be aborted. In practice, I see the assert. Signed-off-by: Chris Wilson

[PATCH 3/6] present: Reorder Window teardown to avoid use-after-free

2014-05-28 Thread Chris Wilson
The cleanup sequence was slightly confused as it attempted to clear pending events for the screen after it had freed those events from the window's queue. Reorder the sequence so that all the clearing of events is done first before we free any events. ==31451== Invalid read of size 4 ==31451==

[PATCH 5/6] present: Do not free screen_priv-flip_pending until it is finished

2014-05-28 Thread Chris Wilson
If we close the Window prior to completing all the flips, we free the vblank pointer but leave screen_priv-flip_pending dangling. This leads to a host of invalid reads/writes as it is accessed from many locations, e.g.: ==20302== Invalid write of size 4 ==20302==at 0x81A8FD5:

[PATCH 1/6] xfree86: Report DRI3 as a built-in module

2014-05-28 Thread Chris Wilson
This is so that drivers can do a runtime check that DRI3 is available, similar to existing runtime checks performed by the drivers for DRI and DRI2. v2: Only add DRI3 to the list if the module was actually built into the server (Mark Kettenis). Signed-off-by: Chris Wilson

[PATCH 4/6] fb: Avoid installing terminal functions over pre-existing call chains

2014-05-28 Thread Chris Wilson
The fbWindow family of functions (Map, Unmap, Position and Destroy) are all terminal functions, that is they do not chain up to earlier extensions. This breaks those chains which leads to not only resource leaks but also dereference of dangling pointers. One such issue arises with fbScreenInit()

Re: [PATCH 4/6] fb: Avoid installing terminal functions over pre-existing call chains

2014-05-28 Thread Keith Packard
Chris Wilson ch...@chris-wilson.co.uk writes: The fbWindow family of functions (Map, Unmap, Position and Destroy) are all terminal functions, that is they do not chain up to earlier extensions. This breaks those chains which leads to not only resource leaks but also dereference of dangling

Re: [PATCH 4/6] fb: Avoid installing terminal functions over pre-existing call chains

2014-05-28 Thread Chris Wilson
On Wed, May 28, 2014 at 01:31:50AM -0700, Keith Packard wrote: Chris Wilson ch...@chris-wilson.co.uk writes: The fbWindow family of functions (Map, Unmap, Position and Destroy) are all terminal functions, that is they do not chain up to earlier extensions. This breaks those chains which

Re: [PATCH 2/6] xfree86: Report Present as a built-in module

2014-05-28 Thread walter harms
Am 28.05.2014 09:14, schrieb Chris Wilson: This is so that drivers can do a runtime check that Present is available, similar to existing runtime checks performed by the drivers for DRI. Signed-off-by: Chris Wilson ch...@chris-wilson.co.uk --- hw/xfree86/loader/loadmod.c | 3 +++ 1 file

Re: [PATCH 4/6] fb: Avoid installing terminal functions over pre-existing call chains

2014-05-28 Thread Keith Packard
Chris Wilson ch...@chris-wilson.co.uk writes: Hmm, the sequence I have in UXA is wrong then. Sounds like it. -- keith.pack...@intel.com pgpEBgGl9_Loj.pgp Description: PGP signature ___ xorg-devel@lists.x.org: X.Org development Archives:

Re: [PATCH 4/6] fb: Avoid installing terminal functions over pre-existing call chains

2014-05-28 Thread Chris Wilson
On Wed, May 28, 2014 at 02:15:58AM -0700, Keith Packard wrote: Chris Wilson ch...@chris-wilson.co.uk writes: Hmm, the sequence I have in UXA is wrong then. Sounds like it. Indeed, that was easy enough to resolve once I knew to look in the right place. Thanks, -Chris -- Chris Wilson,

Re: [PATCH 5/6] present: Do not free screen_priv-flip_pending until it is finished

2014-05-28 Thread Chris Wilson
On Wed, May 28, 2014 at 12:07:40PM +0100, Frank Binns wrote: On 28/05/14 08:14, Chris Wilson wrote: If we close the Window prior to completing all the flips, we free the vblank pointer but leave screen_priv-flip_pending dangling. This leads to a host of invalid reads/writes as it is accessed

Re: [PATCH 5/6] present: Do not free screen_priv-flip_pending until it is finished

2014-05-28 Thread Frank Binns
On 28/05/14 08:14, Chris Wilson wrote: If we close the Window prior to completing all the flips, we free the vblank pointer but leave screen_priv-flip_pending dangling. This leads to a host of invalid reads/writes as it is accessed from many locations, e.g.: ==20302== Invalid write of size 4

Re: [PATCH 5/6] present: Do not free screen_priv-flip_pending until it is finished

2014-05-28 Thread Chris Wilson
On Wed, May 28, 2014 at 12:22:14PM +0100, Chris Wilson wrote: On Wed, May 28, 2014 at 12:07:40PM +0100, Frank Binns wrote: On 28/05/14 08:14, Chris Wilson wrote: If we close the Window prior to completing all the flips, we free the vblank pointer but leave screen_priv-flip_pending

[PATCH v2 1/3] present: restore screen pixmap when aborting a flip

2014-05-28 Thread Frank Binns
If a 2D application is started on top of a fullscreen 3D application, which is flipping, then we need to stop flipping and restore the root window, and possibly the flip window, to using the screen pixmap. Normally this would be done as part of an unflip. However, in the case that there is a

[PATCH v2 2/3] present: clean up all current flip resources on window destruction

2014-05-28 Thread Frank Binns
When a flip event is received the associated resources are transferred from the vblank data, which gets destroyed, to the screen private data. Usually, the resources would be cleaned up when a new flip event is received or an unflip is completed. In the case of normal client termination it's

[PATCH v2 3/3] present: sync flips unless requested not to

2014-05-28 Thread Frank Binns
When the display driver supports async flipping this mode of operation is always used. This means that, when the swap interval is none 0, the present extension relies on vblank events to get synchronised flips. However, by the time present gets the event, requests a flip and the GPU has finished

[PATCH v2 0/3] present: various fixes

2014-05-28 Thread Frank Binns
This is v2 of some present fixes for issues discovered when adding DRI3+present support to the PVR video driver. Patch 1 has been reworked to now always restore the screen pixmap at the point a pending flip is marked as aborted. Previously it only did this in one place and only for the root

[PATCH util-modular 1/4] release.sh: split tar_name and tag_name into two separate variables

2014-05-28 Thread Peter Hutterer
This has no effect at this point as the tag name and the tar name are always identical. Prep work for wayland repository support. Signed-off-by: Peter Hutterer peter.hutte...@who-t.net --- release.sh | 15 --- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/release.sh

[PATCH util-modular 3/4] release.sh: move fetching the section up so we can do stuff with it

2014-05-28 Thread Peter Hutterer
This enables us to query the section earlier in the process, specifically before assigning the tag name which comes in the next commit. Signed-off-by: Peter Hutterer peter.hutte...@who-t.net --- release.sh | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git

[PATCH util-modular 2/4] release.sh: move the bit to extract the section into a function

2014-05-28 Thread Peter Hutterer
No functional changes intended Signed-off-by: Peter Hutterer peter.hutte...@who-t.net --- release.sh | 128 +++-- 1 file changed, 74 insertions(+), 54 deletions(-) diff --git a/release.sh b/release.sh index abfcc29..a05b0c9 100755 ---

[PATCH util-modular 4/4] release.sh: add the hooks for the wayland repositories

2014-05-28 Thread Peter Hutterer
Adds support for wayland, weston and libinput. Two notable changes aside from adding the various server/mailing list differences: - all three modules use a m4 define instead of a plain version string in configure.ac. - the tag name for wayland and weston is a mere version number Signed-off-by: