HAL Crasher

Andrey Borzenkov arvidjaar at mail.ru
Thu Mar 15 10:42:52 PDT 2007


On Thursday 15 March 2007, Danny Kukawka wrote:
> On Donnerstag, 15. März 2007, Frederic Crozat wrote:
> > Le jeudi 15 mars 2007 à 00:11 +0000, Richard Hughes a écrit :
> > > On Thu, 2007-03-15 at 00:06 +0000, Richard Hughes wrote:
> > > > HAL really shouldn't crash. I've got no time to debug this now.
> > > > Release blocker?
> >
> > Well, it is a "known" issue we discovered at Mandriva last week while
> > pushing the last bits of HAL / pm-utils for 2007.1 :
> >
> > Basically, any hald script outputting something on stderr will cause
> > hald to abort.
>
> IMO this happen only if you compile D-Bus with asserts (IIRC). But there
> would be some possible solutions to fix this in D-Bus:
>
> 1) if D-Bus get a output from stderr and the first line does not start
> with a valid error name (org.freedesktop.Hal.*) D-Bus set the error
> name/type automatically to org.freedesktop.*.unknown. and don't crash HAL.
>
> 2) D-Bus should get errors not via stderr, but via e.g. a special pipe
> (e.g. echo "Access type not supported" >&3) so that all scripts which would
> like to send a D-Bus error have to use this pipe and not stderr. This would
> IMO solve the source of the problem and would avoid to change all possible
> scripts.
>

How is it related to D-Bus? Getting D-Bus-categorized errors from callouts on 
stderr is HAL convention. There is nothing inherent to D-Bus.

> But I'm not sure if one of both would be accepted by the dbus developers/
> maintainer. But the current behavior is unacceptable.
>

So make all callouts output errors on stdout instead. This is actually the 
simplest fix. Or implement the first suggestion - again this should be done 
in HAL, not in D-Bus.

-andrey

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/hal/attachments/20070315/528b0f7a/attachment.pgp


More information about the hal mailing list