It seems like it was just yesterday, but Intel introduced the Graphics Execution Manager
more than two years after they had a falling out with TTM
. In switching over to using GEM for their in-kernel video memory management, and subsequently supporting kernel mode-setting
and then introducing UXA
to GEM-ify the EXA 2D acceleration architecture, there was a lot of problems
. Fortunately, most of these problems were worked out as this more advanced Intel Linux driver stack matured and for the better part of a year now the experience has been pleasant for users of most Intel GMA chipsets.
Intel's latest xf86-video-intel, DRM, and Mesa components are stable for a majority of the users and in most cases the level of performance is back to (or better) than their old code paths, but at the same time the Intel Linux driver still is a loser compared to the Intel Windows graphics driver
. Once these newer code-paths were stabilized, Intel was quick to kill off the user-space mode-setting (UMS) support and force its customers to use the new KMS/GEM code-paths. This has been fine for a majority of users, but particularly those with the old Intel i8xx series chipsets have had stability problems and other issues. Intel also quickly killed off EXA and DRI1 support
The dropping of non-KMS support in the Intel X.Org driver even led Canonical to shipping an older xf86-video-intel driver in their Ubuntu 10.04 LTS release so that those with this very old Intel integrated graphics hardware would still have one more Long-Term Support release with modest support by having the option to using the older UMS code-paths.
Ubuntu and practically every other major distribution has since upgraded to a newer KMS-only Intel driver since there are significant benefits for other users with new hardware, such as much faster 2D performance
, new hardware support
, and H.264 VA-API support
. If though you happen to be one of the few Intel i8xx hardware owners left, there is good news coming.
Intel's Chris Wilson has been working on re-introducing a GEM-free UMS code-path to the Intel DDX driver. Yes, Intel may be going back to supporting user-space mode-setting, but along new code-paths. By going with a GEM-free UMS code-path, Chris hopes to workaround the problems that have been affecting those with antiquated Intel hardware.
Ubuntu has already announced this work
and is offering up PPA packages
to encourage users of problematic Intel hardware to try out this work. This UMS code-path hasn't yet reached the mainline xf86-video-intel driver, but with enough testing it's expected that it will be pulled back into the code-base. This could be a candidate for xf86-video-intel 2.13.0 that would be released near the end of this quarter.
Testing out this new Intel driver that adds back user-space mode-setting support is requested just not for Intel i8xx hardware, but it should work for everyone with existing Intel hardware support. In less than two months though at the 2010 X Developers' Summit
in France, it could also be decided during the "kill it with fire" session to just end the i810 series hardware support altogether.
While the focus with this GEM-less UMS support is on bettering Intel's legacy support, if this code-path ends up being maintained it may also end up being good news for those running OpenSolaris, BSD, or other such operating systems where the KMS support is not mature of even nonexistent. OpenSolaris and the *BSDs continue to lag behind in graphics support as even though Intel's driver is open-source, as more and more of its stack gets moved into the Linux kernel DRM driver and depend upon those interfaces, it's more of a challenge for those wanting to use the display driver on similar but different platforms.