[PATCH] configure: introduce --{enable, disable}-syscall-clock

Adam Jackson ajax at redhat.com
Mon Mar 29 11:59:35 PDT 2010


On Mon, 2010-03-29 at 11:02 -0700, Alan Coopersmith wrote:
> Tiago Vignatti wrote:
> > Some systems might not want to link against rt and pthread libraries simply to
> > implement monotonic clock, inside GetTimeInMillis(). For those, use a direct
> > syscall instead.
> > 
> > This patch keeps the new syscall version disabled by default - therefore not
> > changing the original behaviour of the xserver build.
> > 
> > The main concern was regarding some eventual performance degradation when not
> > going through optimized code in C library, or because syscall is varargs
> > based.
> 
> That's actually my secondary concern - my primary concern is that on most
> non-Linux systems, the system libraries are the public, stable, supported,
> documented interface, and syscall() is a private implementation detail to
> those, which applications are strongly discouraged from calling directly.

Yeah, it's not really something I want Linux to default to using either.
I mean, we're going to want input threads, so slicing off librt just
because it pulls in libpthread is a bit temporary.  And Mesa's GLX
support pulls in pthreads already, so the class of device where this
applies is pretty thin.

atropine:~% size /lib/lib{rt,pthread}.so.?
   text	   data	    bss	    dec	    hex	filename
  27358	    624	    212	  28194	   6e22	/lib/librt.so.1
  88930	    880	   8352	  98162	  17f72	/lib/libpthread.so.0

14 dirty pages just isn't that much.  I suspect even cursory examination
of heap usage would find worse offenses.  It's fine as a
microöptimization, but that's about it.

- ajax
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.x.org/archives/xorg-devel/attachments/20100329/54b547fd/attachment.pgp>


More information about the xorg-devel mailing list