Kernel Log: X.org 7.5 coming in summer, re-write for Intel's graphics driver
X.org 7.5 is scheduled to appear in summer, and could include a new Intel graphics driver. The developers have slashed its code to boost reliability and performance. The kernel developers have now presented versions 2.6.30-rc4 and 184.108.40.206 of Linux, 220.127.116.11 and 18.104.22.168 are released and guest mascot Tuz bows out.
On the X.org mailing list, X.org programmer Daniel Stone has presented a new schedule for the development and release of X.org 7.5 and the X Server 1.7 provided for it. He concedes that the original plan to complete X.org 7.5 for early April has come to nothing, and now suggests mid-July as a new target date.
The developers plan to accept all the essential new functions by the end of May and begin releasing beta versions in the second half of June. Stone says in his posting that the integration of (X input 2) of XI2 is steaming ahead; he's planning to incorporate XKB2 (X Keyboard Extension 2) itself in the coming weeks. The X.org Wiki says the planned Multi-Pointer X (MPX), input device properties (IDP) and predictable pointer acceleration are already partially contained in the X.org 7.5/X Server 1.7 development tree.
However, as Stone emphasises, this is only a temporary plan. Experience with previous versions of X.org and X Server does show that X developers not infrequently miss their own planned release dates by weeks, X Server 1.6, for example, or even several months, as they did with X.org 7.4.
Intel developer Carl Worth has now released "22.214.171.124 snapshot", the first pre-release version of 2.8-series drivers for the xf86-video-intel X.org graphics driver, usually known for short as "intel". It's about 10 per cent smaller than Intel's current 2.7-series drivers, and could possibly be delivered later along with X.org 7.5. It was possible to reduce the code by removing support for the XAA and EXA 2D graphics acceleration architectures and relying on the Intel-specific UXA, a derivative of EXA; support for DRI1 has also been ditched. However this change does mean that the driver now requires at least X Server 1.6 or later.
The aim of this step is to simplify driver maintenance and improve quality, because it makes it much more likely that actually tested code paths will be used. Keith Packard, an X developer of many years' experience, explains the background to this procedure in more detail in his blog entry "Sharpening the Intel Driver Focus". Here he describes the various techniques used for mode setting (User mode, kernel-based mode setting/KMS), for direct rendering (no DRI, DRI1, DRI2), memory management (X Server/drivers, GEM) and 2D acceleration (none, XAA, EXA, UXA), and calculates that these can theoretically be combined with each other in 48 different ways. Some of them, he says, won't work together at all, while only a few have been tested and optimised for speed. Some combinations work better on new hardware, others on older kit.
This will cause many problems in practice, so the developers plan to focus on KMS, DRI2, GEM and UXA in future. The ten-per-cent reduction in code in the pre-release versions of the 2.8-series drivers is only the beginning, says Packard, who hopes to shrink the code for the next generation of drivers by 50 per cent. The many possible combinations and the ensuing problems are already causing plenty of headaches for some users and for the developers of the recently presented Ubuntu 9.04. The Intel driver, according to some internet user reports and some tests run by the editors of c't, occasionally suffers serious performance problems. These can sometimes be eliminated or reduced, however, using some of the tricks assembled in the Ubuntu Wiki.
- Following the release of 2.6.30-rc3 last week, Linus Torvalds launched the fourth pre-release version of 2.6.30 in the middle of this week. Instead of "Temporary Tasmanian Devil" it's now called "Vindictive Armadillo". Tuz, who served as a guest Linux mascot, has been relieved of his task, handing the job back to Tux.
- The minders of the Linux stable series have released version 126.96.36.199 of the kernel. This contains around a hundred minor improvements and corrections, some of which eliminate security-related errors. A new 2.6.28 version, 188.8.131.52, has been released. This will be the last one, since Greg Kroah-Hartman has announced the end of maintenance for the 2.6.28 series. Some kernel developers are unhappy about this, because a series is normally maintained until its second successor arrives (2.6.30 in this case). The stable team has not yet written off the 2.6.27 series and has released version 184.108.40.206 over the weekend.
- The developers of the Hplip project have published versions 3.9.4 and 3.9.4b of the Hplip drivers for HP printers and multifunction devices. These include support for the HP LaserJet p1009, Designjet models 4020ps, 4520ps and 4520mfp, and Officejet 6500 with or without WLAN module.
- Things were very very quiet for usbutils for a long time, but Greg Kroah-Hartman has published version 0.81 of the package, which contains lsusb among other things.
- Jerome Glisse gives an overview in his blog of the latest developments in support for kernel-based mode setting (KMS) for Radeon graphics hardware.
- The developers of Intel graphics drivers for Linux have presented "intel-gpu-tools". These include some useful programs for developing drivers and trouble-shooting.
- In her blog posting "Don't Panic - fsync(), ext3/4, and your data", Valerie Aurora (formerly Henson) explains some aspects of the much discussed features of Ext3 and Ext4 that are important for programmers and were recently also discussed in detail in the Kernel Log "What's coming in 2.6.30: File Systems" as part of the "What's coming in 2.6.30" series of articles.
Further background and information about developments in the Linux kernel and its environment can also be found in previous issues of the Kernel Log at The H Open Source:
- Kernel Log: What's coming in 2.6.30 - File systems: New and revamped file systems
- Kernel Log: 3D support for the new Radeon driver; new Intel drivers
- Kernel Log: What's coming in 2.6.30 - Network: New Wi-Fi drivers and other network novelties
- Kernel Log: Linux 2.6.30 is taking shape
- Kernel Log: Development of 2.6.30 is under way
- Steady Growth: What's new in Linux 2.6.29