Date: Sat, 31 Jan 2009 04:49:53 -0800 From: David Wolfskill <david@catwhisker.org> To: Dmitry Morozovsky <marck@rinet.ru> Cc: stable@freebsd.org Subject: Re: Xorg hangs on first boot Message-ID: <20090131124953.GS90849@albert.catwhisker.org> In-Reply-To: <alpine.BSF.2.00.0901311414480.91263@woozle.rinet.ru> References: <alpine.BSF.2.00.0901311144050.91263@woozle.rinet.ru> <49842FDA.1040101@bsdforen.de> <alpine.BSF.2.00.0901311414480.91263@woozle.rinet.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
--HRnx18n0jmP0CroI Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Jan 31, 2009 at 02:17:49PM +0300, Dmitry Morozovsky wrote: > .... > # REQUIRE: LOGIN cleanvar moused syscons dbus hald >=20 > and console log shows correct order: >=20 > Jan 31 13:53:49 <console.info> revamp kernel: Starting dbus. > Jan 31 13:53:50 <console.info> revamp kernel: Starting hald. > Jan 31 13:53:50 <console.info> revamp kernel: Configuring syscons: > Jan 31 13:53:50 <console.info> revamp kernel: blanktime > Jan 31 13:53:50 <console.info> revamp kernel: . > Jan 31 13:53:50 <console.info> revamp kernel: Starting gdm. >=20 > Rather strange for me. It appears to me (empirically, not from code inspection) that there may (at least in some cases) be a delay between the time hald(8) starts and the time that X can actually use it in a useful way to determine information about the mouse and keyboard. I ended up augmenting my xdm(1) start-up script's "start" stanza with: =2E.. # REQUIRE: ... hald ... =2E.. =2E /etc/rc.subr =2E.. until hald=3D$(check_process hald-addon-mouse-sysmouse); [ -n "${ha= ld}" ]; do info "$name start-up waiting for hald-addon-mouse-sysmouse" sleep 1 done until [ -r /proc/${hald}/status ]; do info "$name start-up waiting to read /proc/${hald}/status" sleep 1 done # This can actually be done as a single expression, but that helps # neither debugging nor comprehension. hald_start=3D`awk -F "[ ,]" '{print $8}' /proc/${hald}/status` now=3D`date "+%s"` # This was determined empirically hald_delay=3D8 wait=3D$(($hald_start + $hald_delay - $now)) if [ $wait -gt 0 ]; then info "$name start-up waiting $wait seconds for hald-addon-m= ouse-sysmouse" sleep $wait fi =2E.. With the above, I've only had the "non-responsive keyboard & mouse" syndrome a couple of times (out of about 2 dozen or so xdm start-ups) in the last several days. Mind, I don't consider that a "solution" -- it's a hack. But if it helps.... :-} Peace, david --=20 David H. Wolfskill david@catwhisker.org Depriving a girl or boy of an opportunity for education is evil. See http://www.catwhisker.org/~david/publickey.gpg for my public key. --HRnx18n0jmP0CroI Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (FreeBSD) iEYEARECAAYFAkmESPAACgkQmprOCmdXAD23VwCfcHhx1AhvV3MPUrWb/E+RQcWz 7koAoICNURPpvwIjc8S6neBrN9FF0btT =uyA0 -----END PGP SIGNATURE----- --HRnx18n0jmP0CroI--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090131124953.GS90849>