* ACPI patches for 2.6.22-rc5
@ 2007-06-23 15:04 Len Brown
2007-06-23 15:04 ` Len Brown
0 siblings, 1 reply; 4+ messages in thread
From: Len Brown @ 2007-06-23 15:04 UTC (permalink / raw)
To: linux-acpi
I'm requesting these three patches be included before 2.6.22 closes.
Please speak up if you see any issues with them.
thanks,
-Len
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/3] ACPI: gracefully print null trip-point device
@ 2007-06-23 15:04 ` Len Brown
0 siblings, 0 replies; 4+ messages in thread
From: Len Brown @ 2007-06-23 15:04 UTC (permalink / raw)
To: linux-acpi; +Cc: Thomas Renninger, Len Brown
From: Thomas Renninger <trenn@suse.de>
if acpi_bus_get_device() returns NULL, print nothing
instead of "<NUL" in /proc/acpi/thermal_zone/*/trip_points
Signed-off-by: Thomas Renninger <trenn@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
---
drivers/acpi/thermal.c | 15 +++++++++++----
1 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/drivers/acpi/thermal.c b/drivers/acpi/thermal.c
index 194ecfe..88a6fc7 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)
{
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.5.2.1.255.gca6c0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 2/3] ACPICA: fix error path in new external package objects as method arguments
@ 2007-06-23 15:04 ` Len Brown
0 siblings, 0 replies; 4+ messages in thread
From: Len Brown @ 2007-06-23 15:04 UTC (permalink / raw)
To: linux-acpi; +Cc: Myron Stowe, Len Brown
From: Myron Stowe <myron.stowe@hp.com>
In the routine acpi_ut_create_package_object(), if the
ACPI_ALLOCATE_ZEROED() fails then ACPI_FREE(package_desc) is called as
part of the cleanup. This should instead be
acpi_ut_remove_reference(package_desc) in order to remove the reference
acquired from acpi_ut_create_internal_object() [see the routine
acpi_ut_create_buffer_object() as an example of proper functionality].
Signed-off-by: Myron Stowe <myron.stowe@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
---
drivers/acpi/utilities/utobject.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/acpi/utilities/utobject.c b/drivers/acpi/utilities/utobject.c
index db0b9ba..76ee766 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)
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);
}
--
1.5.2.1.255.gca6c0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH 3/3] ACPI: fix 2.6.20 SMP boot regression
@ 2007-06-23 15:04 ` Len Brown
0 siblings, 0 replies; 4+ messages in thread
From: Len Brown @ 2007-06-23 15:04 UTC (permalink / raw)
To: linux-acpi; +Cc: Venkatesh Pallipadi, Len Brown
From: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Always disable/enable interrupts in the acpi idle routine,
even in the error path.
This is required as the 2.6.20 change in git commit d331e739f5ad2aaa9...
"Fix interrupt race in idle callback" expects the idle handler
to enable interrupt before returning.
There was a case in acpi idle routine, in which interrupt was not being
enabled before return, which caused the system to hang at bootup, while
enabling C-states on an SMP system.
The signature of the hang was that "processor.nocst"
was required to enable boot.
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
---
drivers/acpi/processor_idle.c | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c
index ee5759b..80ffc78 100644
--- a/drivers/acpi/processor_idle.c
+++ b/drivers/acpi/processor_idle.c
@@ -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:
--
1.5.2.1.255.gca6c0
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-06-23 15:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-23 15:04 ACPI patches for 2.6.22-rc5 Len Brown
2007-06-23 15:04 ` [PATCH 1/3] ACPI: gracefully print null trip-point device Len Brown
2007-06-23 15:04 ` Len Brown
2007-06-23 15:04 ` [PATCH 2/3] ACPICA: fix error path in new external package objects as method arguments Len Brown
2007-06-23 15:04 ` Len Brown
2007-06-23 15:04 ` [PATCH 3/3] ACPI: fix 2.6.20 SMP boot regression Len Brown
2007-06-23 15:04 ` Len Brown
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.