Kernel Log: Updates to Intel graphics drivers and util-linux
by Thorsten Leemhuis
OpenGL 3.0 can only be used with Intel's new graphics driver if a potentially patented technology is enabled in Mesa 3D. A new version of util-linux standard utilities collection adds several new programs. Videos of ELC presentations offer useful information on testing the ktest.pl framework, the state of ARM code in the Linux kernel and function tracing with ftrace.
Intel developers have released version 12.02 of the Intel Linux graphics package. It supports OpenGL 3.0, offers better embedded DisplayPort support, and fixes several stability problems. Support for Ivy Bridge processors is now classed as stable. Ivy Bridge is the successor to Sandy Bridge CPUs and was scheduled for release in April, though, according to the latest information, this has now been pushed back to May or June. The new graphics driver package sees an adjustment to the version numbering scheme, with the developers planning to increase the frequency of new versions in the future – previously, updates tended to be released approximately every quarter.
The driver package includes the recently released version 2.18.0 of the Intel driver for X.Org's X Server. Other components include the new Mesa 3D 8.0.1, which rectifies a number of bugs in the also fairly new Mesa 3D 8.0. The package also includes the 3.2 Linux kernel and libdrm 2.4.31, as well as the libva 1.0.15 and vaapi-driver-intel 1.0.15 video acceleration components. Intel tested the parts of the package in conjunction with X Server 1.11.1.
Installing all these components takes a fair amount of time and does require advanced Linux skills. The parts are, however, likely to find their way into Linux distributions due for release in the coming weeks and months, such as Ubuntu 12.04 LTS, due out in April, and Fedora 17, scheduled for release in May. It remains to be seen whether these distributions will fully support OpenGL 3.0, since, as Intel explains, this requires the flag "--enable-texture-float" to be set when configuring the Mesa 3D source code with the "configure" command. According to a comment in the Mesa source code, the code for processing floating point textures activated by this configuration option uses methods which may be covered by a patent belonging to SGI. Many distributions have tended to avoid using techniques that could potentially involve them in patent disputes. Fedora, for example, does not currently activate this configure option.
In mid-February, Intel developer Eugeni Dodonov posted one of his occasional roundups of recent developments in the world of Linux drivers for Intel graphics chips. He mentions patches which should resolve problems relating to RC6, an energy-saving feature which has been in the news in recent months. Some of Dodonov's patches have recently been merged into the main Linux development tree, including one which, when the user manually activates Intel's GPU energy saving feature, causes the kernel to refrain from switching to RC6's RC6p energy saving mode Unfortunately, however, this patch contains a bug which inadvertently disables RC6 completely; this bug has yet to be fixed in the current pre-release version of Linux 3.3. Some of the patches intended to enable RC6 to be used reliably can be obtained from the web page for the above driver package.
Util-linux version 2.21 was released late last week and adds new tools to the utilities collection used by all the major Linux distributions, as well as improving some existing tools. One new tool is prlimit, which, in conjunction with newer kernel versions, is able to limit the resources available to a process. It promises to be significantly more flexible and offer a greater range of options than tools such as the Bash built-in ulimit. In a blog post, Karel Zak, the main util-linux developer, provides background information on the command-line tool and examples illustrating how it is used. His blog also describes some of the changes to the completely restructured login program, which now supports PAM authentication only and contains functions which have previously been deployed in the SUSE version of the program.
Losetup has also been completely rewritten and is now able to utilise the functions for mounting images without root privileges incorporated into Linux 3.1. The partx application now supports partitioned disk images. Another addition is chcpu, which is able to search for new CPUs and switch CPUs on and off. It is also able to request new and relinquish old processor cores for hypervisors. Wipefs contains new functions for removing potentially disruptive data, such as remnants of filesystems, partition tables and metadata required for LVM2 or mdadm, prior to reinstalling.