Re: [PATCH app/xkbcomp] pkgconfig: Add our bindir to xkbcomp.pc

2017-11-06 Thread Peter Hutterer
On Mon, Nov 06, 2017 at 12:55:20PM -0500, Adam Jackson wrote: > Signed-off-by: Adam Jackson > --- > xkbcomp.pc.in | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/xkbcomp.pc.in b/xkbcomp.pc.in > index b8d6023..4d138c8 100644 > --- a/xkbcomp.pc.in > +++ b/xkbcomp.pc.in > @@ -1,4 +1,5 @@ >

[PATCH app/xfs 2/2] xfs: port to libXfont2

2017-11-06 Thread Adam Jackson
This appears to work, in the sense that xfsinfo and fslsfonts print the same thing before and after. Signed-off-by: Adam Jackson --- configure.ac| 4 +-- difs/atom.c | 2 +- difs/charinfo.c | 70 +++ difs/difsutils.c| 12

[PATCH app/xfs 1/2] xtrans: Simplify an error path when started from inetd

2017-11-06 Thread Adam Jackson
The old code is redundant, since our caller looks like: OldListen = _FontTransGetInetdListenInfo (inetdListener); if (OldListen == NULL) { FatalError("failed to initialize OldListen to inetd socket: %s\n", strerror(errno)); } Signed-off-by: Adam Jackson ---

Re: [PATCH xserver 2/2] dix: Remove ffs.c

2017-11-06 Thread Alan Coopersmith
On 11/ 6/17 12:25 PM, Adam Jackson wrote: Your libc has ffs, I promise. Signed-off-by: Adam Jackson Since Unix98 specifies ffs(), that seems like a very safe bet in 2017. Reviewed-by: Alan Coopersmith -- -Alan Coopersmith- alan.coopersm...@oracle.com Oracle S

Re: [PATCH xserver 1/2] os: Remove mffs()

2017-11-06 Thread Alan Coopersmith
On 11/ 6/17 12:25 PM, Adam Jackson wrote: This was always wide enough to work on an fd_mask ("mask" ffs presumably). We don't operate on fd_masks anymore, so this can go. Signed-off-by: Adam Jackson Reviewed-by: Alan Coopersmith -- -Alan Coopersmith- alan.coopersm...@o

Re: [PATCH xserver 0/5] misc valgrind cleanups

2017-11-06 Thread Adam Jackson
On Sat, 2017-11-04 at 23:06 +0100, Giuseppe Bilotta wrote: > Giuseppe Bilotta (5): > xkb: initialize tsyms > Xephyr: free driverPrivates on Fini > randr: ProcRRGetOutputInfo: initialize memory > glx: free fbconfigs on destroy Pushed these four: remote: I: patch #186255 updated using rev

Re: [PATCH xserver 4/5] randr: properly cleanup on crtc and output destroy

2017-11-06 Thread Adam Jackson
On Sat, 2017-11-04 at 23:06 +0100, Giuseppe Bilotta wrote: > Signed-off-by: Giuseppe Bilotta > --- > randr/rrcrtc.c | 6 ++ > randr/rroutput.c | 5 + > 2 files changed, 11 insertions(+) > > diff --git a/randr/rrcrtc.c b/randr/rrcrtc.c > index 2eb9fbdc8..90922484f 100644 > --- a/randr/r

Re: [PATCH xserver] dix/window: fix typos

2017-11-06 Thread Adam Jackson
On Thu, 2017-11-02 at 21:27 +0100, Giuseppe Bilotta wrote: > --- > dix/window.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) remote: I: patch #186016 updated using rev 2dafa1bdafe583587431a5f6ebee6ec371c61a8d. remote: I: 1 patch(es) updated to state Accepted. To ssh://git.freedesk

[RFC xserver v3 06/11] glamor: Initialize DMA sync fences

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Enable support for DMA fences in Glamor backend. Signed-off-by: Louis-Francis Ratté-Boulianne --- glamor/glamor_sync.c | 4 1 file changed, 4 insertions(+) diff --git a/glamor/glamor_sync.c b/glamor/glamor_sync.c index 71835fcc4..a812d9219 100644 --- a/glamor/glamor_sync.c +++ b/glamor/gla

[RFC xserver v3 07/11] present: Allow present implementations to wait on fences

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Instead of relying on the present module to wait on in-fences, we added some hooks to allow the drivers/hardware to do the work. Drivers need to implement can_wait_fence, wait_fence and flip_with_fence to handle it. v2: Rename hooks to can_wait_fence and wait_fence Signed-off-by: Louis-Francis Ra

[RFC xserver v3 11/11] modesetting: Add implementation for out-fences

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Create out-fence using eglCreateSyncKHR or OUT_FENCE_PTR DRM property when page-flipping. Signed-off-by: Louis-Francis Ratté-Boulianne --- glamor/glamor.c | 9 ++ glamor/glamor.h | 2 ++ glamor/glamor_egl.c

[RFC xserver v3 03/11] sync: Move fence destroy call to object specific function

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Needed so multiple types of sync fences can exist (SHM and DMA). v2: Remove unused miSyncGetFenceType Signed-off-by: Louis-Francis Ratté-Boulianne --- miext/sync/misync.c| 25 - miext/sync/misync.h| 10 +- miext/sync/misyncshm.c | 30 +++--

[RFC xserver v3 00/11] DRI3 v1.2: DMA fences

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Hello, This patchset implements of what we would like to see become DRI3 v1.2, that is the implementation of DMA fences. For some context, please see previous submissions: https://lists.x.org/archives/xorg-devel/2017-August/054439.html https://lists.x.org/archives/xorg-devel/2017-September/054770

[RFC xserver v5 13/14] glamor: Use gbm_bo_create_with_modifiers for internal pixmap allocation

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Using modifier might allow the driver to use a more optimal format (e.g. tiled/compressed). Let's try to use those if possible. Signed-off-by: Louis-Francis Ratté-Boulianne --- glamor/glamor_egl.c | 44 ++- hw/xwayland/xwayland-glamor.c | 22

[RFC dri3proto v3 01/11] Add DMA fences requests, bump to v1.2

2017-11-06 Thread Louis-Francis Ratté-Boulianne
DRI3 version 1.2 adds support for creating DMA fences and retrieving the file descriptor backing one. Signed-off-by: Daniel Stone Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac | 2 +- dri3proto.h | 45 -- dri3proto.txt | 70 +++

[RFC xserver v3 04/11] sync: Add support for DMA fences

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Functions are available to create a SyncFence from a DMA fence fd and to retrieve the file descriptor from a SyncFence. DMA fences can't be triggered/reset externally. v2: Make SetTriggered and Reset return a status and remove fence type Signed-off-by: Louis-Francis Ratté-Boulianne --- Xext/sy

[RFC xserver v5 03/14] dri3: Add multi-planar/modifier buffer requests

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Initial implementation for DRI3 v1.1. Only the DRI3 implementation is there, backends need to implement the proper hooks. Version is still set to 1.0 so clients shouldn't use the new requests yet. v2: Use depth/bpp instead of DRM formats in requests v3: Remove DMA fence requests from v1.1 Ad

[RFC xserver v5 04/14] present: Send PresentCompleteModeSuboptimalCopy appropriately

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Add 'check_flip2' hook for driver to let know the core about why flipping is not possible ('reason'). If it is because of unsupported buffer format/modifier, a PresentCompleteNotify event is sent to the client with the PresentCompleteModeSuboptimalCopy mode. v2: Check for PresentOptionSuboptimal a

[RFC xserver v3 08/11] present: Add hooks for the drivers to create out-fences

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Drivers need to implement flip_with_fence and flush_with_fence to create out-fences. Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac| 2 +- include/protocol-versions.h | 2 +- present/meson.build | 2 +- present/present.c | 68 ++

[RFC xserver v3 10/11] modesetting: Add implementation for in-fences

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Allow the modesetting present implementation to wait on in-fences using ANDROID_native_fence_sync if the fence was created with DRI3 FenceFromDMAFenceFD. Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac | 1 + glamor/Makefile.am

[RFC presentproto v3 02/11] Add capability and option for IdleFence

2017-11-06 Thread Louis-Francis Ratté-Boulianne
If the server has that capability, and the client is using this option, the idle fence given to PresentPixamp can be modified to point to an out-fence created by the driver. Bump version to 1.2. Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac | 2 +- presentproto.txt | 27 +++

[RFC xserver v3 09/11] modesetting: Check if DMA fences are supported

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Modesetting/glamor can handle DMA fences if extensions EGL_KHR_wait_sync and EGL_ANDROID_native_fence_sync are available and if IN_FENCE_FD and OUT_FENCE_PTR DRM properties are implemented. Signed-off-by: Louis-Francis Ratté-Boulianne --- glamor/glamor.c | 16 +++

[RFC xserver v3 05/11] dri3: Add DMA fences requests

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Bump DRI3 version to v1.2 that adds requests: * FenceFromDMAFenceFD is used to create a sync fence from a sync file fence. * DMAFenceFDFromFence is used to retrieve the sync file fd from a fence. Drivers need to check the SyncFence type to make use of it when possible. Signed

[RFC xserver v5 07/14] modesetting: Use atomic modesetting to configure output/CRTCs

2017-11-06 Thread Louis-Francis Ratté-Boulianne
To make sure we also use the same primary plane and to avoid mixing uses of two APIs, it is better to always use the atomic modesetting API when possible. v2: Don't use mode_output->connector_id Signed-off-by: Louis-Francis Ratté-Boulianne --- hw/xfree86/drivers/modesetting/drmmode_display.c |

[RFC xserver v5 09/14] modesetting: Create scanout buffers using supported modifiers

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Use most optimal buffer format (e.g. tiled/compressed) available for scanout. v2: Don't use multi-plane modifier to create scanout buffer v3: Add flag to retrieve modifiers set from enabled CRTCs only v4: Fix uses when GBM/EGL driver doesn't support modifiers Signed-off-by: Louis-Francis Ratté-

[RFC dri3proto v5 01/14] Add modifier/multi-plane requests, bump to v1.1

2017-11-06 Thread Louis-Francis Ratté-Boulianne
DRI3 version 1.1 adds support for explicit format modifiers, including multi-planar buffers. Signed-off-by: Daniel Stone Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac | 2 +- dri3proto.h | 86 - dri3proto.txt | 202 ++

[RFC xserver v5 11/14] glamor: Implement PixmapFromBuffers and BuffersFromPixmap

2017-11-06 Thread Louis-Francis Ratté-Boulianne
It relies on GBM >= 17.1.0 where we can import BO with multiple planes and a format modifier (GBM_BO_IMPORT_FD_MODIFIER). Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac | 4 + glamor/glamor.c | 34 --- glamor/glamor.h | 65 +

[RFC xserver v5 00/14] DRI3 v1.1: modifiers and multi-plane

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Hello, This is the RFC v5 for DRI3 v1.1 (X11 modifiers and multi-plane). For context, please check previous submissions: https://lists.x.org/archives/xorg-devel/2017-June/053854.html https://lists.x.org/archives/xorg-devel/2017-August/054436.html https://lists.x.org/archives/xorg-devel/2017-Sept

[RFC xserver v5 10/14] modesetting: Check if buffer format is supported when flipping

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Add support for 'check_flip2' so that the present core can know why it is impossible to flip in that scenario. The core can then let know the client that the buffer format/modifier is suboptimal. Signed-off-by: Louis-Francis Ratté-Boulianne --- hw/xfree86/drivers/modesetting/drmmode_display.c |

[RFC presentproto v5 02/14] Add PresentCompleteModeSuboptimalCopy flag for Complete event

2017-11-06 Thread Louis-Francis Ratté-Boulianne
If the Complete event has this mode, the client is not using the more optimal format/modifier for the buffer allocation. The client must explicitely inform the server that it understands this mode by adding the PresentOptionSuboptimal flag when calling PresentPixmap. Its main usage as of now is to

[RFC xserver v5 14/14] dri3: Enable DRI3 version 1.1

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Enable DRI3 v1.1 now that all functions have been implemented and that there is at least one backend implementing the driver hooks (modesetting/glamor). Signed-off-by: Louis-Francis Ratté-Boulianne --- include/protocol-versions.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git

[RFC xserver v5 12/14] glamor: Implement GetSupportedModifiers

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Implement function added in DRI3 v1.1. A newest version of libepoxy (>= 1.4.4) is required as earlier versions use a problematic version of Khronos EXT_image_dma_buf_import_modifiers spec. v4: Only send scanout-supported modifiers if flipping is possible Signed-off-by: Louis-Francis Ratté-Boulia

[RFC xserver v5 06/14] modesetting: Add support for multi-plane pixmaps when page-flipping

2017-11-06 Thread Louis-Francis Ratté-Boulianne
This allows the uses of CCS compressed or tiled pixmaps as BOs when page-flipping. Signed-off-by: Louis-Francis Ratté-Boulianne --- hw/xfree86/drivers/modesetting/drmmode_display.c | 47 hw/xfree86/drivers/modesetting/drmmode_display.h | 4 ++ hw/xfree86/drivers/modeset

[RFC xserver v5 08/14] modesetting: Get supported formats/modifiers for scanout

2017-11-06 Thread Louis-Francis Ratté-Boulianne
Retrieve IN_FORMATS property from the plane. It gives the allowed formats and modifiers for BO allocation. Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac | 4 + hw/xfree86/drivers/modesetting/drmmode_display.c | 114 ++- hw

[RFC xserver v5 05/14] modesetting: Use atomic modesetting API for pageflip if available

2017-11-06 Thread Louis-Francis Ratté-Boulianne
In order to flip between compressed and uncompressed buffers - something drmModePageFlip explicitly bans us from doing - we need to port use the atomic modesetting API. It's only 'fake' atomic though given we still commit for each CRTC separately and CRTC and connector properties are not set with t

[PATCH xserver] glx: Drop references to

2017-11-06 Thread Adam Jackson
This header is a truly ancient remnant of the SGI SI code, which used the same struct for visual/fbconfig state on both sides of the wire. We're not using this struct ourselves so let's stop depending on the header. Signed-off-by: Adam Jackson --- hw/dmx/glxProxy/glxcontext.h | 2 -- hw/dmx/gl

[PATCH xserver] glx: Fix typos that break GLX_ARB_context_flush_control

2017-11-06 Thread Adam Jackson
The trailing \n are just wrong here, __glXEnableExtension wants a string without them. Signed-off-by: Adam Jackson --- glx/glxdri2.c | 2 +- glx/glxdriswrast.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/glx/glxdri2.c b/glx/glxdri2.c index 8516368ac..8f5aab0c2 100

[PATCH dri2proto 3/3] autotools: Add meson.build to dist files

2017-11-06 Thread Dylan Baker
So that the release tarball can be built with meson too. Signed-off-by: Dylan Baker --- Makefile.am | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile.am b/Makefile.am index 71b3d21..2998a2d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -6,6 +6,7 @@ pkgconfig_DATA = dri2proto.pc dis

[PATCH dri2proto 1/3] Move headers into structured include directory

2017-11-06 Thread Dylan Baker
This will allow the meson build to be used as a wrap subproject. Signed-off-by: Dylan Baker --- Makefile.am | 2 +- dri2proto.h => include/X11/extensions/dri2proto.h | 0 dri2tokens.h => include/X11/extensions/dri2tokens.h | 0 3 files changed, 1 inserti

[PATCH dri2proto 2/3] meson: add meson support

2017-11-06 Thread Dylan Baker
This has support for everything that the autotools build does, except for altering your git config. Signed-off-by: Dylan Baker --- meson.build | 44 1 file changed, 44 insertions(+) create mode 100644 meson.build diff --git a/meson.build b/meson.bui

[PATCH dri2proto 0/3] meson build system for dri2proto

2017-11-06 Thread Dylan Baker
This is basically just like the glproto patches, but with meson.build distrubuted in the autotools generated tarball. Dylan Baker (3): Move headers into structured include directory meson: add meson support autotools: Add meson.build to dist files Makefile.am

[PATCH xserver 2/2] dix: Remove ffs.c

2017-11-06 Thread Adam Jackson
Your libc has ffs, I promise. Signed-off-by: Adam Jackson --- configure.ac | 2 +- dix/Makefile.am | 1 - dix/ffs.c| 49 dix/meson.build | 1 - include/dix-config.h.in | 3 --- include/dix.h

[PATCH xserver 1/2] os: Remove mffs()

2017-11-06 Thread Adam Jackson
This was always wide enough to work on an fd_mask ("mask" ffs presumably). We don't operate on fd_masks anymore, so this can go. Signed-off-by: Adam Jackson --- os/WaitFor.c | 18 -- os/osdep.h | 7 --- 2 files changed, 25 deletions(-) diff --git a/os/WaitFor.c b/os/WaitF

[PATCH xserver 1/4] animcur: Use fixed-size screen private

2017-11-06 Thread Adam Jackson
Signed-off-by: Adam Jackson --- render/animcur.c | 15 --- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/render/animcur.c b/render/animcur.c index 52e6b8b79f..0707fe7271 100644 --- a/render/animcur.c +++ b/render/animcur.c @@ -77,12 +77,9 @@ static CursorBits animCurs

[PATCH xserver 2/4] animcur: Return the next interval directly from the timer callback

2017-11-06 Thread Adam Jackson
If the return value is non-zero here, DoTimer() will automatically rearm the timer for the new (relative) delay. 'soonest' is in absolute time, so subtract off 'now' and return that. Signed-off-by: Adam Jackson --- render/animcur.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff

[PATCH xserver 3/4] animcur: Run the timer from the device, not the screen

2017-11-06 Thread Adam Jackson
This is very slightly more efficient since the callback now doesn't need to walk every input device, instead we know exactly which device's cursor is being updated. AnimCurTimerNotify() gets outdented nicely as a result. A more important side effect is that we can stop using the TimerAbsolute mode

[PATCH xserver 4/4] animcur: Stop tracking the last display time in the SpriteInfoRec

2017-11-06 Thread Adam Jackson
Signed-off-by: Adam Jackson --- include/inputstr.h | 1 - render/animcur.c | 3 --- 2 files changed, 4 deletions(-) diff --git a/include/inputstr.h b/include/inputstr.h index 568f5f9919..5f0026b9b7 100644 --- a/include/inputstr.h +++ b/include/inputstr.h @@ -515,7 +515,6 @@ typedef struct _Spr

[PATCH xserver 0/4] animcur: Stop using TimerAbsolute

2017-11-06 Thread Adam Jackson
Rob Clark reported a crash where the animated cursor code would infinitely recurse: the timer callback would call TimerSet, which would try to run any timers that needed to run "now", which would re-trigger the cursor callback, etc. The TimerAbsolute mode seems like kind of a trap? The caller will

Re: [PATCH glproto 0/2] meson build system

2017-11-06 Thread Adam Jackson
On Fri, 2017-11-03 at 15:50 -0700, Dylan Baker wrote: > This is a pretty straightforward port of glproto to meson. glproto is pretty > simple, and doesn't need to be rebuilt often, so the benefit is not in > configure > speed (although it is much faster). The real benefit here is that with this >

Re: [PATCH xserver] meson: Get more xkb configuration from xkbcomp.pc

2017-11-06 Thread Daniel Stone
Hi, On 6 November 2017 at 17:56, Adam Jackson wrote: > xkb_output_dir = get_option('xkb_output_dir') > if xkb_output_dir == '' > -xkb_output_dir = join_paths(get_option('prefix'), > 'share/X11/xkb/compiled') > +xkb_output_dir = join_paths(xkb_dir, 'compiled') > endif This should real

[PATCH xserver] meson: Get more xkb configuration from xkbcomp.pc

2017-11-06 Thread Adam Jackson
Signed-off-by: Adam Jackson --- meson.build | 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/meson.build b/meson.build index c028cc8aa..28c83909b 100644 --- a/meson.build +++ b/meson.build @@ -89,6 +89,7 @@ xshmfence_dep = dependency('xshmfence', version: '>= 1.1

[PATCH app/xkbcomp] pkgconfig: Add our bindir to xkbcomp.pc

2017-11-06 Thread Adam Jackson
Signed-off-by: Adam Jackson --- xkbcomp.pc.in | 1 + 1 file changed, 1 insertion(+) diff --git a/xkbcomp.pc.in b/xkbcomp.pc.in index b8d6023..4d138c8 100644 --- a/xkbcomp.pc.in +++ b/xkbcomp.pc.in @@ -1,4 +1,5 @@ prefix=@prefix@ +bindir=@bindir@ datarootdir=@datarootdir@ datadir=@datadir@ xk

Re: [PATCH xserver 3/5] randr: ProcRRGetOutputInfo: initialize memory

2017-11-06 Thread Eric Engestrom
On Saturday, 2017-11-04 23:06:29 +0100, Giuseppe Bilotta wrote: > Running Xephyr under valgrind reveals that we're sending some > uninitialized memory over the wire (particularly, the leftover padding > that comes from rounding extraLen to the next 32-bit multiple). > > Solve by calloc()ing the me

Re: [PATCH xserver] xkb: initialize tsyms

2017-11-06 Thread Eric Engestrom
On Friday, 2017-11-03 21:38:51 +0100, Giuseppe Bilotta wrote: > This fixes some “Conditional jump depends on uninitialized value(s)” > errors spotted by valgrind. > > Signed-off-by: Giuseppe Bilotta Reviewed-by: Eric Engestrom Although the rest of the array is 0-initialised, so this only works

Re: [RFC] DeepColor Visual Class Extension

2017-11-06 Thread Adam Jackson
On Fri, 2017-11-03 at 21:04 -0700, Alex Goins wrote: > > > DPCCompositorChangeNotify > > > > > > requester: WINDOW window requesting notification > > > output: OUTPUT output affected by change > > > colorspace_list: LISTofCOLORSPACEPRIORITY updated compositor

[PATCH xserver] Xdmx: fix input driver initialization code paths

2017-11-06 Thread Raimonds Cicans
Problem: Xdmx exit with error "(Fatal Error) dmx: Unknown input argument: " if local input driver is specified (example: -input local,usb-kbd,usb-mou). Cause: code block for remote input drivers is placed in code path common for all drivers. Fix: affected code block moved to remote input driver c

Re: [PATCH xserver 3/8] xwayland: Stop printing the EGL version

2017-11-06 Thread Olivier Fourdan
Hi Adam, > It doesn't matter, none of this matters. It's an indication that Xwayland has started and is using glamor though. Maybe we could replace it with some message indicating Xwayland has started, could be useful for the Wayland compositors who launch Xwayland on demand? (even that's deba