Re: xosd fails to update on OpenBSD

Edd Barrett <[email protected]> Thu, 17 Nov 2011 13:29:18 +0000
Newsgroups gmane.comp.sysutils.lcdproc
Message-ID <[email protected]>
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

http://www.theunixzoo.co.uk