Intel Tries To Fix RC6 Support Once Again

Posted by Michael Larabel on February 12, 2012

After several attempts that ultimately failed, this weekend Eugeni Dodonov published a patch-set as "Another chapter in RC6 saga..." where he hopes the Sandy Bridge RC6 power-savings (and performance boosting) support is finally reliable to enable by default.

For those that aren't familiar with Intel RC6 at this stage, you must read more Phoronix articles as it's been routinely covered in past months. To get up to speed, read SNB RC6 On Linux 3.1 Is Both Good & Bad where it outlines the power-savings abilities of this hardware feature, which allows the Intel graphics processor to be dropped into a lower-power state. At the same time as conserving precious energy, RC6 can also boost graphics performance as Phoronix benchmarks have shown in other articles.

Unfortunately for a select number of systems, having RC6 enabled has caused issues when booting and/or lock-ups. There's also a more problematic deeper RC6 state, but Sandy Bridge and Ivy Bridge RC6 support was enabled for Linux 3.2 and then quickly reverted as it still was causing problems, among other failed attempts by Intel to support this feature. Sandy Bridge is the first Intel generation of hardware to support RC6, which is where the Linux support is buggy, but under the next-generation Ivy Bridge hardware is where RC6 support is said to be more stable and is still enabled by default in the mainline kernel.

RC6 is really great as the power savings tend to be significant and the performance boost is also measurable and welcomed. Seeing Intel not be able to nail this feature by default but rather relying upon using the i915.i915_enable_rc6=1 parameter to tap this power-savings has been unfortunate as most Linux users are likely unaware of its existence. Fortunately, Eugeni's latest patches might finally be in order.

From the Intel mailing list on Saturday:
so far, apparently all the RC6-related issues on Sandy Bridge seem to be gone when we enable RC6 but do not enable deep RC6. This apparently also cures the symptoms we were seeing with RC6 when VTd was active, so in theory we won't need the intel_iommu duct-taping anymore.

Somehow, we haven't attempted to flip the default RC6 status once again this year (yet), so this seems to be a good timing to get this into -next and ask the ones affected by RC6 bugs with 3.2 kernel to test. If this indeed would fix the problems with rc6, I guess we can slip this into -fixes; but with all the RC6 default status flip-flopping of the past months I prefer to be sure that it won't get reverted once again.

Note that this patch also gives a way to get into deepest rc6 - but it really never should be enabled by default. It is provided merely as a way to easy the debugging of those RC6 issues in the future.

This sounds quite promising, especially that RC6 should now play well when Intel VTd support is enabled. Landing his two RC6 patches into the "-next" branch would mean that the revised RC6 support would go into the Linux 3.4 kernel in the coming months. If everything pans out there, it could hit "-fixes" so the patches could would work their way back to the stable branches (sadly, probably too late for the initial release of Ubuntu 12.04 LTS).

In terms of the deeper RC6 states that still won't be on by default due to issues, those are still toggled by the i915.i915_enable_rc6 kernel parameter. However, rather than just using a value of 1 to enable the support, setting it to 3 would enable deep RC6, a value of 5 would enable the deepest RC6 state, and a value of 7 would enable everything.

More Phoronix tests of Intel RC6 are being conducted.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Linux Desktop Security Could Be A Whole Lot Better
  2. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  3. New NVIDIA Linux Driver Supports The GeForce GTX 780
  4. Chrome 28 To Offer More Speed Improvements
  5. Digia Announces "Boot To Qt" Project
  6. X.Org Libraries Hit By Round Of Security Issues
  7. Wayland's Weston Gets Output Scaling Support
  8. Raspberry Pi Gets New Wayland Weston Renderer
  9. Debian GNU/Hurd 2013 Release Brings New Packages
  10. Intel Ultrabook Performance Is Faster With Mesa 9.2
  11. Hot Relocation HDD To SSD Support For Btrfs
Latest Forum Talk
  1. KDE 4.11 Will Be The Last Major KDE4 Workspaces...
  2. Linux Desktop Security Could Be A Whole Lot Better
  3. how to use old laptops with via gfx
  4. Raspberry Pi Gets New Wayland Weston Renderer
  5. Fedora 19 Alpha Gets Its First Delay Due To UEFI
  6. Wayland's Weston Gets Output Scaling Support
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite