:ACPI: Don't treat generic error as ACPI error code in acpi memory hotplug driver
PATCH 1/2 :ACPI: Don't treat generic error as ACPI error code in acpi memory hotplug driver
From: Zhao Yakui <[email protected]>
Don't regard the generic error as ACPI error code. Otherwise when the generic code is returned, it will complain the following warning messag:
Quoted 1 line
ACPI Exception (acpi_memhotplug-0171):
UNKNOWN_STATUS_CODE,
Cannot get acpi bus device [20080609]
Quoted 3 lines
ACPI: Cannot find driver data
ACPI Error (utglobal-0127): Unknown exception code:0xFFFFFFED[20080609]
Pid: 85, comm:kacpi_notifyNot tainted 2.6.27.19-5-default #1
Call Trace:
[<ffffffff8020da29>] show_trace_log_lvl+0x41/0x58
[<ffffffff8049a3da>] dump_stack+0x69/0x6f
.....At the same time when the generic error code is returned, the ACPI_EXCEPTION is replaced by the printk.
Signed-off-by Zhao Yakui <[email protected]>
--- drivers/acpi/acpi_memhotplug.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-)
drivers/acpi/acpi_memhotplug.c +12 -6
@@ -38,6 +38,9 @@#define _COMPONENT ACPI_MEMORY_DEVICE_COMPONENT +#undef PREFIX +#define PREFIX "ACPI:memory_hp:" +ACPI_MODULE_NAME ("acpi_memhotplug" );MODULE_AUTHOR ("Naveen B S <[email protected]>" );MODULE_DESCRIPTION ("Hotplug Mem Driver" );
@@ -153,6 +156,7 @@acpi_handle phandle;struct acpi_device *device =NULL ;struct acpi_device *pdevice =NULL ; +int result;if (!acpi_bus_get_device (handle, &device) && device)
@@ -165,9 +169,10 @@ }/* Get the parent device */ - status =acpi_bus_get_device (phandle, &pdevice); -if (ACPI_FAILURE (status)) { -ACPI_EXCEPTION ((AE_INFO , status,"Cannot get acpi bus device" )); + result =acpi_bus_get_device (phandle, &pdevice); +if (result) { + printk(KERN_WARNING PREFIX "Cannot get acpi bus device, " + "ret = %d\n", result);return -EINVAL ; }
@@ -175,9 +180,10 @@* Now add the notified device. This creates the acpi_device * and invokes .add function */ - status =acpi_bus_add (&device, pdevice, handle,ACPI_BUS_TYPE_DEVICE ); -if (ACPI_FAILURE (status)) { -ACPI_EXCEPTION ((AE_INFO , status,"Cannot add acpi bus" )); + result =acpi_bus_add (&device, pdevice, handle,ACPI_BUS_TYPE_DEVICE ); +if (result) { + printk(KERN_WARNING PREFIX "Cannot add acpi bus, " + "ret = %d\n", result);return -EINVAL ; }
applied
thanks,
Len Brown, Intel Open Source Technology Center