2.6.30: hald crashes on resume from STR apparently on LED device

Andrey Borzenkov arvidjaar at mail.ru
Mon Jun 29 09:34:28 PDT 2009


On Monday 29 of June 2009 12:01:57 Frederic Crozat wrote:
> Le dimanche 28 juin 2009 à 00:34 +0400, Andrey Borzenkov a écrit :
> > On Monday 22 of June 2009 17:57:24 Richard Purdie wrote:
> > > On Sun, 2009-06-21 at 18:17 +0400, Andrey Borzenkov wrote:
> > > > So what happens is simple. During suspend led device is
> > > > removed; during resume it is recreated. Apparently removing led
> > > > device cause hald-addon- leds to exit (thus disconnecting D-Bus
> > > > connection); and sometimes next "add" event comes too early,
> > > > before hald had chance to notice missing addon.
> > >
> > > Note that its the underlying device that is being removed here
> > > and since the LED is connected to that its removed as well. The
> > > LED subsystem hasn't changed in how it works. I don't think that
> > > has any bearing on your patch though.
> >
> > Yes, looking more closely there is inherent race condition between
> > tearing down existing helper and processing ADD event for it. Most
> > likely some timing was changed in current kernel that made it more
> > easily exposed. If Mandriva had not compiled D-Bus with assertions
> > enabled, this would simply fail silently without anyone noticing.
>
> Hmm, Assertions in Mandriva dbus package are disabled...

I am sorry, I am not as deep in D-Bus code.

This particular piece aborts in

_dbus_return_val_if_fail =>

_dbus_warn_check_failed(const char *format,
                        ...)
{
...
  if (fatal_warnings_on_check_failed)
    {
      fflush (stderr);
      _dbus_abort ();
    }
}

So yes, it is independent of DBUS_DISABLE_ASSERT.

BTW I did not have a single crash since running HAL with my patch.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
Url : http://lists.freedesktop.org/archives/hal/attachments/20090629/c38a03cf/attachment.pgp 


More information about the hal mailing list