ACPI: Oops in ACPI with git latest
authorRafael J. Wysocki <rjw@sisk.pl>
Fri, 24 Oct 2008 19:50:31 +0000 (21:50 +0200)
committerLen Brown <len.brown@intel.com>
Sat, 25 Oct 2008 08:07:14 +0000 (04:07 -0400)
ACPI Warning (nseval-0168): Insufficient arguments - method [_OSC] needs 5, found 4 [20080926]
ACPI Warning (nspredef-0252): \_SB_.PCI0._OSC: Parameter count mismatch - ASL declared 5, expected 4 [20080926]
ACPI Error (nspredef-0163): \_SB_.PCI0._OSC: Missing expected return value [20080926]
BUG: unable to handle kernel NULL pointer dereference at 00000000
IP: [<c0237671>] acpi_run_osc+0xa1/0x170

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Tested-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/pci/pci-acpi.c

index dfe7c8e..b3a63ed 100644 (file)
@@ -83,6 +83,9 @@ static acpi_status acpi_run_osc(acpi_handle handle,
        if (ACPI_FAILURE(status))
                return status;
 
+       if (!output.length)
+               return AE_NULL_OBJECT;
+
        out_obj = output.pointer;
        if (out_obj->type != ACPI_TYPE_BUFFER) {
                printk(KERN_DEBUG "Evaluate _OSC returns wrong type\n");