]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.0-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 Jun 2012 21:49:50 +0000 (06:49 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 Jun 2012 21:49:50 +0000 (06:49 +0900)
added patches:
acpi-battery-only-refresh-the-sysfs-files-when-pertinent-information-changes.patch

queue-3.0/acpi-battery-only-refresh-the-sysfs-files-when-pertinent-information-changes.patch [new file with mode: 0644]
queue-3.0/series

diff --git a/queue-3.0/acpi-battery-only-refresh-the-sysfs-files-when-pertinent-information-changes.patch b/queue-3.0/acpi-battery-only-refresh-the-sysfs-files-when-pertinent-information-changes.patch
new file mode 100644 (file)
index 0000000..0bea635
--- /dev/null
@@ -0,0 +1,48 @@
+From c5971456964290da7e98222892797b71ef793e62 Mon Sep 17 00:00:00 2001
+From: Andy Whitcroft <apw@canonical.com>
+Date: Thu, 3 May 2012 14:48:26 +0100
+Subject: ACPI battery: only refresh the sysfs files when pertinent information changes
+
+From: Andy Whitcroft <apw@canonical.com>
+
+commit c5971456964290da7e98222892797b71ef793e62 upstream.
+
+We only need to regenerate the sysfs files when the capacity units
+change, avoid the update otherwise.
+
+The origin of this issue is dates way back to 2.6.38:
+da8aeb92d4853f37e281f11fddf61f9c7d84c3cd
+(ACPI / Battery: Update information on info notification and resume)
+
+Signed-off-by: Andy Whitcroft <apw@canonical.com>
+Tested-by: Ralf Jung <post@ralfj.de>
+Signed-off-by: Len Brown <len.brown@intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/acpi/battery.c |   10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+--- a/drivers/acpi/battery.c
++++ b/drivers/acpi/battery.c
+@@ -635,11 +635,19 @@ static int acpi_battery_update(struct ac
+ static void acpi_battery_refresh(struct acpi_battery *battery)
+ {
++      int power_unit;
++
+       if (!battery->bat.dev)
+               return;
++      power_unit = battery->power_unit;
++
+       acpi_battery_get_info(battery);
+-      /* The battery may have changed its reporting units. */
++
++      if (power_unit == battery->power_unit)
++              return;
++
++      /* The battery has changed its reporting units. */
+       sysfs_remove_battery(battery);
+       sysfs_add_battery(battery);
+ }
index d13c4cb62bcb665b9d2d3a45caf0481f9008ca27..82e8e9cd5fea26af189a3e9c8434364959b70fcf 100644 (file)
@@ -43,3 +43,4 @@ ext4-don-t-trash-state-flags-in-ext4_ioc_setflags.patch
 ext4-add-ext4_mb_unload_buddy-in-the-error-path.patch
 ext4-remove-mb_groups-before-tearing-down-the-buddy_cache.patch
 drm-radeon-kms-add-new-btc-pci-ids.patch
+acpi-battery-only-refresh-the-sysfs-files-when-pertinent-information-changes.patch