diff options
author | Len Brown <len.brown@intel.com> | 2007-06-23 10:58:24 -0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2007-06-23 10:58:24 -0400 |
commit | 629cf6d74beca87d57cea3e38edf7522c397d41e (patch) | |
tree | 43008ac73254d80cfa72e385fe40335d7884a92e /drivers | |
parent | 75154f402ef18e459ff97ddece25656b6c2b329c (diff) | |
parent | d5a3d32a042126f65a008e0e5204ef92ad2ee55d (diff) |
Pull now into release branch
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/acpi/processor_idle.c | 10 | ||||
-rw-r--r-- | drivers/acpi/thermal.c | 15 | ||||
-rw-r--r-- | drivers/acpi/utilities/utobject.c | 2 |
3 files changed, 18 insertions, 9 deletions
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index ee5759bef945..80ffc7829916 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c | |||
@@ -332,16 +332,18 @@ static void acpi_processor_idle(void) | |||
332 | int sleep_ticks = 0; | 332 | int sleep_ticks = 0; |
333 | u32 t1, t2 = 0; | 333 | u32 t1, t2 = 0; |
334 | 334 | ||
335 | pr = processors[smp_processor_id()]; | ||
336 | if (!pr) | ||
337 | return; | ||
338 | |||
339 | /* | 335 | /* |
340 | * Interrupts must be disabled during bus mastering calculations and | 336 | * Interrupts must be disabled during bus mastering calculations and |
341 | * for C2/C3 transitions. | 337 | * for C2/C3 transitions. |
342 | */ | 338 | */ |
343 | local_irq_disable(); | 339 | local_irq_disable(); |
344 | 340 | ||
341 | pr = processors[smp_processor_id()]; | ||
342 | if (!pr) { | ||
343 | local_irq_enable(); | ||
344 | return; | ||
345 | } | ||
346 | |||
345 | /* | 347 | /* |
346 | * Check whether we truly need to go idle, or should | 348 | * Check whether we truly need to go idle, or should |
347 | * reschedule: | 349 | * reschedule: |
diff --git a/drivers/acpi/thermal.c b/drivers/acpi/thermal.c index 194ecfe8b360..88a6fc7fd271 100644 --- a/drivers/acpi/thermal.c +++ b/drivers/acpi/thermal.c | |||
@@ -828,6 +828,8 @@ static int acpi_thermal_trip_seq_show(struct seq_file *seq, void *offset) | |||
828 | { | 828 | { |
829 | struct acpi_thermal *tz = seq->private; | 829 | struct acpi_thermal *tz = seq->private; |
830 | struct acpi_device *device; | 830 | struct acpi_device *device; |
831 | acpi_status status; | ||
832 | |||
831 | int i = 0; | 833 | int i = 0; |
832 | int j = 0; | 834 | int j = 0; |
833 | 835 | ||
@@ -850,8 +852,10 @@ static int acpi_thermal_trip_seq_show(struct seq_file *seq, void *offset) | |||
850 | tz->trips.passive.tc1, tz->trips.passive.tc2, | 852 | tz->trips.passive.tc1, tz->trips.passive.tc2, |
851 | tz->trips.passive.tsp); | 853 | tz->trips.passive.tsp); |
852 | for (j = 0; j < tz->trips.passive.devices.count; j++) { | 854 | for (j = 0; j < tz->trips.passive.devices.count; j++) { |
853 | acpi_bus_get_device(tz->trips.passive.devices.handles[j], &device); | 855 | status = acpi_bus_get_device(tz->trips.passive.devices. |
854 | seq_printf(seq, "%4.4s ", acpi_device_bid(device)); | 856 | handles[j], &device); |
857 | seq_printf(seq, "%4.4s ", status ? "" : | ||
858 | acpi_device_bid(device)); | ||
855 | } | 859 | } |
856 | seq_puts(seq, "\n"); | 860 | seq_puts(seq, "\n"); |
857 | } | 861 | } |
@@ -863,8 +867,11 @@ static int acpi_thermal_trip_seq_show(struct seq_file *seq, void *offset) | |||
863 | i, | 867 | i, |
864 | KELVIN_TO_CELSIUS(tz->trips.active[i].temperature)); | 868 | KELVIN_TO_CELSIUS(tz->trips.active[i].temperature)); |
865 | for (j = 0; j < tz->trips.active[i].devices.count; j++){ | 869 | for (j = 0; j < tz->trips.active[i].devices.count; j++){ |
866 | acpi_bus_get_device(tz->trips.active[i].devices.handles[j], &device); | 870 | status = acpi_bus_get_device(tz->trips.active[i]. |
867 | seq_printf(seq, "%4.4s ", acpi_device_bid(device)); | 871 | devices.handles[j], |
872 | &device); | ||
873 | seq_printf(seq, "%4.4s ", status ? "" : | ||
874 | acpi_device_bid(device)); | ||
868 | } | 875 | } |
869 | seq_puts(seq, "\n"); | 876 | seq_puts(seq, "\n"); |
870 | } | 877 | } |
diff --git a/drivers/acpi/utilities/utobject.c b/drivers/acpi/utilities/utobject.c index db0b9bac7945..76ee766c84f9 100644 --- a/drivers/acpi/utilities/utobject.c +++ b/drivers/acpi/utilities/utobject.c | |||
@@ -177,7 +177,7 @@ union acpi_operand_object *acpi_ut_create_package_object(u32 count) | |||
177 | package_elements = ACPI_ALLOCATE_ZEROED((acpi_size) | 177 | package_elements = ACPI_ALLOCATE_ZEROED((acpi_size) |
178 | (count + 1) * sizeof(void *)); | 178 | (count + 1) * sizeof(void *)); |
179 | if (!package_elements) { | 179 | if (!package_elements) { |
180 | ACPI_FREE(package_desc); | 180 | acpi_ut_remove_reference(package_desc); |
181 | return_PTR(NULL); | 181 | return_PTR(NULL); |
182 | } | 182 | } |
183 | 183 | ||