Messages in this thread | | | Date | Mon, 28 Dec 2009 12:17:20 -0800 | From | Dmitry Torokhov <> | Subject | Re: -tip: origin tree boot crash |
| |
Hi Paul,
On Mon, Dec 28, 2009 at 05:53:01PM +0100, Paul Rolland wrote: > > Fixed this completely with the following two patches on top of 2.6.33-rc2 : > > --- wmi.c.orig 2009-12-28 17:27:15.000000000 +0100 > +++ wmi.c 2009-12-28 17:39:01.000000000 +0100 > @@ -488,12 +488,13 @@ > { > struct wmi_block *block; > acpi_status status; > + bool err; > > if (!guid || !handler) > return AE_BAD_PARAMETER; > > - find_guid(guid, &block); > - if (!block) > + err = find_guid(guid, &block); > + if (!err) > return AE_NOT_EXIST; > > if (block->handler) > @@ -517,12 +518,13 @@ > { > struct wmi_block *block; > acpi_status status; > + bool err; > > if (!guid) > return AE_BAD_PARAMETER; > > - find_guid(guid, &block); > - if (!block) > + err = find_guid(guid, &block); > + if (!err) > return AE_NOT_EXIST; > > if (!block->handler) > > --- dell-wmi.c.orig 2009-12-28 17:49:09.000000000 +0100 > +++ dell-wmi.c 2009-12-28 17:41:36.000000000 +0100 > @@ -343,7 +343,7 @@ > printk(KERN_ERR > "dell-wmi: Unable to register notify handler - %d\n", > err); > - return err; > + return -err;
This still leaks AE_* error codes to the upper layers which do not care for them and expect the errors from Exxxx namespace.
I wonder why wmi is not using standard error codes but instead decided to come up with it's own.
-- Dmitry
| |