Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  ACPI: fix 2.6.20 SMP boot regression
  ACPICA: fix error path in new external package objects as method arguments
  ACPI: gracefully print null trip-point device
This commit is contained in:
Linus Torvalds 2007-06-23 15:12:53 -07:00
commit bbf14513ff
3 changed files with 18 additions and 9 deletions

View file

@ -332,16 +332,18 @@ static void acpi_processor_idle(void)
int sleep_ticks = 0;
u32 t1, t2 = 0;
pr = processors[smp_processor_id()];
if (!pr)
return;
/*
* Interrupts must be disabled during bus mastering calculations and
* for C2/C3 transitions.
*/
local_irq_disable();
pr = processors[smp_processor_id()];
if (!pr) {
local_irq_enable();
return;
}
/*
* Check whether we truly need to go idle, or should
* reschedule:

View file

@ -828,6 +828,8 @@ static int acpi_thermal_trip_seq_show(struct seq_file *seq, void *offset)
{
struct acpi_thermal *tz = seq->private;
struct acpi_device *device;
acpi_status status;
int i = 0;
int j = 0;
@ -850,8 +852,10 @@ static int acpi_thermal_trip_seq_show(struct seq_file *seq, void *offset)
tz->trips.passive.tc1, tz->trips.passive.tc2,
tz->trips.passive.tsp);
for (j = 0; j < tz->trips.passive.devices.count; j++) {
acpi_bus_get_device(tz->trips.passive.devices.handles[j], &device);
seq_printf(seq, "%4.4s ", acpi_device_bid(device));
status = acpi_bus_get_device(tz->trips.passive.devices.
handles[j], &device);
seq_printf(seq, "%4.4s ", status ? "" :
acpi_device_bid(device));
}
seq_puts(seq, "\n");
}
@ -863,8 +867,11 @@ static int acpi_thermal_trip_seq_show(struct seq_file *seq, void *offset)
i,
KELVIN_TO_CELSIUS(tz->trips.active[i].temperature));
for (j = 0; j < tz->trips.active[i].devices.count; j++){
acpi_bus_get_device(tz->trips.active[i].devices.handles[j], &device);
seq_printf(seq, "%4.4s ", acpi_device_bid(device));
status = acpi_bus_get_device(tz->trips.active[i].
devices.handles[j],
&device);
seq_printf(seq, "%4.4s ", status ? "" :
acpi_device_bid(device));
}
seq_puts(seq, "\n");
}

View file

@ -177,7 +177,7 @@ union acpi_operand_object *acpi_ut_create_package_object(u32 count)
package_elements = ACPI_ALLOCATE_ZEROED((acpi_size)
(count + 1) * sizeof(void *));
if (!package_elements) {
ACPI_FREE(package_desc);
acpi_ut_remove_reference(package_desc);
return_PTR(NULL);
}