Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bbf14513 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* '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
parents af6f2b2b 629cf6d7
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -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:
+11 −4
Original line number Diff line number Diff line
@@ -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");
	}
+1 −1
Original line number Diff line number Diff line
@@ -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);
	}