Intel Finally Delivers Stable i830GM/i845G Driver

Posted by Michael Larabel on December 15, 2012

While the Intel 830GM and 845G chipsets were first introduced more than one decade ago, their graphics driver support has been botched for much of the time. As of today though, Intel Linux driver developers think they have taken care of the longstanding stability issues with this now ancient hardware.

Since the introduction of the Graphics Execution Manager (GEM) in 2008 for managing the memory used by the Intel Linux graphics driver, the old i830/845 support has been a mess. Various attempts were tried by Intel Open-Source Technology Center developers like doing a GEM-free UMS driver and various other shots to hopefully stabilize the support and make hardware acceleration work well. These attempts though haven't been a great success.

Back in August they worked their xf86-video-intel X.Org driver finally to a point where they could re-enable hardware acceleration by default. However, with this enabled acceleration support, Intel developers still knew the hardware would hang at some point. "Enable acceleration by default on 830gm/845g. The GMCH on this pair of chipsets is notoriously incoherent, so the GPU is almost certainly going to hang at some point, though unlikely to hang the system and should automatically disable acceleration (and thence behave identically as if the acceleration was disabled from the start). Option NoAccel can be used to disable all 2D acceleration and Option DRI can be used to disable all 3D acceleration."

To some surprise when waking up this morning, it turns out that they think they have finally countered the i830GM/845G stability issues once and for all.

Chris Wilson began the announcement for today's xf86-video-intel 2.20.16 release by rejoicing over this old Brookdale chipset support finally being stabilized. By making a small change, they discovered they can actually provide stable support for this hardware that is painstakingly slow by today's standards.
Rejoice! We have found a trick to make 830gm/845g stable at long last. Ever since the switch to GEM and dynamic video memory, those early second generation chipsets have been plagued by instability. The lack of flushing cachelines from the CPU to GMCH was eventually solved by using an undocmented bit, but 830/845 were still hanging under memory pressure. These deaths were all due to garbage finding its way into the command streamer, and they go away if we take a leaf out of the original driver and never reuse those pages for anything else. So for the first time ever, I have been able to complete running the test suite on an 845g, even whilst thrashing the page and buffer caches!
Other changes to the weekend release of xf86-video-intel 2.20.16 include running the SF stage as a single-thread for "Gen4" hardware to workaround some bugs, scanout fixes for Gen6/Gen7, tune batch flushing, and a handful of other fixes.

As usual, Intel's Chris Wilson continues to be the dominant developer working on this 2D X.Org driver with him taking responsibility for 53 of the changes in this latest point release while Jesse Barnes was the only other contributor with just one change.

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. Radeon HD 7850 Catalyst wine performance
  2. Linux Desktop Security Could Be A Whole Lot Better
  3. Raspberry Pi Gets New Wayland Weston Renderer
  4. OpenChrome Driver Is Far From Feature Complete
  5. how to use old laptops with via gfx
  6. Digia Announces "Boot To Qt" Project
  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