xorg server should wait HAL if it's not avail during init

Yan Li 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.

-- 
Li, Yan



More information about the xorg mailing list