So Why is ACPI Such A Problem in Linux?


Anyone who’s worked on Linux must’ve come across a fair share of ACPI-related problems – lockups, standby problems etc. Some of the “solutions” is to disable ACPI support by passing the noacpi parameter during boot-up. So why is ACPI so problematic under Linux?

Ankit Chaturvedi has this excellent post on this.

A quick excerpt

Problem with ACPI

So ACPI is a great specification, it lets you put your PC to sleep/suspend and save power and all. But then why does your linux box fail to recover from a suspend-resume cycle? The answer is again MS. ACPI standard was first implemented by Microsoft a long time ago, and due to the popularity of Windows hardware manufacturers chose to get their hardware passed by the Microsoft’s Hardware Compliance Tests. But herein lies the problem. Microsoft’s ACPI implementation differs slightly from the specification, and so came a lot of buggy BIOS’es that don’t fully follow the ACPI specs from Intel, which is what Linux implementation is based upon. So much for the history, now the question is, what does it affect on your system? For Linux developers, this provides a challenge as vendors are reluctant to change their BIOS to conform to Linux.ACPI In Linux

ACPI in Linux is implemented pretty straightforwardly. The ACPI specification says that a ACPI enabled OS must be able to understand AML, the ACPI Machine Language. For the linux-kernel to understand the ACPI Machine Language it needs an interpreter inside the kernel, which amounts to about 72000 lines of code alone and is part of the kernel since the 2.6 series.

Continue Reading the article over at Dumpyard – ACPI in depth

If you enjoyed this post, make sure you subscribe to my RSS feed!
Possibly Related posts:
This is the problem that affected me the most in
I had encountered this problem on sudo/gksu not working few months earlier. Whenever
Hello people, This is Bharath Ram. I wanted to share with
Most of the how-to's and fixes posted here, are generally
This one seems to be a really famous problem for

If you enjoyed this post, please consider to leave a comment or subscribe to the feed and get future articles delivered to your feed reader.

One Comment

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>