This adds the ability to be notified when a file descriptor is
available for writing.
Signed-off-by: Keith Packard
---
os/WaitFor.c| 30 --
os/connection.c | 40 +++-
os/io.c | 8
os/osdep.h
Font initialization was split into two stages, the first was to set up
font privates with a call to ResetFontPrivateIndex, then much later
the call to InitFonts to set up all of the FPEs. Doing the full font
initialization before initializing the video drivers means that we can
move the call to
Remove code in xf86Wakeup for dealing with device and other input and
switch to using the new NotifyFd interface.
Signed-off-by: Keith Packard
---
hw/xfree86/common/xf86Events.c | 67 --
1 file changed, 26 insertions(+), 41 deletions(-)
Eliminates polling every 20ms for device input.
Signed-off-by: Keith Packard
---
hw/kdrive/ephyr/ephyr.c | 10 +-
hw/kdrive/ephyr/ephyr.h | 3 ---
hw/kdrive/ephyr/hostx.c | 6 ++
hw/kdrive/ephyr/hostx.h | 2 ++
hw/kdrive/ephyr/os.c| 1 -
5 files changed,
This provides a callback-based interface to monitor file
descriptors beyond the usual client and device interfaces.
Modules within the server using file descriptors for reading and/or
writing can call
Bool SetNotifyFd(int fd, NotifyFdProcPtr notify_fd, int mask, void *data);
mask can be any
There's a 'const char *' adventure here that I'm mostly ignoring; some
client information gets const poisoned. Worked around by adding a
couple of casts. Ick.
Added an _X_ATTRIBUTE_PRINTF to SELinuxLog.
Ignore a couple of unused return values.
Signed-off-by: Keith Packard
On 21 September 2015 at 08:16, Keith Packard wrote:
> Eliminates polling every 20ms for device input.
>
> Signed-off-by: Keith Packard
> ---
> hw/kdrive/ephyr/ephyr.c | 10 +-
> hw/kdrive/ephyr/ephyr.h | 3 ---
> hw/kdrive/ephyr/hostx.c | 6 ++
This uses the NotifyFd interface to monitor the udev file descriptor
rather than adding another block/wakeup handler
Signed-off-by: Keith Packard
---
config/udev.c | 45 -
1 file changed, 16 insertions(+), 29 deletions(-)
diff
The X server used to wait for the user to hit a key or move the mouse
before restarting the session after a keepalive failure. This,
presumably, was to avoid having the X server continuously spew XDMCP
protocol on the network while the XDM server was dead.
Switching into this state was removed
Replace the custom path for dealing with new incoming connections with
the general-purpose NotifyFd API.
Signed-off-by: Keith Packard
---
include/os.h| 3 --
os/WaitFor.c| 4 ---
os/connection.c | 104 +++-
3
This removes the block and wakeup handlers and replaces them with a
combination of a NotifyFd callback and timers.
Signed-off-by: Keith Packard
---
os/xdmcp.c | 114 +++--
1 file changed, 36 insertions(+), 78
This removes the last uses of fd_set from the server interfaces
outside of the OS layer itself.
Signed-off-by: Keith Packard
---
Xext/sleepuntil.c | 17 +++--
Xext/sync.c | 12 ++--
dix/dixfonts.c | 7
This switches the kdrive code to use FD notification for input
devices, rather than the block and wakeup handlers.
Signed-off-by: Keith Packard
---
hw/kdrive/src/kinput.c | 28 ++--
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git
Here's the latest version of the patch set to make the non-OS bits of
the X server stop using fd_set.
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel
This replaces the block/wakeup handlers with an OsTimer. This also
avoids problems with performing rendering during the wakeup handler.
Signed-off-by: Keith Packard
---
render/animcur.c | 57 +---
1 file changed, 30
Replace block/wakeup handlers with SetNotifyFd. Much nicer now.
Signed-off-by: Keith Packard
---
Xext/xselinux_hooks.c | 18 --
1 file changed, 4 insertions(+), 14 deletions(-)
diff --git a/Xext/xselinux_hooks.c b/Xext/xselinux_hooks.c
index d9f2f68..2d85928
There was a complicated scheme to increase the time between keepalives
from 3 minutes up to as much as 24 hours in an attempt to reduce
network traffic from idle X terminals. X terminals receiving X
traffic, or receiving user input would use the 3 minute value; X
terminals without any network
Patch 3ab6cd31cbdf8095b2948034fce5fb645422d8da fixed Xinerama
interactions with font servers by not putting clients to sleep
multiple times. However, it introduced additional changes dealing with
libXfont routine returning Suspended more than once for the same
request. This additional change was
Replace the block/wakeup handlers with a NotifyFd callback
Signed-off-by: Keith Packard
---
hw/kdrive/linux/linux.c | 17 -
1 file changed, 4 insertions(+), 13 deletions(-)
diff --git a/hw/kdrive/linux/linux.c b/hw/kdrive/linux/linux.c
index 73a8169..a52bdef
This new libXfont API eliminates exposing internal X server symbols to
the font library, replacing those with a struct full of the entire API
needed to use that library.
v2: Use libXfont2 instead of libXfont_2
Signed-off-by: Keith Packard
---
Xext/xf86bigfont.c | 4 +-
Replace the block/wakeup handlers with a NotifyFd callback.
Signed-off-by: Keith Packard
---
hw/xfree86/drivers/modesetting/vblank.c | 16 +---
1 file changed, 5 insertions(+), 11 deletions(-)
diff --git a/hw/xfree86/drivers/modesetting/vblank.c
With no users of the interface needing the readmask anymore, we can
remove it from the argument passed to these functions.
Signed-off-by: Keith Packard
---
composite/compalloc.c | 4 ++--
dix/dixutils.c | 14 ++
Replace the block/wakeup handler with a NotifyFd callback instead.
Signed-off-by: Keith Packard
---
hw/xwayland/xwayland.c | 19 ++-
1 file changed, 10 insertions(+), 9 deletions(-)
diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
index
These extensions were accessing internal OS functions and
structures. Expose the necessary functionality to them and remove
their use of osdep.h
Signed-off-by: Keith Packard
---
Xext/xace.c | 13 ++---
Xext/xselinux_hooks.c | 1 -
include/os.h | 7
This uses the NotifyFd interface to monitor the dbus socket rather
than a block/wakeup handler.
Signed-off-by: Keith Packard
---
config/dbus-core.c | 16
1 file changed, 4 insertions(+), 12 deletions(-)
diff --git a/config/dbus-core.c b/config/dbus-core.c
On 21 September 2015 at 08:16, Keith Packard wrote:
> This new libXfont API eliminates exposing internal X server symbols to
> the font library, replacing those with a struct full of the entire API
> needed to use that library.
>
> v2: Use libXfont2 instead of libXfont_2
>
>
On 21 September 2015 at 08:16, Keith Packard wrote:
> This allows the server to call GetTimeInMillis() after each request is
> processed to avoid needing setitimer. -dumbSched now turns off the
> setitimer.
>
> Signed-off-by: Keith Packard
> ---
>
Check for integer overflow before using stuff->count in a multiplication,
to avoid compiler optimizing out due to undefined behaviour, but only
after we've checked to make sure stuff->count is in the range of the
request we're parsing.
Reported-by: j...@posteo.de
Signed-off-by: Alan Coopersmith
Mark Kettenis writes:
> This, of course, has impact on pretty much all the drivers. Many use
> compat-api.h and could probably be fixed by adding an additional
> stanza there. But somebody still needs to do that work.
A few actually use the block and wakeup handlers
Hi,
On 28 November 2014 at 06:02, Peter Hutterer wrote:
> On Mon, Nov 24, 2014 at 10:17:33PM +, Daniel Stone wrote:
>> diff --git a/xkb/xkbActions.c b/xkb/xkbActions.c
>> index c6cbf56..c075115 100644
>> --- a/xkb/xkbActions.c
>> +++ b/xkb/xkbActions.c
>> @@ -1144,9
On Thu, Sep 17, 2015 at 4:30 PM, Adam Jackson wrote:
> On Tue, 2015-09-01 at 00:09 +0200, Ulrich Sibiller wrote:
>> So I am looking for some advice how to solve this in a clean fashion.
>> Is there a document describing how to cleanly use libX11 calls from a
>> server? Is there
> From: Keith Packard
> Date: Mon, 21 Sep 2015 12:06:22 +0100
>
> Mark Kettenis writes:
>
> > This, of course, has impact on pretty much all the drivers. Many use
> > compat-api.h and could probably be fixed by adding an additional
> > stanza there.
On Mon, Sep 21, 2015 at 10:28:14PM +0100, Keith Packard wrote:
> Jonas Ådahl writes:
>
> > In Wayland, a client (in this case XWayland) should set the cursor
> > surface when it receives pointer focus. Not doing this will leave the
> > curser at whatever it was previously.
>
>
On 09/20/15 11:16 PM, Keith Packard wrote:
These extensions were accessing internal OS functions and
structures. Expose the necessary functionality to them and remove
their use of osdep.h
Signed-off-by: Keith Packard
Reviewed-by: Alan Coopersmith
Hey!,
On Fri, Sep 18, 2015 at 3:06 PM, Olivier Fourdan wrote:
>
> Hey Carlos,
>
> On 27/05/15 18:41, Carlos Garnacho wrote:
>>
>> This struct holds information about each individual, ongoing touchpoint.
>> A list of these is held by the xwl_seat.
>>
>> Signed-off-by: Carlos
On Wed, 2015-05-20 at 13:16 -0600, Daniel Drake wrote:
> Commit de0e6073e3f122 added SA_RESTART to the SIGALRM handler.
> However, the Popen code tears down and recreates the SIGALRM handler
> via OsSignal(), and this flag is dropped at this time.
>
> Clean the code to use just a single codepath
On Fri, 2015-05-01 at 14:08 -0700, Alan Coopersmith wrote:
> On 05/ 1/15 04:50 AM, Julien Cristau wrote:
> > It's only used inside XNextRequest(), so doesn't need to be exported.
> >
> > Signed-off-by: Julien Cristau
> Makes sense, and since this was just added last year, no
On Sun, 2015-03-22 at 03:52 +, Javier Jardón wrote:
> ... that only provide a unique libsystemd.pc file
Merged:
remote: I: patch #45355 updated using rev
f8a2c087c89ed5b638a2e62987f255d3f04f914e.
remote: I: patch #53539 updated using rev
cdd1d58159140759052ec043bc9828d94ba97bc7.
remote: I:
On 09/20/15 11:16 PM, Keith Packard wrote:
This provides a callback-based interface to monitor file
descriptors beyond the usual client and device interfaces.
Modules within the server using file descriptors for reading and/or
writing can call
Bool SetNotifyFd(int fd, NotifyFdProcPtr
On Mon, 2015-09-21 at 13:15 -0400, Olivier Fourdan wrote:
> Hi Adam,
>
> Could you please pull from the following git tree some fixes for
> Xwayland (some are quite old).
At this point in the 1.18 cycle we're meant to be locking down ABI,
which means this series can't quite go in as-is:
> @@
On Thu, 2015-09-17 at 03:02 -0400, Olivier Fourdan wrote:
> Hi all,
>
> Just a quick reminder about this patch, this had been reviewed initially by
> ajax, all I did was add the requirement in configure script for the recently
> released libxcb-1.11.1 which features the new 64bit API required
On Mon, 2015-03-23 at 10:58 -0300, Laércio de Sousa wrote:
> This is a trivial patch that moves host_has_extension() implementation
> from ephyr.c to hostx.c so that it can be called by hostx.c internal
> functions. Also rename function to hostx_has_extension() for consistency.
>
> Signed-off-by:
On Sun, 2015-02-08 at 12:03 -0800, Alan Coopersmith wrote:
> On 02/ 8/15 02:34 AM, Jürg Billeter wrote:
> > Signed-off-by: Jürg Billeter
> Reviewed-by: Alan Coopersmith
Merged:
remote: I: patch #41994 updated using rev
On Wed, 2015-07-08 at 11:21 -0700, Keith Packard wrote:
> Jon TURNEY writes:
>
> > Please consider picking a version you like and applying it, or let
> > me
> > know how I can make this patch acceptable.
>
> I'll just apply your original patch and mark it as
Hi Adam,
Could you please pull from the following git tree some fixes for Xwayland (some
are quite old).
Cheers,
Olivier
---
The following changes since commit 58d54ee82dfae5486bc09d04d2760c922d54d631:
glamor: explicitly check for GL_OES_EGL_image (2015-09-17 11:03:15 -0400)
are available
On Thu, 2015-05-21 at 16:13 -0700, Ian Scott wrote:
> This improves the case for when we paint an area without SHM.
> xcb_image_subimage() is used to create a subimage for the damaged area, which
> is converted to native format if necessary.
>
> Signed-off-by: Ian Scott
On 21/09/15 11:19, Daniel Stone wrote:
Hi,
On 21 September 2015 at 09:52, Jonas Ådahl wrote:
In Wayland, a client (in this case XWayland) should set the cursor
surface when it receives pointer focus. Not doing this will leave the
curser at whatever it was previously.
When
Daniel Martin writes:
> ephyrPoll() isn't used anywhere else. You could merge it into
> kdrive_notify_conn().
Good call. I've renamed that to:
static void
ephyrXcbNotify(int fd, int ready, void *data)
and eliminated the extra kdrive_notify_conn wrapper.
From
Daniel Martin writes:
> Thanks for those cleanups. I've skimmed through the patches and found
> two nit-picks. Though, this doesn't stand a Reviewed-by.
Thanks for taking a look.
--
-keith
signature.asc
Description: PGP signature
> From: Keith Packard
> Date: Mon, 21 Sep 2015 07:16:34 +0100
>
> With no users of the interface needing the readmask anymore, we can
> remove it from the argument passed to these functions.
>
> Signed-off-by: Keith Packard
This, of course, has impact on
Hi Adam,
> At this point in the 1.18 cycle we're meant to be locking down ABI,
> which means this series can't quite go in as-is:
>
> > @@ -212,6 +212,7 @@ typedef struct _GrabRec {
> > [...]
>
> Breaks SpriteRec layout.
>
> > @@ -524,6 +527,7 @@ typedef struct _Screen {
> > [...]
>
> Breaks
gcc quite correctly complains about this:
In file included from ../../include/scrnintstr.h:51:0,
from rootlessValTree.c:98:
In function 'RegionUninit.isra.1',
inlined from 'RegionEmpty' at ../../include/regionstr.h:194:5,
inlined from
On Thu, 2015-09-17 at 19:12 -0400, Keith Packard wrote:
> Aaron Plattner writes:
> > Signed-off-by: Aaron Plattner
>
> Reviewed-by: Keith Packard
Merged:
remote: I: patch #42743 updated using rev
On Mon, 2015-09-21 at 07:16 +0100, Keith Packard wrote:
> Instead of attempting to fix this, accept the cost of a pair of XDMCP
> packets once every three minutes and just perform keepalives
> regularly.
This and 5/24 are obviously correct, so, merged with my r-b:
remote: I: patch #59972
On Fri, 2015-09-18 at 08:44 -0700, Alan Coopersmith wrote:
> DECnet support died in modularization (X11R7.0)
>
> Signed-off-by: Alan Coopersmith
Merged:
remote: I: patch #42743 updated using rev
18a93da9b1f429bc54a8b236fcdd38dab58375cd.
remote: I: patch #59816
On Mon, 2015-09-21 at 10:23 -0700, Alan Coopersmith wrote:
> Any memory of what you wanted to use your proposed AddWriteSocket() API for
> all those years ago?
I suspect it might have been prompted by:
http://lists.freedesktop.org/archives/xorg-devel/2012-June/031728.html
- ajax
On Wed, 2015-02-18 at 12:44 -0800, Alan Coopersmith wrote:
> Oops, sorry for forgetting to add that when I added that test.
>
> Reviewed-by: Alan Coopersmith
Merged (though patchwork seems to have lost Alan's r-b, sorry):
remote: I: patch #42743 updated using rev
Hi,
Am 21.09.2015 um 11:32 schrieb Keith Packard:
> Daniel Martin writes:
>
>
>> ephyrPoll() isn't used anywhere else. You could merge it into
>> kdrive_notify_conn().
>
> Good call. I've renamed that to:
>
> static void
> ephyrXcbNotify(int fd, int ready, void
Jonas Ådahl writes:
> In Wayland, a client (in this case XWayland) should set the cursor
> surface when it receives pointer focus. Not doing this will leave the
> curser at whatever it was previously.
It seems like it would be far simpler to just remember the last cursor
set
On Mon, 2015-09-21 at 15:21 -0400, Olivier Fourdan wrote:
> Right, so I amended the commit to move these bits at the end of both
> structures and pushed the branch again, please let me know if that's
> better.
Ugh. abidiff is still complaining, and I'm not entirely sure it's
wrong. The problem
Adam Jackson writes:
> gcc quite correctly complains about this:
>
> In file included from ../../include/scrnintstr.h:51:0,
> from rootlessValTree.c:98:
> In function 'RegionUninit.isra.1',
> inlined from 'RegionEmpty' at
On Mon, 2015-09-21 at 22:16 +0100, Keith Packard wrote:
> Adam Jackson writes:
> > Signed-off-by: Adam Jackson
>
> Reviewed-by: Keith Packard
Merged:
remote: I: patch #60040 updated using rev
fa0bb01899d586e02cf51892c17edd22e462a46c.
In Wayland, a client (in this case XWayland) should set the cursor
surface when it receives pointer focus. Not doing this will leave the
curser at whatever it was previously.
When running on XWayland, the X server will not be the entity that controls
what actual pointer cursor is displayed, and
Daniel Martin writes:
> And this. Those renamings don't look necessary.
> Do they otherwise conflict with something, I don't see atm.?
Yes, these are all defined in fontproto.h, which is included in the
fontsproto module, so I had to use new names for them as they are
We save CurrentCursor if we're going to remove it from the screen in
xf86CursorEnableDisableFBAccess(). But, we call xf86CursorSetCursor()
in between, which calls FreeCursor() on CurrentCursor if set. If this
happens, we end up with a FreeCursor()ed SavedCursor.
We've to make sure that
65 matches
Mail list logo