Linux acpi off learning

Source: Internet
Author: User

The content of ACPI is complex. Learning ACPI can at least help us understand the configuration information. This information is obtained from the configuration of the legacy PNP device, to the multi-processor, to NUMA. For example, the current Multiple Core information can only be obtained from ACPI. Many codes for Linux Startup Process the configuration information, such as Linux acpi off and IOAPIC settings.


ACPI related devices. Laptop-related devices, including power buttons, batteries, external power supplies, fans, and hotkeys.
Underlying hardware. For example, for PCI interrupt routing, the chipset is mainly for the south bridge PCI-to-LPC bridge operation.
Power Management. The power management defined by ACPI includes CPU power management adjustment frequency P-state, idle C-state, throtting T-state), device power management (D-state ), system power management, such as Suspend-to-Ram, Suspend-to-Disk, and power off.
Device hot swapping. ACPI describes the hot swapping of devices in a unified way, from a single PCI device to the Docking Station of the laptop, to the whole PCI hierarchy, CPU, Memory, even the entire NUMA node.
To understand the modern PC platform, you must understand ACPI.

Linux acpi off tips for solving ACPI Problems

First, you can check whether this is a regression. If the previous version of Linux kernel can work, but the new version does not work, it is a regression. You can test different kernel to find out which version introduced the bug. Using git-bisect is a good choice. It can help you locate which patch causes regression. Some information about git-bisect is as follows:
Http://www.stardust.webpages.pl/files/handbook/handbook-en.pdf
Http://www.kernel.org/pub/software/scm/git/docs/tutorial.html
Http://www.kernel.org/pub/software/scm/git/docs/git-bisect.html

Linux acpi off system cannot start

Try the kernel Parameter "acpi = off". If this parameter has not changed, this is not an ACPI bug. Conversely, this is probably an ACPI bug. After confirming that it is an ACPI bug, we have other parameters to further differentiate which part of the bug is ACPI.

Acpi = ht
This parameter is almost the same as "acpi = off". It disables all ACPI functions except for the content related to the multi-processor configuration. If acpi = off is normal, but acpi = ht is abnormal, There is a bug in the Code for parsing the ACPI table or Linux SMP.

Pci = noacpi
Do not use ACPI to process any PCI-related content, including enumerative PCI root bus and PCI device interruption routing.

Acpi = noirq
Do not use ACPI to handle PCI device interruption routing. The difference from pci = noacpi is that it allows the use of ACPI to enumerate PCI root bus.

Pnpacpi = off
Do not use ACPI to enumerate PNP devices, such as serial ports, PS2 keyboards, and mouse.

Noapic
Do not use io-apic for device interruption routing. One of the effects of this is that the interrupt route table returned by ACPI is for PIC8259.

Nolapic
Do not use Local-APIC or IO-APIC.

Linux acpi off Device interruption Problems
There are many possibilities for interruptions, such as bugs in the driver. The most common interruption problem caused by ACPI is kernel output: "irqXX: nobody cared !". This means that the kernel receives an interrupt, but there is no driver to handle it. The Kernel will disable the interruption, so that all devices attached to the interruption will stop working. Pci = noacpi, acpi = noirq, pnpacpi = off, noapic, and nolapic can help isolate some problems. Another useful parameter is "irqpoll". When the above interruption problem occurs, it can enable the kernel to automatically detect which device has triggered the interruption. This parameter is useful for debugging systems that have problems with interrupted routes.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.