Attachments (5)
Change History (26)
by , 15 years ago
Attachment: | DSC_0672.JPG added |
---|
by , 15 years ago
Attachment: | DSC_0674.JPG added |
---|
by , 15 years ago
Attachment: | DSC_0676.JPG added |
---|
comment:1 by , 15 years ago
Component: | - General → Drivers/ACPI |
---|
comment:2 by , 15 years ago
Description: | modified (diff) |
---|---|
Summary: | don't boot :( → Hang at boot with updated ACPI module |
comment:3 by , 15 years ago
What happen when you don't set acpi_avoid_full_init to true, aka when you allow full ACPI init?
Before hrev33236, ACPI was not in a better shape but was, in fact, safer because its initialisation was half done, stopping a lot of non/bad-implemented feature to crash.
comment:4 by , 15 years ago
I have the same problem on my laptop (Fujitsu-siemens Amilo li2735). With or without the acpi_avoid_full_init.
comment:5 by , 15 years ago
Cc: | added |
---|
Hanging that late is probably not the ACPI impl itself (it did pass ACPI init and is in ACPI mode). It's most likely one of the ACPI drivers, probably ACPI Embedded Controller. Try removing it when booting with ACPI disabled and see if it boots to desktop.
(ACPI init is done under the third icon)
by , 15 years ago
Attachment: | acpi_fix_global_locking.patch added |
---|
Fixed global locking code, base on FreeBSD's
comment:6 by , 15 years ago
I think the attached patch should fix this as I had, and was working on tracking the same issue on my laptop. For me it turned out that the global locking code was broken, and all my systems can now fully run under ACPI.
(Some additional code is in the patch, but IMO that should be updated as well.) FreeBSD impl can be viewed here: http://fxr.watson.org/fxr/source/dev/acpica/Osd/OsdSynch.c#L581
comment:7 by , 15 years ago
At least one person has confirmed this patch to fix the hang for them, more feedback welcome. Also I think it should be possible to commit it (pls review first).
comment:8 by , 15 years ago
I'll test your patch ASAP and if it does fix it, as I believe it will, I'll do the commit.
comment:9 by , 15 years ago
The patch fixes my laptop's AHCI hang. Does a full init now, and PowerStatus works. No CPUFrequency info though. syslog attached if anyone's interested.
follow-up: 19 comment:12 by , 15 years ago
The check in AcpiOsWritable should probably be:
return (info.protection & B_READ_AREA) && (info.protection & B_WRITE_AREA) && (pointer + length) <= (info.address + info.ram_size);
comment:14 by , 15 years ago
with hrev33781 my laptop doesn't hang at boot anymore with ACPI enabled, and it also shuts down correctly. Nice work tqh! Bug closed for me.
follow-up: 17 comment:15 by , 15 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Indeed. And +1 for tqh thanking. BTW tqh, do you ask commit access already?
comment:17 by , 15 years ago
comment:18 by , 15 years ago
Replying to tqh:
No I havn't, but it would simplify things for me.
I've just call a vote for it on haiku-development.
comment:19 by , 15 years ago
Replying to tqh:
The check in AcpiOsWritable should probably be:
return (info.protection & B_READ_AREA) && (info.protection & B_WRITE_AREA) && (pointer + length) <= (info.address + info.ram_size);
Besides the coding style issues, I'm not sure if that's what you mean. B_READ_AREA means readable from userland. Likewise, B_WRITE_AREA means writable from userland as well.
comment:20 by , 15 years ago
I think that is mostly for userland, it wasn't really supposed to be part of the patch. It was however better than what was in svn so to test if it fixed hang for others I let it be there. Just wanted to mention it's not correct.
comment:21 by , 15 years ago
acpica can be used to build a lot of acpi tools as well. I just implemented most of the functions to make sure those weren't problems.
I do also experience the hang at boot on my laptop since the update of the ACPI module. It's a HP/Compaq 2510p. I can get debug output as required.