Re: xosd fails to update on OpenBSD
"Markus Dolze" <[email protected]> Thu, 17 Nov 2011 18:44:49 +0100
| Newsgroups | gmane.comp.sysutils.lcdproc |
|---|---|
| Message-ID | <[email protected]> |
-------- Original-Nachricht -------- > Datum: Thu, 17 Nov 2011 13:29:18 +0000 > Von: Edd Barrett <[email protected]> > An: Markus Dolze <[email protected]> > CC: [email protected] > Betreff: Re: [Lcdproc] xosd fails to update on OpenBSD > On Wed, Nov 16, 2011 at 09:06:46PM +0100, Markus Dolze wrote: > > The line '## LCDproc Server ##' should have the last (right) character > > alternating between '#' and '-' (the heartbeat characters unless you > > turned that off in LCDd.conf). > > The heartbeat is not visible and not disabled. > > > There are problems known regarding use of the pthread library, e.g. the > > xosd driver 'hangs' on startup running it on FreeBSD. This may be a > > problem with OpenBSD as well. > > We have a pretty bad pthread implementation sadly (a reimplementation is > under way though). > > > What threading library is xosd linked with? 'ldd ....lib/xosd.so' may > > reveal this (replace ..../lib/xosd.so with the path and name of your > > xosd library). > > It will link the only one it can; the system pthread lib. > > ---8<--- > % ldd /usr/ports/pobj/lcdproc-0.5.5/lcdproc-0.5.5/server/drivers/xosd.so > /usr/ports/pobj/lcdproc-0.5.5/lcdproc-0.5.5/server/drivers/xosd.so: > Start End Type Open Ref GrpRef Name > 0000000209189000 000000020958d000 dlib 1 0 0 > /usr/ports/pobj/lcdproc-0.5.5/lcdproc-0.5.5/server/drivers/xosd.so > 000000020c401000 000000020c807000 rlib 0 1 0 > /usr/local/lib/libxosd.so.4.12 > 00000002039b6000 0000000203dda000 rlib 0 2 0 > /usr/lib/libpthread.so.13.1 > 00000002099af000 0000000209dc1000 rlib 0 3 0 > /usr/X11R6/lib/libXext.so.12.0 > 0000000207bce000 0000000208102000 rlib 0 4 0 > /usr/X11R6/lib/libX11.so.15.0 > 000000020b3d2000 000000020b7d4000 rlib 0 2 0 > /usr/X11R6/lib/libXinerama.so.5.0 > 000000020300f000 0000000203418000 rlib 0 1 0 > /usr/lib/libkvm.so.11.0 > 000000020ed06000 000000020f122000 rlib 0 4 0 > /usr/X11R6/lib/libxcb.so.2.2 > 000000020b842000 000000020bc44000 rlib 0 1 0 > /usr/X11R6/lib/libpthread-stubs.so.1.0 > 000000020f428000 000000020f82b000 rlib 0 1 0 > /usr/X11R6/lib/libXau.so.9.0 > 0000000202751000 0000000202b56000 rlib 0 1 0 > /usr/X11R6/lib/libXdmcp.so.10.0 > ---8<--- > > This is my X version: > ---8<--- > % X -version > X.Org X Server 1.11.2 > Release Date: 2011-11-04 > X Protocol Version 11, Revision 0 > Build Operating System: OpenBSD 5.0 amd64 > Current Operating System: OpenBSD edd-i386.kent.ac.uk 5.0 GENERIC.MP#127 > amd64 > Build Date: 10 November 2011 03:09:43PM > > Current version of pixman: 0.22.2 > Before reporting problems, check http://wiki.x.org > to make sure that you have the latest version. > ---8<--- > > I also did some debugging work and was able to confirm that the xosd > device's flush() method is being correctly called, and that > xosd_display() is not failing (xosd_display() can return -1 on error, > which is unchecked in xosdlib_drv_flush()). > > Cheers > > -- > Best Regards > Edd Barrett You may try to apply the following change to server/Makefile.am: http://lcdproc.cvs.sourceforge.net/viewvc/lcdproc/lcdproc/server/Makefile.am?r1=1.18&r2=1.19 This links LCDd with libpthread if available. At least on FreeBSD this fixes the startup issues with the xosd driver. Regards, Markus