DebuggingACPI

Differences between revisions 5 and 32 (spanning 27 versions)
Revision 5 as of 2007-01-30 21:03:59
Size: 1063
Editor: c-24-21-235-175
Comment:
Revision 32 as of 2011-03-03 18:36:15
Size: 4828
Editor: c-98-246-63-231
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
ACPI support is tough to get right, so we expect to frequently see problems there. When debugging ACPI problems, ask for the following information: <<Include(Debugging/Header)>>
||<tablestyle="float:right; font-size: 0.9em; width:30%; background:#F1F1ED; background-image: url('https://librarian.launchpad.net/1812570/bugsquad.png'); background-repeat: no-repeat; background-position: 98% 0.5ex; margin: 0 0 1em 1em; padding: 0.5em;"><<TableOfContents>>||
Line 3: Line 4:
 * Output of 'uname -a'
 * Output of 'sudo lspci -vv'
 * Output of 'sudo lspci -vvn'
 * Output of 'sudo dmidecode'
 * Ask the user to try to hibernate/suspend and then restart the system and attach /var/log/kern.log.0
= Introduction =
Line 9: Line 6:
Such bugs should be against linux-source-# where number is the specific kernel version. For example, the correct package in Malone for Edgy is linux-source-2.6.17. The Advanced Configuration and Power Interface (ACPI) is an open industry specification which establishes industry-standard interfaces enabling OS-directed configuration, power management, and thermal management of mobile, desktop, and server platforms. Support is often tough to get right. The following information can help with debugging ACPI related issues. For background information regarding ACPI, see [[http://www.acpi.info/|www.acpi.info]], [[http://www.acpi.info/presentations/ACPI_Overview.pdf|ACPI Overview]] and [[http://en.wikipedia.org/wiki/Acpi|Wikipedia]].
Line 11: Line 8:
Here's a standard response to use: = Debugging procedure =
Line 13: Line 10:
Thanks for reporting this bug. To make any progress with it, some
more information will be needed. Please add (by commenting on the
bug) to the bug report the output of the following commands:
(See [[http://www.lesswatts.org/projects/acpi/debug.php|LessWatts.org]] for more information regarding ACPI debugging in general.)
Line 17: Line 12:
 * uname -a
 * sudo lspci -vv
 * sudo lspci -vvn
 * sudo dmidecode
 1. Make sure your BIOS is up to date.
  * To find the version of the BIOS you currently have, run {{{sudo dmidecode}}}. The version of your BIOS should be listed in the BIOS Information section of the output.
  * Check to see if your hardware's manufacturer has provided a newer BIOS version.
Line 22: Line 16:
It would also be helpful if you could try to hibernate/suspend and after that
fails, restart your system and attach /var/log/kern.log.0 as well. Thanks again
for your contribution.
=== Trouble Booting ===

For detailed instructions regarding how to modify boot parameters see DebuggingKernelBoot.

 1. Try booting with the "acpi=off" kernel parameter
  * This will disable ACPI support. If the error is the same with ACPI enabled and disabled, this may not be an ACPI issue.
 1. If "acpi=off" allows the system to boot, try to isolate the ACPI issue with the following boot parameters
  * Try booting with "acpi=ht"
   * This disables all of ACPI except just enough to enable Hyper Threading. If acpi=off works and acpi=ht fails, then the issue is in the ACPI table parsing code itself, or perhaps the SMP code.
  * Try booting with "pci=noacpi"
   * This disables ACPI for IRQ routing and PCI scanning.
  * Try booting with "acpi=noirq"
   * This disables ACPI for IRQ routing.
  * Try booting with "pnpacpi=off"
   * This disables the ACPI component of the Linux Plug and Play code.
  * Try booting with "noapic"
   * Disables the IO-APIC for IRQ routing or PCI scanning.
  * Try booting with "nolapic"
   * Disables the local APIC.

=== Fan Issues ===

These usually relate to the fan spinning too often or too fast. Another indication may be that the temperature remains high even when the fans are spinning.

 1. Determine if the system has ACPI-based fan control
  * if '''/proc/acpi/fan''' is empty and '''/proc/acpi/thermal_zone/*/trip_points''' has no active trip points (those starting with "AC") then there is no ACPI-based fan control on your system
 1. If the system does have an ACPI-based fan control try booting with kernel parameter options listed above

= Filing a Bug Report =

When filing an ACPI related bug, please attach the following information to the bug report as _separate_ attachments:

 * Output of {{{uname -a}}}
 * Output of {{{sudo lspci -vvnn}}}
 * Output of {{{sudo dmidecode > dmidecode.txt }}}
 * Try to hibernate/suspend and then restart the system and attach {{{/var/log/kern.log.0}}}
 * Tarball of /proc/acpi directory. You can't just tar all files because their content sometimes changes etc.
  * {{{cp -r /proc/acpi /tmp}}}
  * {{{tar -cvjf ~/acpi.tar.bz /tmp/acpi}}}

Such bugs should be reported against the linux package.

Sometimes, everything works except resume (that is, all ACPI functions work, the user can hibernate and restart their computer, etc.). In this case, the DebuggingKernelSuspend procedure can be useful. UnderstandingSuspend can also provide some useful information.

== Easy Copy/Paste for replying to Bug Reports ==

{{{
Thank you for taking the time to report this bug and helping to make Ubuntu better. Unfortunately we can't fix it, because your description didn't include enough information.

Please include the information as separate attachments:
 * Output of uname -a
    * uname -a > uname.txt
 * Output of sudo lspci -vvnn
    * sudo lspci -vvnn > lspci.txt
 * Output of sudo dmidecode
    * sudo dmidecode > dmidecode.txt
 * Try to suspend/hibernate and then restart the system and attach /var/log/kern.log.0
 * Tarball of /proc/acpi directory. You can't just tar all files because their content sometimes changes etc.
    * cp -r /proc/acpi /tmp
    * tar -cvjf ~/acpi.tar.bz /tmp/acpi
    * attach acpi.tar.bz from your home directory
}}}

= Also see =

 * [[https://wiki.ubuntu.com/DebuggingGNOMEPowerManager|DebuggingGNOMEPowerManager]]
Line 26: Line 83:
CategoryBugSquad CategoryBugSquad CategoryDebugging

Debugging Central

This page is part of the debugging series — pages with debugging details for a variety of Ubuntu packages.

Introduction

The Advanced Configuration and Power Interface (ACPI) is an open industry specification which establishes industry-standard interfaces enabling OS-directed configuration, power management, and thermal management of mobile, desktop, and server platforms. Support is often tough to get right. The following information can help with debugging ACPI related issues. For background information regarding ACPI, see www.acpi.info, ACPI Overview and Wikipedia.

Debugging procedure

(See LessWatts.org for more information regarding ACPI debugging in general.)

  1. Make sure your BIOS is up to date.
    • To find the version of the BIOS you currently have, run sudo dmidecode. The version of your BIOS should be listed in the BIOS Information section of the output.

    • Check to see if your hardware's manufacturer has provided a newer BIOS version.

Trouble Booting

For detailed instructions regarding how to modify boot parameters see DebuggingKernelBoot.

  1. Try booting with the "acpi=off" kernel parameter
    • This will disable ACPI support. If the error is the same with ACPI enabled and disabled, this may not be an ACPI issue.
  2. If "acpi=off" allows the system to boot, try to isolate the ACPI issue with the following boot parameters
    • Try booting with "acpi=ht"
      • This disables all of ACPI except just enough to enable Hyper Threading. If acpi=off works and acpi=ht fails, then the issue is in the ACPI table parsing code itself, or perhaps the SMP code.
    • Try booting with "pci=noacpi"
      • This disables ACPI for IRQ routing and PCI scanning.
    • Try booting with "acpi=noirq"
      • This disables ACPI for IRQ routing.
    • Try booting with "pnpacpi=off"
      • This disables the ACPI component of the Linux Plug and Play code.
    • Try booting with "noapic"
      • Disables the IO-APIC for IRQ routing or PCI scanning.
    • Try booting with "nolapic"
      • Disables the local APIC.

Fan Issues

These usually relate to the fan spinning too often or too fast. Another indication may be that the temperature remains high even when the fans are spinning.

  1. Determine if the system has ACPI-based fan control
    • if /proc/acpi/fan is empty and /proc/acpi/thermal_zone/*/trip_points has no active trip points (those starting with "AC") then there is no ACPI-based fan control on your system

  2. If the system does have an ACPI-based fan control try booting with kernel parameter options listed above

Filing a Bug Report

When filing an ACPI related bug, please attach the following information to the bug report as _separate_ attachments:

  • Output of uname -a

  • Output of sudo lspci -vvnn

  • Output of sudo dmidecode > dmidecode.txt 

  • Try to hibernate/suspend and then restart the system and attach /var/log/kern.log.0

  • Tarball of /proc/acpi directory. You can't just tar all files because their content sometimes changes etc.
    • cp -r /proc/acpi /tmp

    • tar -cvjf ~/acpi.tar.bz /tmp/acpi

Such bugs should be reported against the linux package.

Sometimes, everything works except resume (that is, all ACPI functions work, the user can hibernate and restart their computer, etc.). In this case, the DebuggingKernelSuspend procedure can be useful. UnderstandingSuspend can also provide some useful information.

Easy Copy/Paste for replying to Bug Reports

Thank you for taking the time to report this bug and helping to make Ubuntu better. Unfortunately we can't fix it, because your description didn't include enough information.

Please include the information as separate attachments:
 * Output of uname -a
    * uname -a > uname.txt
 * Output of sudo lspci -vvnn
    * sudo lspci -vvnn > lspci.txt
 * Output of sudo dmidecode
    * sudo dmidecode > dmidecode.txt
 * Try to suspend/hibernate and then restart the system and attach /var/log/kern.log.0
 * Tarball of /proc/acpi directory. You can't just tar all files because their content sometimes changes etc.
    * cp -r /proc/acpi /tmp
    * tar -cvjf ~/acpi.tar.bz /tmp/acpi
    * attach acpi.tar.bz from your home directory

Also see


CategoryBugSquad CategoryDebugging

DebuggingACPI (last edited 2011-03-03 18:36:15 by c-98-246-63-231)