Linux acpi off报告ACPI bug处理方法


Linux acpi off有自己的邮件列表linux-acpi@vger.kernel.org),你也可以在那里讨论问题。另外,Intel的Linux/ACPI组也有一个邮件地址acpi@linux.intel.com),如果你的问题不方便公开,可以发到这儿。

Linux acpi off如果你报告一个bug,请提交如下信息:
产生bug的kernel版本
以前的kernel有没有这样的bug。如果这是一个regression,最近可以工作的kernel版本是什么。如果你能使用git-bisect找到哪个patch带来regression,那问题基本上就等于解决了。
出错的kernel和最近工作kernel的dmesg信息。你可能需要使用serial console来得到这些信息。
如果这是中断相关的问题,可能的话请提供kernel出错和工作的时候/proc/interrupts的输出。/sbin/lspci –vvv和/sbin/lspci -xxx的输出也很有用。
请提供acpidump的输出。Acpidump是一个工具,它可以将系统中的ACPI表打出来。你可以在http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils/找到这个工具。注意acpidump输出的是BIOS的表,不同的BIOS版本可能会有不同的表。

如果我们发现BIOS有问题,我们可以将此系统列入黑名单,在这种情况下需要提供dmidecode通常在/usr/sbin/下)工具的输出。
产生bug的kernel配置文件
如何使用ACPI工具

http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils/,按照包里面的README编译。使用步骤如下:
导出所有的表,这些表都是二进制的
$ acpidump > acpidump.out
上面的输出包含了很多个ACPI表,如果你希望将它们分离开,使用
$ acpixtract -a acpidump.out
反汇编某个表
$ iasl -d TABLE.dat
这样就得到类C的AML代码。

Linux acpi off参考文档
 

  1. ACPI in Linux – Myths vs. Reality(OLS 2007)  
  2. paper: https://ols2006.108.redhat.com/2007/Reprints/brown_1-Reprint.pdf  
  3. presentation: http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/doc/OLS2007-acpi-myths-web/  
  4. ACPI in Linux – Architecture, Advances, and Challenges(OLS 2005)  
  5. paper: http://www.linuxsymposium.org/2005/linuxsymposium_procv1.pdf  
  6. presentation: http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/doc/ACPI_OLS_2005.pdf  
  7. The State of ACPI in the Linux Kernel(OLS 2004)  
  8. http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/doc/Reprint-Brown-OLS2004.pdf  

TODO列表

Suspend/resume的稳定性。Suspend-to-ram在很多笔记本电脑上不能工作。很多驱动程序没有实现.suspend/.resume方法或者实现有问题。
Hotkey的支持。很多笔记本电脑厂商使用完全不同的方法来支持hotkey,现在Linux支持IBM,Asus,Toshiba等。但是还有很多厂商的不支持,即使支持的厂商也有很多笔记本型号不支持。
运行时设备电源管理。Linux还缺乏一个框架在系统运行时对设备进行电源管理,例如在某个设备空闲时将它关闭而不影响整个系统的运行。
Device model方面的改进。Linux仍然缺乏一个好的机制将ACPI设备和它对应的物理设备统一起来处理。
Bugzilla上有很多Linux acpi off的bug

转自:http://wiki.zh-kernel.org/project/linux-acpi


 

相关内容

    暂无相关文章