Have you ever been annoyed by Linux’ lack of a coherent graphical boot process? Graphics hardware causing problems during sleep/wake cycles? Problematic virtual terminal switches? Kernel-based mode-setting, a new feature of Xorg still in heavy development aims to solve many of these problems by moving the mode-setting code from the user-space X driver into the Linux kernel. Phoronix takes a look at this new feature.Currently, the only driver that supports kernel-based mode-setting is a special branch of the open source Intel video driver, and the only distribution that supports this new method of mode-setting is Fedora 9, of which a peview has been released (review). There is an effort under way to port the Radeon driver to kernel-based mode-setting too.
Phoronix explains the benefits of kernel-based mode-setting:
Suspend and resume support is improved with kernel mode-setting as the kernel no longer relies upon external resources for restoring the graphics adapters. With the process now being in-kernel, it’s able to restore the mode automatically and more quickly. Likewise, virtual terminal switching is also improved as a result.
In addition to the above, the feature will also improve the debugging experience as graphical error messages can be displayed on the screen prior to the launch of the X server. You will also get a flicker-free graphical boot process, as the video mode needs to be set only once, instead of numerous times as is the case now (when the boot process starts and again when the X server finally loads).
Phoronix concludes that while still in its early stages, kernel-based mode setting will greatly improve the desktop Linux experience.
Kernel-based mode-setting is a great advancement for Linux and X.Org with it being a feature that delivers noticeable benefits to the end-user — a cleaner flicker-free boot process, fast and reliable VT switching, improved suspend-and-resume support, and soon enough will be making fast-user-switching even faster. This is just the tip of the iceberg and more benefits, such as graphical diagnostic capabilities, should be able to flourish as a result of kernel-based mode-setting.