Re: Linux 2.6.28-rc5

From: Linus Torvalds
Date: Sun Nov 16 2008 - 12:25:37 EST



On Sun, 16 Nov 2008, Bruno Prémont wrote:
>
> The following change is guilty on my machine (though I could not find
> the matching commit on git.kernel.org :( )

It's commit 0794469da3f7b2093575cbdfc1108308dd3641ce: "ACPI: struct device
- replace bus_id with dev_name(), dev_set_name()", and yes, it seems
totally buggy. It replaced a test for "dev->bus" with "dev_name(dev)",
which makes no sense.

> Reverting the change below makes the error go away.

Does this smaller patch just make it go away?

That said, that whole function looks potentially buggy. Len - why is it
safe to do "list_for_each_safe()" when you drop the acpi_device_lock in
the middle? The "next" pointer that we look up may go away while the lock
is dropped, I think.

Linus

---
drivers/acpi/sleep/proc.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/acpi/sleep/proc.c b/drivers/acpi/sleep/proc.c
index 64e591b..4dbc227 100644
--- a/drivers/acpi/sleep/proc.c
+++ b/drivers/acpi/sleep/proc.c
@@ -366,7 +366,7 @@ acpi_system_wakeup_device_seq_show(struct seq_file *seq, void *offset)
dev->wakeup.state.enabled ? "enabled" : "disabled");
if (ldev)
seq_printf(seq, "%s:%s",
- dev_name(ldev) ? ldev->bus->name : "no-bus",
+ ldev->bus ? ldev->bus->name : "no-bus",
dev_name(ldev));
seq_printf(seq, "\n");
put_device(ldev);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/