[PATCH 1/2] xfree86: use a thread for the generation of input events

Tiago Vignatti tiago.vignatti at nokia.com
Mon Dec 13 12:45:14 PST 2010

On Mon, Dec 13, 2010 at 09:19:20PM +0100, ext Mark Kettenis wrote:
> Setting my philisophical objections about making the X server
> multi-threaded aside, I think there are still serious issues with this
> diff.

can you please specify clear which objections exactly?

> First, the autoconf bits suggest that the input thread is optional.
> But I can't see any evidence of that in the code changes. 

that's true and was added by ajax. Ajax, I guess we don't need that top bits
on the first hunk you introduced, right?

> I really *don't* want a threaded X server on OpenBSD, but with this diff
> the X server has to be linked against libpthread and will call
> pthread_create(), which is really bad. 

if you really doesn't want your server linked against pthread then we can
easily build dummy functions for InputThread{Init, Fini, *} and voilà. It's
pretty easy. But initially I thought you could live with pthread linked and
just pass -nosilk to the server which will use the handler approach.

> Second, how does the silkenmouse behaviour actually work with this
> diff?  

patch #2 from ajax has a nice description mentioning that we will live we just
two ways: the input thread and main loop dispatch triggered by SIGIO (just
triggering, so yes we can malloc now in input generation phase and everyone
can assumes that). Therefore "silken cursor" now means cursor triggered by
the input thread.

Thanks for your input.


More information about the xorg-devel mailing list