1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

The Linux 3.0 Kernel Will... Reboot Better?

Linux Kernel

Published on 31 May 2011 06:47 PM EDT
Written by Michael Larabel in Linux Kernel
12 Comments

Beyond file-system cleancache support, a Microsoft Kinect driver, Intel Ivy Bridge support, and various open-source graphics driver improvements, the Linux 3.0 kernel may also reboot your system better. Yes, really.

Matthew Garrett of Red Hat today is blogging about the different ways to reset an x86 system and the limitations of these five different methods available on Linux. These methods include using kbd (rebooting via the keyboard controller), triple (generating a triple fault), PCI, EFI, and ACPI.

Matthew recently began exploring how Microsoft Windows handles the reboot process. "A while back I did some tests with Windows running on top of qemu. This is a great way to evaluate OS behaviour, because you've got complete control of what's handed to the OS and what the OS tries to do to the hardware. And what I discovered was a little surprising. In the absence of an ACPI reboot vector, Windows will hit the keyboard controller, wait a while, hit it again and then give up. If an ACPI reboot vector is present, windows will poke it, try the keyboard controller, poke the ACPI vector again and try the keyboard controller one more time."

Knowing this ended up being very useful. "This turns out to be important. The first thing it means is that it generates two writes to the ACPI reboot vector. The second is that it leaves a gap between them while it's fiddling with the keyboard controller. And, shockingly, it turns out that on most systems the ACPI reboot vector points at 0xcf9 in system IO space. Even though most implementations nominally require two different values be written, it seems that this isn't a strict requirement and the ACPI method works."

Now knowing this, Matthew adapted this reboot method to the Linux kernel and it's been integrated into the 3.0 kernel. Not only is it in this next kernel release, but it will be the default behavior. This blog post by Matthew has all of the details and he notes that this should fix the Linux reboot support for various Apple computers and ThinkPads, in particular.

The Linux 3.0 kernel may also solve the Linux kernel power regressions.

Latest Linux Hardware Reviews
  1. 13-Way Low-End GPU Comparison With AMD's AM1 Athlon
  2. ASUS AM1I-A: A Mini-ITX Board For Socketed Kabini APUs
  3. Mini-Box M350: A Simple, Affordable Mini-ITX Case
  4. Overclocking The AMD AM1 Athlon & Sempron APUs
Latest Linux Articles
  1. Ubuntu 12.04.4 vs. 13.10 vs. 14.04 LTS Desktop Benchmarks
  2. AMD OpenCL Performance With AM1 Kabini APUs
  3. A Quick Look At GCC 4.9 vs. LLVM Clang 3.5
  4. Are AMD Athlon/Sempron APUs Fast Enough For Steam On Linux?
Latest Linux News
  1. The Improv ARM Board Still Isn't Shipping; Riding A Dead Horse?
  2. Debian To Maintain 6.0 Squeeze As An LTS Release
  3. Wasteland 2 Is Finally Released For Linux Gamers
  4. FreeBSD Advances For ARM, Bhyve, Clang
  5. Ubuntu 14.04 LTS "Trusty Tahr" Officially Released
  6. Ubuntu 12.04 LTS vs. 14.04 LTS Server Benchmarks
  7. QEMU 2.0 Released With ARM, x86 Enhancements
  8. Running The Unity 8 Preview Session On Ubuntu 14.04 LTS
  9. R600 Gallium3D Disables LLVM Back-End By Default
  10. Fedora 21 Gets GNOME 3.12, PHP 5.6, Mono 3.4
  11. Fedora Workstation Is Making Me Quite Excited
  12. Maynard: A Lightweight Wayland Desktop
Latest Forum Discussions
  1. The GNOME Foundation Is Running Short On Money
  2. Updated and Optimized Ubuntu Free Graphics Drivers
  3. Radeon 8000M problematic on Linux?
  4. Linux Kernel Developers Fed Up With Ridiculous Bugs In Systemd
  5. After Jack Keane, RuseSoft will briing Ankh 3 to Linux through Desura
  6. Suspected PHP Proxy Issue
  7. Change installation destination from home directory
  8. Bye bye BSD, Hello Linux: A Sys Admin's Story