[CFT] x11-servers/xorg-server with initial (GCD) Grand Central Dispatch support

Arto Pekkanen isoa at kapsi.fi
Tue Apr 22 13:18:47 UTC 2014


Wow, sounds cool! I just wanted to say thank you for researching something not officially researched elsewhere :)

You could fork the current X.org port, and maintain a partial ports tree in a separate repository. Then people interested in testing the X.org with GCD support could easily use http://www.freshports.org/ports-mgmt/portshaker/ to merge your X.org with main ports tree.

I've never used portshaker, nor maintained any port myself, but this seems like the right way to do it.

On 21.4.2014 15:27, Ivan Klymenko wrote:
> В Mon, 21 Apr 2014 11:30:56 +0200
> Niclas Zeising <zeising at freebsd.org> пишет:
> 
>> On 04/20/14 19:05, Ivan Klymenko wrote:
>>> Hi all.
>>>
>>> You are tired of frequent friezes xorg server?
>>> Are you bored messages in /var/log/Xorg.0.log:
>>> "
>>> ...
>>> [mi] EQ overflowing.  Additional events will be discarded until
>>> existing events are processed. ...
>>> "
>>> ?
>>>
>>> :)
>>>
>>> Then you here! :)
>>>
>>> Patch attached :)
>>>
>>> If you like, we can continue to develop this area.
>>
>> First of all, what is GCD.
> 
> What is GCD - for example can be read here:
> http://en.wikipedia.org/wiki/Grand_Central_Dispatch
> 
>> Second of all, how does this affect the normal way things are done?
> 
> X server has a single queue of requests, which processed
> sequentially.
> Some applications for various reasons, either block the queue or
> handled too long.
> And as a result - have dead GUI (server refuses to accept new requests
> for processing, until the guilty process it works), and messages
> similar to the following:
> " ...
> [mi] EQ overflowing.  Additional events will be discarded until
> existing events are processed.
> ...
> "
> or any other type of "overflowing"...
> It regards changes in mi/mieq.c and mi/mipointer.c
> 
> In this case using GCD queue handled on separate threads.
> GUI - always responsive.
> 
> Yes - I suspect that there is a risk of attack on xorg-server where the
> threads limit is exceeded in the system, but we can modify and somehow
> eliminate in the future ...
> 
>> Thirdly, are there any plans to upstream this?
> 
> Unfortunately I'm not too familiar with the plans xorg community,
> but xorg still single threaded and it s one of its key weaknesses.
> I also do not have any information - whether GCD support in other
> operating systems (likely they are united to advance wayland - not
> xorg-server) which can be used xorg-server... So I think that these
> changes will be specific only for FreeBSD.
> 
> Frankly, I think i do not have arguments and knowledge of the
> English tongue, that would implement support GCD in upstream :)
> 
>> Lastly, which versions of xorg-server does this work with?
> 
> These changes were in xorg-server-1.12.4 and up...
> 
> 
> Sorry for my english.
> _______________________________________________
> freebsd-x11 at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-x11
> To unsubscribe, send any mail to "freebsd-x11-unsubscribe at freebsd.org"
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 553 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20140422/81e3b46a/attachment.sig>


More information about the freebsd-ports mailing list