lkml.org 
[lkml]   [2007]   [Jan]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Early ACPI lockup (was Re: 2.6.20-rc4-mm1)
On Fri, Jan 12, 2007 at 05:53:08PM -0500, Len Brown wrote:
> On Friday 12 January 2007 05:20, Frederik Deweerdt wrote:
> > On Thu, Jan 11, 2007 at 10:26:27PM -0800, Andrew Morton wrote:
> > >
> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.20-rc3/2.6.20-rc4-mm1/
> > >
> > Hi,
> >
> > The git-acpi.patch replaces earlier "if(!handler) return -EINVAL" by
> > "BUG_ON(!handler)". This locks my machine early at boot with a message
> > along the lines of (It's hand copied):
> > Int 6: cr2: 00000000 eip: c0570e05 flags: 00010046 cs: 60
> > stack: c054ffac c011db2b c04936d0 c054ff68 c054ffc0 c054fff4 c057da2c
> >
> > Reverting the change as follows, allows booting:
> > Any ideas to debug this further?
>
>
> > diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
> > index db0c5f6..fba018c 100644
> > --- a/drivers/acpi/tables.c
> > +++ b/drivers/acpi/tables.c
> > @@ -414,7 +414,9 @@ int __init acpi_table_parse(enum acpi_ta
> > unsigned int index;
> > unsigned int count = 0;
> >
> > - BUG_ON(!handler);
> > + if (!handler)
> > + return -EINVAL;
> > + /*BUG_ON(!handler);*/
> >
> > for (i = 0; i < sdt_count; i++) {
> > if (sdt_entry[i].id != id)
>
> What do you see if on failure you also print out the params, like below?
>
I'm sorry, I might not be able to try it until monday. Michal reported
a similar problem though, adding him to CC list.

Regards,
Frederik

> thanks,
> -Len
>
> diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c
> index 3fce3db..e2d08a5 100644
> --- a/drivers/acpi/tables.c
> +++ b/drivers/acpi/tables.c
> @@ -415,7 +415,12 @@ int __init acpi_table_parse(enum acpi_table_id id, acpi_table_handler handler)
> unsigned int index = 0;
> unsigned int count = 0;
>
> - BUG_ON(!handler);
> + if (!handler) {
> + printk(KERN_WARNING PREFIX
> + "acpi_table_parse(%d, %p) %s NULL handler!\n",
> + id, handler, acpi_table_signatures[id]);
> + return -EINVAL;
> + }
>
> for (i = 0; i < sdt_count; i++) {
> if (sdt_entry[i].id != id)
>
>
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-01-13 01:31    [W:0.431 / U:0.772 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site