LiveCD trouble

Ivan Voras ivoras at fer.hr
Tue Jul 3 08:50:01 UTC 2007


Hi

One step in my SoC project is to create a LiveCD environment with X11 
and a simple GUI desktop. I chose Xfce because it's small and easy to 
maintain. Creating a FreeBSD LiveCD was fairly straightforward thanks to 
good design of the base system, but I have strange problems with X11 
applications. The symptoms are:

- xfdesktop crashes in glib's wrapper of pthred_cond_timedwait() with 
"Invalid argument" error
- Firefox runs with 100% CPU spent in SYS time, with "top" reporting it 
in a libthr-related state

It's unusual that both problems seem to be connected with threading, 
using libmap to remap libthr to libpthread doesn't help, and some other 
threaded applications I tried (csup) work fine.

This is a showstopper kind of bug but I don't know where to start 
debugging. I've run strace but I the only unusual thing I saw was many 
EAGAIN errors on pipes and unix sockets. Since I'm using unionfs 
extensively I tried without it (in case it has problems with pipes and 
sockets) but using UFS over md devices doesn't help with the above two 
problems.

The weirdest part is that the binaries on LiveCD are copied from my 
*working* desktop system (by first creating binary packages then 
installing them in the new location), where they have no such problems. 
The only thing different seems to be that the LiveCD binaries are run 
from cd9660 read-only file system instead of UFS. :(

There's one more unusual problem: the message newsyslog gives when 
booting, about invalid "at" line in newsyslog.conf, but this config file 
is completely valid, generated from "make distribution" when the image 
is built. Could it be that cd9660 is corrupting data, or doesn't support 
essential features (maybe mmap()?)?

An ISO image of this work-in-progress can be downloaded here: 
http://ivoras.net/stuff/freebsd-live-image.iso.bz2 [200 MB]. This is a 
temporary location and the image will be removed in the future. When 
running it, ignore all the messages about the installer, login as root 
and run startx. To see how file systems are mounted, look at 
/etc/rc.d/livecd script.

I'd appreciate if anyone can look at this or at least provide pointers 
on what to try next.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20070703/23545df6/signature.pgp


More information about the freebsd-current mailing list