Die Neuerungen von Linux 2.6.24
Seite 6: Noch mehr Änderungen an Infrastruktur und Treibern
Im Detail
Die im Artikel bislang erwähnten Neuerungen der jüngsten Linux-Version stellen nur eine Auswahl der bedeutsamsten Änderungen dar – die sprichwörtliche Spitze des Eisbergs, der bei jeder neuen Linux-Version im Hauptentwicklungszweig aus Tausenden von Patches besteht. Zahlreiche weitere mehr oder weniger signifikante Neuerungen finden sich im folgenden mit einer Kurzbeschreibung. Letztere verlinkten auf die jeweiligen Changesets des von Linus Torvalds mit Git verwalteten Quellcodes in einem Git-Depots auf kernel.org. Über die Links finden sich viele weitere Informationen; auch die Patches selbst sind dort abrufbar und selbst ohne Programmierkenntnisse eine gute Informationsquelle, da sie meist Kommentare und manchmal auch Dokumentationsänderungen enthalten.
Architektur-Code:
- Blackfin: ADSP-BF52x-Unterstützung
- Code für Intel IOMMU
- powernow-k8-Erweiterungen für die P-States neuer AMD-Prozessoren
- x86-64 EFI-Untersützung: Framebuffer-Treiber, Dokumentation
- Performance-Verbesserungen bei sys_time()
VFS und Dateisysteme:
- posix capabilities (weitere Informationen)
- CIFS: Unterstützung für ACLs (mehrere Commits, unter anderen dieser) und Named Pipes (1, 2)
- readahead: interleaved reads
- JFFS2: LZO-Kompression
ACPI:
Input:
- Keycodes für Euro und Dollar-Tasten
- alps (ALPS-Touchpads): Unterstützung für Dell Vostro 1400 und Thinkpad R61
PCI/USB-Subsystem:
- Dokumentation für USB Power-Management
- PCI domain support
- "pci=noaer" deaktiviert PCIe Advanced Error Reporting
IDE-Subsystem (alte Parallel-ATA-Treiber sowie einzelne für Serial-ATA-Controller):
- /sys/bus/ide/devices/*/{model,firmware,serial}
- ide_platform (Generischer IDE-Treiber, etwa für Compact-Flash-Karten im TrueIDE-Modus) Erstmals enthalten
- atiixp (ATI-Southbridges): Unterstützung für SB700-Southbridge
- Entfernen des Kernel-Parameters "idex=dma", hinzufügen von hdx="nodma"
- ACPI-Unterstützung für IDE Power-On/Off
libata (Parallel- und Seriell-ATA):
- PATA-Kabelart-Erkennung mit Hilfe von ACPI
- Unterstützung Freescale 3.0Gbps SATA Controller
- Korrekturen für Marvell 7042
- hptiop (SATA-Controller von Highpoint): Neues Firmware Interface, Unterstützung für neue Hardware
- sata_nv (SATA-Controller in Nvidia-Chipsätzen):
- pata_cs5536 (AMD Geode companion chip): Erstmals enthalten
- pata_acpi (PATA-ACPI-Treiber): Erstmals enthalten
- ahci: Unterstützung für Nvidias MCP79 (1, 2)
SCSI:
- aic7xxx (Adapterc-Controller): Add suspend/resume support
- arcmsr (SATA-Controller von Areca): Unterstützung für ARC1200/1201/1202
Netzwerk:
- MAC80211 (WLAN-Subsystem) Setzen von Sendeleistung, LED-Unterstützung
- Generic Large Receive Offload für TCP
- forcedeth (MACs in Nvidia-Mainboard-Chipsätzen): Unterstützung für MCP77 und MCP79
- phylib (von verschiedenen Treiber genutzter Code mit Informationen zu PHYs): Unterstützung für Marvell 88E1240
- sky2 (Marvell-Gigabit-MACs): Unterstützung für 88E8042 und 88E8072
- hostap_cs (Intersil Prism2-based 802.11 WLAN): Unterstützung für Telekom T-Sinus 111card
- p54usb (Prism54 USB-WLAN-Hardware): Unterstützung für Linksys WUSB54AG
- uli526x (MACs in ULi-Chipsätzen): Suspend und Resume Routinen
- dl2k (Sundance/Tamarack TC902x Gigabit Ethernet Adapter): Erstmals enthalten
- ip1000a (IP1000 Gigabit-Ethernet-Karten): Erstmals enthalten
- tehuti (Tehuti Networks 10G Ethernet): Erstmals enthalten
- tg3 (Gigabit-Chips von Broadcom): verschiedene Verbesserungen, Unterstützung der Chips 5784, 5764, 5723 5761
- pcnet32 (AMD MACs): Suspend- und resume-Unterstützung
Audio:
- snd-emu10k1 (EMU10K1-Chips von Creative, die etwa auf verschiedenen Soundblaster-Live-Modellen eingesetzt wurden): Unterstützung für ADAT- und SPDIF sowie die Sound-Hardware E-Mu 1616 PCI, 1616M PCI, 0404 PCI und E-Mu Notebooks
- snd-hda-intel (Audio-Unterstützung für Mainboard-Chipsätzen verschiedener Hersteller)untresützung für Nvidia MCP79
- Unterstützung für Asus P701 EEEPC
Grafik:
V4l/DVB:
- dtt200u (USB-DVB-T-Hardware): Untersüttzung für Miglia TVMini USB DVB-T
- dibX000X (DiBcom demodulators) : Umfangreiche Änderungen, DiB7070-Unterstützung
- cx23885 (Connexant CX23885/CX23887): Erstmals enthalten
- saa7134 (TV-Karten verschieden Hersteller): Suspend- und Resume-Support
Hardware-Monitoring:
- Verschieben der Watchdog-Komponenten
- fschmd (Fujitsu-Siemens (FSC) Chips) Erstmals entahlten
- coretemp (Intel Core-2-Mikroarchitektur): Unterstützung für Celeron 4xx
- adt7470 (ADT7470-Chips von Analog Devices) Erstmals enthalten
- ipmi_si: Unterstützung für IPMI 0.9
- it8712f_wdt (IT8212F Watchdog-Treiber)Erstmals enthalten
- i5k_amb (FB-DIMM Temperatur-Sensor beo Intel-5000-Mainboard-Chipsätzen: Erstmals enthalten
- f71882fg (Fintek F71882FG und F71883FG): Erstmals enthalten
- f75375s (Fintek F75375S/SP und F75373.): Erstmals enthalten
- dme1737: Unterstützung für SMSC SCH3112-, SCH3114- und SCH3116-Chips
Verschiedenes:
- /sys/module/name/notes
- CodingStyle: längere Zeilen werden geduldet
- Erweiterung des crashkernel Kernel-Parameters (x86-32, x86-64, Dokumentation)
- Linux Kernel Marker (Dokumentation)
- audit: Überwachen von Verzeichnisbäumen
- per device dirty threshold
Eine ähnliche Zusammenfassung der Änderungen von 2.6.24 pflegen die Kernelnewbies in ihrem Wiki. Sämtliche Änderungen der neuen Linux-Version listet das detaillierte Changelog oder das Git-Webinterface. In letzterem lässt sich durch den kompletten Verzeichnis-Struktur des Linux-Kernels navigieren sowie Quellcode und dessen Entwicklungshistorie anzeigen. So kann man etwa verfolgen, was sich an einzelnen Treibern oder Bereichen des Kernels in letzter Zeit verändert hat, etwa beim ahci-Treiber, beim ext4-Dateisystem, der Dokumentation der Kernel-Parameter oder der Liste der zu entfernenden Features. (thl]/c't)