ACPI: fix inconsistent acpi event format (resent)
Subsystems (2)
PATCH 1/1 ACPI: fix inconsistent acpi event format (resent)
Subject: ACPI: fix inconsistent acpi event format
From: Yi Yang <[email protected]>
Hi, Len
Please ignore last one and use this patch, this patch also fixes other acpi event format issues in another several acpi drivers.
Event format acpi generates for /proc/acpi/event is different from that for generic netlink interface. Here are i got:
Quoted 1 line
From
/proc/acpi/event, i got the following events when i suspend and
resume Acer's Aspire One:
battery BAT1 00000080 00000000
battery BAT1 00000081 00000000ac_adapter ACAD 00000080 00000001
battery BAT1 00000080 00000000
But from generic netlink socket, i got the following events when i suspend and resume Acer's Aspire One:
battery PNP0C0A:00 00000080 00000000
battery PNP0C0A:00 00000081 00000000ac_adapter ACPI0003:00 00000080 00000001
battery PNP0C0A:00 00000080 00000000
Such inconsistent event format will make acpid or hald confused, this patch fixes this issue, it makes acpid or hald see the same thing no matter they use /proc/acpi/event or generic netlink interface.
After applying this patch, event format i got from /proc/acpi/event and generic netlink interface is same, all of them are:
battery BAT1 00000080 00000000
battery BAT1 00000081 00000000ac_adapter ACAD 00000080 00000001
battery BAT1 00000080 00000000
Please consider applying, thanks.
--- ac.c | 2 +- battery.c | 2 +- processor_core.c | 6 +++--- thermal.c | 8 ++++---- wmi.c | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-)
drivers/acpi/ac.c +1 -1
@@ -242,7 +242,7 @@ static void acpi_ac_notify(acpi_handle handle, u32 event, void *data)acpi_ac_get_state (ac);acpi_bus_generate_proc_event (device, event, (u32 ) ac->state);acpi_bus_generate_netlink_event (device->pnp.device_class, - device->dev.bus_id, event, + device->pnp.bus_id, event, (u32 ) ac->state);#ifdef CONFIG_ACPI_SYSFS_POWER kobject_uevent (&ac->charger.dev->kobj,KOBJ_CHANGE );
drivers/acpi/battery.c +1 -1
@@ -782,7 +782,7 @@ static void acpi_battery_notify(acpi_handle handle, u32 event, void *data)acpi_bus_generate_proc_event (device, event,acpi_battery_present (battery));acpi_bus_generate_netlink_event (device->pnp.device_class, - device->dev.bus_id, event, + device->pnp.bus_id, event,acpi_battery_present (battery));#ifdef CONFIG_ACPI_SYSFS_POWER /* acpi_batter_update could remove power_supply object */
drivers/acpi/processor_core.c +3 -3
@@ -761,20 +761,20 @@ static void acpi_processor_notify(acpi_handle handle, u32 event, void *data)acpi_bus_generate_proc_event (device, event, pr->performance_platform_limit);acpi_bus_generate_netlink_event (device->pnp.device_class, - device->dev.bus_id, event, + device->pnp.bus_id, event, pr->performance_platform_limit);break ;case ACPI_PROCESSOR_NOTIFY_POWER :acpi_processor_cst_has_changed (pr);acpi_bus_generate_proc_event (device, event,0 );acpi_bus_generate_netlink_event (device->pnp.device_class, - device->dev.bus_id, event,0 ); + device->pnp.bus_id, event,0 );break ;case ACPI_PROCESSOR_NOTIFY_THROTTLING :acpi_processor_tstate_has_changed (pr);acpi_bus_generate_proc_event (device, event,0 );acpi_bus_generate_netlink_event (device->pnp.device_class, - device->dev.bus_id, event,0 ); + device->pnp.bus_id, event,0 );default :ACPI_DEBUG_PRINT ((ACPI_DB_INFO ,"Unsupported event [0x%x]\n" , event));
drivers/acpi/thermal.c +4 -4
@@ -576,7 +576,7 @@ static int acpi_thermal_critical(struct acpi_thermal *tz)acpi_bus_generate_proc_event (tz->device,ACPI_THERMAL_NOTIFY_CRITICAL , tz->trips.critical.flags.enabled);acpi_bus_generate_netlink_event (tz->device->pnp.device_class, - tz->device->dev.bus_id, + tz->device->pnp.bus_id,ACPI_THERMAL_NOTIFY_CRITICAL , tz->trips.critical.flags.enabled);
@@ -605,7 +605,7 @@ static int acpi_thermal_hot(struct acpi_thermal *tz)acpi_bus_generate_proc_event (tz->device,ACPI_THERMAL_NOTIFY_HOT , tz->trips.hot.flags.enabled);acpi_bus_generate_netlink_event (tz->device->pnp.device_class, - tz->device->dev.bus_id, + tz->device->pnp.bus_id,ACPI_THERMAL_NOTIFY_HOT , tz->trips.hot.flags.enabled);
@@ -1592,14 +1592,14 @@ static void acpi_thermal_notify(acpi_handle handle, u32 event, void *data)acpi_thermal_check (tz);acpi_bus_generate_proc_event (device, event,0 );acpi_bus_generate_netlink_event (device->pnp.device_class, - device->dev.bus_id, event,0 ); + device->pnp.bus_id, event,0 );break ;case ACPI_THERMAL_NOTIFY_DEVICES :acpi_thermal_trips_update (tz,ACPI_TRIPS_REFRESH_DEVICES );acpi_thermal_check (tz);acpi_bus_generate_proc_event (device, event,0 );acpi_bus_generate_netlink_event (device->pnp.device_class, - device->dev.bus_id, event,0 ); + device->pnp.bus_id, event,0 );break ;default : ACPI_DEBUG_PRINT((ACPI_DB_INFO,
drivers/acpi/wmi.c +1 -1
@@ -660,7 +660,7 @@ static void acpi_wmi_notify(acpi_handle handle, u32 event, void *data) wblock->handler (event, wblock->handler_data);acpi_bus_generate_netlink_event ( - device->pnp.device_class, device->dev.bus_id, + device->pnp.device_class, device->pnp.bus_id, event,0 );break ; }