xorg server should wait HAL if it's not avail during init
elliot.li.tech at gmail.com
Wed Jan 21 01:52:13 PST 2009
On Tue, Jan 20, 2009 at 02:42:02PM -0200, Paulo César Pereira de Andrade wrote:
> Tino Keitel wrote:
> > On Tue, Jan 20, 2009 at 10:18:10 +0100, Matija Å uklje wrote:
> >> Dne torek 20. januarja 2009 je Yan Li napisal(a):
> >> > I suggest we add a short (5 seconds) busy-wait if hald is not usable.
> >> Isn't that more of a (distro's) init system problem?
> > The problem is that most of those service dependency stuff ignores the
> > fact that daemons may need some time to really become available for
> > service. They just start a service and don't have a way to check if
> > the service is really available. Combined with missing failure
> > handling (like starting a service, noticing that the service terminated
> > because another required service was not yet available, wait a few
> > seconds, and try again automatically), such service dependencies are
> > pretty useless if reliability is a requirement.
> The current code already have a "retry every second" callback/timer
> schema to connect to dbus. It should not require too much work to
> implement a similar system for hal; but I think it would be better
> something like, try in 1, 2, 4, 8, 16, 32 seconds, and if failing
> after like 32 (or more seconds), revert to use the kdb/mouse drivers,
> just fail, or does the evdev driver work without hald running?
That would be far too long than necessary. As to my test, wait for
100ms is enough.
> This should be an issue for netbooks, or any attempt at having
> a fast boot to an usable interface...
Exactly. I want to launch _everything_ in parallel to shorten boot
time. So Xorg is fired very soon after hald and I hit this problem.
I've already made a very simple patch and tested on many of our
testing system, it worked well.
More information about the xorg