Autor Thema: Neuer Linux Kernel ....  (Gelesen 119387 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log – Was 2.6.39 bringt (4): Treiber
« Antwort #195 am: 10 Mai, 2011, 17:02 »
Der Kernel unterstützt nun USB-3.0-Hubs, die neusten Radeon-Grafikkarten und Intels bislang problematische GMA500-Grafik. Neu sind ferner Treiber für Asus- und Samsung-Notebooks sowie Audio- und Multimedia-Hardware verschiedener Hersteller.

In der Nacht von Montag auf Dienstag hat Linux Torvalds die siebte Vorabversion von Linux 2.6.39 veröffentlicht. Er schreibt in der Freigabe-Mail, dass es recht ruhig zugehe; er nimmt an, der RC7 werde die letzte Vorabversion, sofern nicht noch größere Probleme auftauchen.

Mit der langsam nähere rückenden Fertigstellung von Linux 2.6.39 will das Kernel-Log die Mini-Serie "Was 2.6.39 bringt" mit der Beschreibung der Neuerungen bei Treibern abschließen – darunter jene für Audio-, Grafik- und Multimedia-Hardware. Der erste Teil der Artikel-Reihe hatte sich den Änderungen an Netzwerk-Treibern und -Infrastruktur gewidmet; der darauf folgende drehte sich um Dateisystem-Code sowie Storage-Treiber und -Infrastruktur; im dritten Teil ging es um plattformspezifischen Code und allgemeine Infrastruktur.

Grafik

Der Radeon-Treiber des Kernels 2.6.39 unterstützt nun auch die Grafikchips der Cayman-Familie, die AMDs unter anderem auf den aktuellen Radeon-HD-Modellen 6790 bis 6970 verbaut (u. a. 1, 2). Mangels DRM-Unterstützung lassen sich deren 2D- und 3D-Beschleunigungsfunktionen aber nicht nutzen; spätere Kernel sollen diese Lücke beseitigen.

Der für Nvidia-GPUs zuständige Grafiktreiber Nouveau beherrscht nun Z-Kompression. Bei Grafikkernen der Familie NV50 (GeForce 8, 9, 100, 200 und 300) sowie NVC0 (GeForce 400 und 500) unterstützt der Kernel nun das bei Linux 2.6.38 eingeführte Pageflipping, das eine genauere Abstimmung der Bildaktualisierung mit dem Bildwechsel des Ausgabegerätes ermöglicht – das kann die Performance verbessern und soll Tearing vermeiden (1, 2). Zudem wurde ein Performance-Problem beseitigt, das eine Leistungseinbuße von 10 bis 30 Prozent nach sich gezogen haben soll.

Die Entwickler der Grafiktreiber für Intel-Chips haben viele kleinere Änderungen vorgenommen; einige von ihnen verbessern die Performance in bestimmten Situationen oder senken die Leistungsaufnahme neuerer Grafikkerne (1, 2, 3). Im DRM/KMS-Code gab es einige Änderungen, um über USB angebundene Grafikhardware anzusteuern; das legt die Grundlagen für einen KMS-Treiber für Displaylink-Hardware, an dem Dave Airlie arbeitet. In seinem Haupt-Git-Pull-Request für 2.6.39 erwähnt der Verwalter des DRM-Subsystems noch einige weitere Änderungen rund um den DRM/KMS-Code des Kernels; etwa Tiling-Unterstützung für R600-GPUs oder TTM-Unterstützung für Xen-Dom0-Systeme.

Audio

Zum Audio-Subsystem stieß ein Treiber für die Terratec DMX 6Fire USB; dort landete auch ein FireWire-Audio-Treiber, der das Griffin FireWave Surround Sound System und die LaCie FireWire Speaker anspricht. Der Treiber Hdspm unterstützt nun die von RME Audio gefertigten HDSPe-Modelle RayDAT und AIO; der Treiber Usbaudio lernte USB Autosuspend, was die Leistungsaufnahme reduzieren sollte, wenn die Audio-Hardware nicht genutzt wird.

Der Haupt-Git-Pull-Reqeust von Audio-Subsystem-Betreuer Takashi Iwai listet einige weitere Änderungen; er erwähnt dort etwa Korrekturen, die einige seit langem bekannte Probleme beim SPDIF-Code des X-Fi-Treibers beseitigen. Die Audio-Treiber des Kernels sind durch diese Änderungen auf dem Stand von Alsa 1.0.24.

Kernel-Log-Leser Dennis Jansen hat sich derweil näher mit den bei 2.6.38 vorgenommenen Änderungen beschäftigt, durch die der Treiber Snd-hda-intel die Audio-Ausgabe ohne Interrupt beherrscht. Die Messergebnisse und einige Hinweise zu den nötigen Einstellungen hat er in einem Blog-Eintrag zusammengefasst; demnach habe sich die Zahl der pro Sekunde erfolgten Aufwachvorgänge von 150 auf 19 reduziert, was nur wenig mehr ist als im Leerlauf. Der Prozessor konnte dadurch die tieferen Schlafzustände häufiger erreichen und erheblich länger in diesen verweilen, wodurch sich die Leistungsaufnahme des zum Test eingesetzten Notebooks bei Audio-Ausgabe um 0,4 Watt reduziert habe.

Multimedia

Zum Media-Subsystem mit seinen Fernbedienungs-, TV-, Video-, und Webcam-Treibern stieß das bei LWN.net beschriebene Media Controller Subsystem (u. a. 1, 2, 3), über das der Userspace die Funktionen von Video-Hardware in SOCs (System-on-a-Chip) besser nutzen kann.

Neu ist auch ein Treiber für einen via USB 2.0 angebundenen DVB-S/S2-Receiver von Technisat sowie Unterstützung für den DiBcom 9000 – einen DVB-T-Tuner, der auf den Einsatz in mobilen Geräten ausgelegt ist. In den Kernel floss ferner der Gspca-Subtreiber nw80x ein, der Webcam-Chips von Divio anspricht. Die haben viele verschiedene Hersteller eingesetzt; darunter auch Logitech bei der QuickCam Pro mit dunklem Fokusring. Für die Webcam "3com homeconnect" liegt dem Kernel nun ein komplett neu geschriebener V4L2-Gspca-Treiber bei, der mehr leisten soll als der ältere V4L1-Treiber Vicam. Einen guten Überblick über weitere Änderungen am Media-Subsystem liefert dessen Verwalter Mauro Carvalho Chehab in seinem Haupt-Git-Pull-request für 2.6.39.

Staging

Zum Kernel stieß der Grafiktreiber psb_gfx für den unter Linux bislang als sehr problematisch geltenden Grafikkern GMA500. Der steckt in Intels eher für den Einsatz im Embedded-Markt ausgelegten Chipsatz US15W ("Poulsbo"), den einige Hersteller in Netbooks einsetzen. Seit der Vorstellung des anfangs sehr rudimentären Treibers wurde er bereits an vielen Stellen verbessert (1, 2). Es gibt aber noch einiges mehr zu tun, daher landete er wie von vornherein vorgesehen im Staging-Bereich – dort liegen Treiber und anderer eigenständiger Code, der den Qualitätsansprüchen seiner Entwickler oder denen der Kernel-Hacker nicht genügt.

In diesem Bereich landete auch ein von Microsoft entwickelter Maustreiber für Hyper-V. An den anderen, schon länger im Kernel enthaltenen Treibern für Microsofts Virtualisierungsschnittstelle gab es in letzter Zeit zahlreiche Änderungen. Es scheint, als würden Microsofts Entwickler neuerdings deutlich mehr Energie in das Beseitigen der Qualitätsmängel investieren, damit der Treiber den Staging-Bereich verlassen kann; lange hatte es so ausgesehen, als hätte es Microsoft mit den quelloffenen Treibern nicht so richtig ernst genommen, da es mit ihnen gar nicht oder nur überaus schleppend voran ging.

Als Staging eingestuft sind auch die bei LWN.net beschriebene Transcendent-Memory-Infrastuktur und das darauf aufbauende Zcache – Letzteres ist im Umfeld von Zram entstanden und versucht, durch Komprimierung des Page Cache den Arbeitsspeicher effizienter zu nutzen. Das im selben Umfeld entstandene und für einige Funktionen von Zcache benötigte Cleancache hat Linus Torvalds außen vor gelassen, nachdem er anfangs erwogen hatte, es noch nach Ende des Merge Window aufzunehmen; es ist noch unklar, ob es in 2.6.40 folgt (1, 2)

Im Rahmen der BKL-Säuberungsaktion flogen Autofs3 und Smbfs sowie der DRM-Treiber i830 wie erwartet raus.

Platform-Treiber

Den Staging-Bereich verlassen konnte ein Treiber für SABI. Dabei handelt es sich um ein Samsung-eigenes Interface, über das viele der in den letzten Jahren gefertigten Net- und Notebooks dem Betriebssystem unter anderem mitteilen, wenn der Anwender Funktionstasten betätigt – etwa jene zur Helligkeits- oder Lautstärke-Regelung.

Zum Kernel stieß zudem ein Treiber für die Verarbeitung von WMI-Event, die einige All-In-One-Systeme von Dell beim Betätigen der Tasten zur Lautstärkeregelung absetzen. Auch für neuere Asus-Notebooks, die WMI für die Funktionstasten-Interaktion mit dem Betriebssystem nutzen, liegt dem 39er-Kernel ein Treiber bei; er ist aus dem WMI-Treiber für EeePCs hervorgegangen.

Staccato

    Der USB-Code unterstützt nun USB-3.0-Hubs (1, 1). Während der 39er-Entwicklung hat Kernel-Hacker Mauro Carvalho Chehab auf der LKML ein "usbmon capture and parser script" vorgestellt, mit dem sich ein USB-Sniffer aufsetzen lässt – anscheinend hat er einen solchen für die Entwicklung eines TV-Treibers benötigt. Im Rahmen der Diskussion wurde der Verwalter des Media-Subsystem darauf hingewiesen, dass es ähnliche Software bereits gibt.
    Neu ist der Treiber Rts_pstor für PCIe-Kartenleser-Chips von Realtek.
    Bei den Treibern für Eingabegeräte gab es allerlei Änderungen; der Roccat-Treiber etwa unterstützt nun die Arvo-Tastatur und die Kova
  • -Maus (1, 2)

    Der EDAC-Treiber unterstützt nun AMDs im Sommer erwartete Bulldozer-Prozessoren (1,2).
    Unter den zahlreichen Änderungen an den Treibern für Hardware-Monitoring-Bausteine findet sich ein Treiber für den Super I/O-Chip SCH5627 von SMSC.

Die kleinen Perlen

Viele kleinere, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den "offiziellen" Kernel-Quellen auf Kernel.org. Der über diese Links angezeigten Commit-Kommentar und der darunter ausgegebene Patch liefern zahlreiche weitere Informationen zur jeweiligen Änderungen.

Vor jedem Link finden sich in eckigen Klammern einige Buchstaben und Zahlen. Ein "C" kennzeichnet Patches mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten, die bei der Kernel-Konfiguration über "make menuconfig" oder "make xconfig" angezeigt werden. Ein "D" steht bei Patches, die die Dokumentation verändern, die im Kernel-Zweig unterhalb von Documentation/ liegt. Ein "N" weist Änderungen aus, die eine neue Datei anlegen. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: eine "1" kennzeichnet Änderungen, die inklusive Kommentar zwischen 10 und 20 KByte groß sind, eine "2" für solche, die zwischen 20 und 30 KByte Umfang haben; Änderungen ohne Zahl sind kleiner als 10 KByte, Patches mit einer "9" hingegen 90 KByte oder größer.

Audio

    [    ] ALSA: asihpi - Add volume mute control.
    [    ] ALSA - au88x0 - add Playback Volume to 10 bands Equalizer Controls
    [C  1] ALSA: azt3328: add custom AC97 semi-emulation use standard ALSA AC97 layer
    [    ] ALSA: ens1371: fix Creative Ectiva support
    [    ] ALSA: hda - 4930g add internal lfe slider
    [    ] ALSA: hda - Add a fix-up for Acer dmic with ALC271x codec
    [    ] ALSA: hda: add beep quirk for Realtek 0x1043:831a
    [    ] ALSA: HDA: Add dock mic quirk for Lenovo Thinkpad X220
    [    ] ALSA: HDA: Enable surround and subwoofer on Lenovo Ideapad Y530
    [    ] ALSA: HDA: Fix automute for Gateway NV79
    [    ] ALSA: HDA: Fix dock mic for Lenovo X220-tablet
    [    ] ALSA: HDA: Fix single internal mic on ALC275 (Sony Vaio VPCSB1C5E)
    [    ] ALSA: HDA: New AD1984A model for Dell Precision R5500
    [    ] ALSA: hda - VIA: Add missing support for VT1718S in A-A path
    [    ] ALSA: hdspm - Add firmware ID for older AES32 cards.
    [C   ] ALSA: hdspm - Add RayDAT and AIO strings to Kconfig
    [C   ] ALSA: snd-usb-caiaq: Add support for Traktor Audio 2
    [    ] ALSA: usb-audio: add Cakewalk UM-1G support
    [    ] ALSA: usb-audio - Add "cval->res = 384" quirk for Logitech Webcam C600
    [    ] ALSA: usb-audio: add support for Native Instruments MK2 devices
    [    ] ALSA: usb-audio: define another USB ID for a buggy USB MIDI cable
    [    ] ALSA: usb-audio - Support for Boss JS-8 Jam Station
    [    ] ALSA: usb-audio - Terratec Aureon 7.1 USB ID as C-Media cm6206 quirks
    [    ] ASoC: add a module alias to the FSI driver
    [    ] ASoC: Add card driver data
    [C   ] ASoC: Add dependency on INTEL_SCU_IPC for Intel MID drivers
    [C N ] ASoC: Add driver for the dfbmcs320 bluetooth module
    [C N5] ASoC: Add Freescale SGTL5000 codec support
    [C   ] ASoC: Add LM4857 to SND_SOC_ALL_CODECS
    [C N ] ASoC: Add machine driver for Visstrim_M10 board.
    [C N1] ASoC: Add MAX9850 codec driver
    [    ] ASoC: Add platform data for WM9081 IRQ pin configuration
    [    ] ASoC: Add support for AIF channel muxing on WM8903
    [    ] ASoC: add support for multiple jack types
    [    ] ASoC: Add support for sequencing within
    [C N3] ASoC: Add TI tlv320aic32x4 codec support.
    [C N2] ASoC: CS4271 codec support
    [ D  ] ASoC: documentation updates
    [C N ] ASoC: EDB93xx machine sound driver with CS4271
    [    ] ASoC: Enable 192kHz sample rate for EP93xx.
    [C   ] ASoC: eukrea-tlv320: add MBIMXSD51 support
    [    ] ASoC: mfld_machine: Add support for jack detection
    [    ] ASoC: mid-x86: Add support for capture in machine driver
    [    ] ASoC: omap: rx51: Add earphone support
    [    ] ASoC: omap: rx51: Add FM transmitter support
    [    ] ASoC: omap: rx51: Add headset support
    [C   ] ASoC: omap: rx51: Add stereo output support to audio jack
    [    ] ASoC: omap: rx51: Enable McBSP2 sidetone
    [C  2] ASoC: Samsung: Merge neo1937_wm8753 and neo1973_gta02_wm8753 sound board driver
    [   1] ASoC: sn95031: add capture support
    [    ] ASoC: sn95031: Add jack support in the codec
    [C N ] ASoC: sst v2: Add makefiles and kconfigs changes
    [  N ] ASoC sst v2: Add medfield machine driver
    [  N1] ASoC: sst v2: Add mid platform driver
    [C N2] ASoC: sst v2: Add sn95031 codec driver
    [    ] ASoC: Support WM8958 direct microphone detection IRQ
    [    ] ASoC: tegra: Add DAPM widgets/routes for Harmony
    [    ] ASoC: Tegra: Add MODULE_ALIAS
    [  N1] ASoC: tegra: Add tegra-das driver
    [  N2] ASoC: tegra: Add tegra-i2s driver
    [  N1] ASoC: tegra: Add tegra-pcm driver
    [    ] ASoC: Tegra: Harmony: Add headphone jack detection
    [    ] ASoC: Tegra: Harmony: Add switch control for speaker
    [    ] ASoC: Tegra: Harmony: Implement mic detection
    [  N ] ASoC: tegra: Harmony machine support
    [    ] ASoC: Tegra: Harmony: Support the internal speaker
    [C N ] ASoC: tegra: Kconfig and Makefile
    [  N ] ASoC: tegra: Machine utility code
    [    ] ASoC: Tegra: Suspend/resume support
    [C N8] ASoC: WM8991: Add initial WM8991 driver
    [    ] Revert "ALSA: hda - Fix pin-config of Gigabyte mobo"

Grafik

    [    ] drm: add cap bit to denote if dumb ioctl is available or not.
    [    ] drm/core: add ioctl to query device/driver capabilities
    [C   ] drm/i810: remove the BKL
    [    ] drm/i915: Add a module parameter to ignore lid status
    [    ] drm/i915: allow 945 to control self refresh (CxSR) automatically
    [   4] drm/i915: Refine tracepoints
    [    ] drm: psuedocolor support for ARGB modes
    [    ] drm/radeon: bump version to 2.9
    [    ] drm/radeon/kms: add some new ontario pci ids
    [    ] drm/radeon/kms: Add support for tv-out dongle on G5 9600
    [    ] efifb: Add override for 11" Macbook Air 3,1
    [    ] efifb: support AMD Radeon HD 6490
    [    ] efifb: Support overriding fields FW tells us with the DMI data.
    [C   ] fbdev: sh_mobile_lcdcfb: add backlight support
    [    ] fbdev: sh_mobile_lcdcfb: add blanking support
    [    ] nouveau/ttm/PCIe: Use dma_addr if TTM has set it.
    [C  1] radeon: expose backlight class device for legacy LVDS encoder
    [    ] radeon/ttm/PCIe: Use dma_addr if TTM has set it.
    [    ] s3fb: add support for 86C365 Trio3D
    [    ] s3fb: enable DTPC
    [    ] sisfb: add RAM type detection for XGI Z9
    [    ] sisfb: add subroutine for detecting XGI Z9
    [    ] sisfb: add support for XGI Z9 DDR2 POST
    [    ] uvesafb,vesafb: create WC or WB PAT-entries

I2C/HW-Monitoring/EDAC

    [    ] amd64_edac: Add support for interleaved region swapping
    [    ] amd64_edac: Erratum #637 workaround
    [    ] amd64_edac: Improve DRAM address mapping
    [C N1] drivers/edac: provide support for tile architecture
    [ DN ] hwmon: Add submitting-patches checklist to documentation
    [CDN2] hwmon: Add support for Lineage Compact Power Line PEM devices
    [CDN ] hwmon: Add support for LTC4151
    [CDN1] hwmon: Add support for Texas Instruments ADS1015
    [ D  ] hwmon: Add tachometer pulses per fan revolution to sysfs ABI
    [CD  ] hwmon: (adm1021) Clarify documentation regarding Xeon processors
    [ D 1] hwmon: (ads1015) Make gain and datarate configurable
    [CDN2] hwmon: Driver for Maxim MAX6639
    [    ] hwmon/f71882fg: Add support for f71808e
    [ D  ] hwmon/f71882fg: Add support for f71869f and f71869e
    [ D  ] hwmon/f71882fg: Add support for f71889ed
    [CD  ] hwmon: (f71882fg) Add support for the F71889A
    [CD  ] hwmon: (f71882fg) Add support for the F81865F
    [CD  ] hwmon: (f71882fg) Document all supported devices
    [    ] hwmon: (f71882fg) Per-chip fan/temperature input count tables
    [CD  ] hwmon: (lm75) Add detection of the National Semiconductor LM75A
    [    ] hwmon: (lm75) Speed up detection
    [ D  ] hwmon: (lm85) Add support for EMC6D103S
    [CD  ] hwmon: (lm90) Add support for ADT7461A and NCT1008
    [ D  ] hwmon: (lm90) Fix update interval information in driver documentation
    [ DN ] hwmon: (max16064) Add driver documentation
    [ DN ] hwmon: (max34440) Add driver documentation
    [ DN ] hwmon: (max8688) Add driver documentation
    [CDN2] hwmon: New driver for SMSC SCH5627
    [C N ] hwmon: (pmbus) Add support for Maxim MAX16064
    [C N ] hwmon: (pmbus) Add support for Maxim MAX34440/MAX34441
    [C N ] hwmon: (pmbus) Add support for Maxim MAX8688
    [C N6] hwmon: PMBus device driver
    [ D  ] hwmon: (pmbus) Documentation updates
    [ DN ] hwmon: PMBus driver documentation
    [    ] hwmon: (pmbus) Improve support for paged fans
    [    ] hwmon: (pmbus) Improve support for paged temperature sensors
    [ D  ] hwmon: (smm665) Fix spelling error in driver documentation
    [CDN ] hwmon: twl4030: Hwmon Driver for TWL4030 MADC
    [    ] hwmon: (w83627ehf) Add fan debounce support for NCT6775F and NCT6776F
    [ D 4] hwmon: (w83627ehf) Add support for Nuvoton NCT6775F and NCT6776F
    [ D 1] hwmon: (w83627ehf) Improve support for W83667HG-B
    [C   ] hwmon: (w83627ehf) Update Kconfig for W83677HG-B, NCT6775F and NCT6776F
    [ DN ] hwmon: (w83795) Document pin mapping
    [C N ] hwrng: pixocell - add support for picoxcell TRNG
    [C N1] i2c: add driver for Freescale i.MX28
    [CDN1] i2c/busses: Add support for Diolan U2C-12 USB-I2C adapter
    [ D  ] i2c: Deprecate i2c_driver.attach_adapter and .detach_adapter
    [ D  ] i2c: Drop i2c_adapter.id
    [C  1] i2c-eg20t: support new device OKI SEMICONDUCTOR ML7213 IOH
    [ D  ] i2c: Get rid of <linux/i2c-id.h>
    [CD  ] i2c-i801: SMBus patch for Intel DH89xxCC DeviceIDs
    [ D  ] i2c: Minor fixes to upgrading-clients document
    [C   ] i2c-mpc: Add support for 64bit system
    [C N ] i2c-pxa2xx: Add PCI support for PXA I2C controller
    [C N2] i2c: tegra: Add i2c support
    [CD  ] kernel/watchdog.c: allow hardlockup to panic by default
    [CD  ] Move hp_accel to drivers/platform/x86
    [C N ] Move lis3lv02d drivers to drivers/misc
    [C N1] watchdog: add JZ4740 watchdog driver
    [C N2] watchdog: Intel SCU Watchdog Timer Driver for Moorestown and Medfield platforms.
    [C   ] watchdog: it87_wdt: Add support for IT8721F watchdog
    [C N1] watchdog: Xen watchdog driver

Input

    [C   ] HID: ACRUX - activate the device immediately after binding
    [    ] HID: add FF support for Logitech G25/G27
    [ DN ] HID: Add HID Report Descriptor to sysfs
    [    ] HID: add IRTOUCH infrared USB to hid_have_special_driver
    [    ] HID: Add support for CH Pro Throttle
    [    ] HID: add support for DragonRise PID 0011 gamepad
    [C N ] HID: add support for Keytouch IEC 60945
    [    ] HID: add support for Logitech Driving Force Pro wheel
    [C   ] HID: add support for Ortek PKB-1700
    [    ] HID: Add Support for Setting and Getting Feature Reports from hidraw
    [C   ] HID: add support for Skycable 0x3f07 wireless presenter
    [C N ] HID: add support for wireless remote LC Power model RC1000MCE
    [    ] HID: Add teletext/color keys - gyration remote - EU version (GYAR3101CKDE)
    [    ] HID: bt: Add support for hidraw HIDIOCGFEATURE and HIDIOCSFEATURE
    [    ] HID: hid-magicmouse: Correct touch orientation direction
    [C   ] HID: hid-multitouch: introduce IrTouch Infrared USB device
    [C  1] HID: merge hid-egalax into hid-multitouch
    [ D 1] HID: roccat: Add ioctl command to retreive report size from chardev
    [    ] HID: roccat: Add support for wireless variant of Pyra
    [ D 1] HID: roccat: Add 'Users:' tag to sysfs documentation
    [C   ] HID: update dragonrise Kconfig description
    [C N ] Input: add Atmel AT42QT1070 keypad driver
    [    ] Input: atmel_mxt_ts - add mXT224 identifier to id_table
    [    ] Input: bcm5974 - add support for MacBookPro8
    [    ] Input: bcm5974 - Report button also for zero fingers
    [ DN1] Input: document event types and codes and their intended use
    [ D  ] Input: evdev - indicate buffer overrun with SYN_DROPPED
    [C N2] Input: introduce tsc2005 driver
    [C   ] Input: qt602240_ts - rename to atmel_mxt_ts
    [    ] Input: tsc2005 - add module description
    [    ] Input: wacom - add support for Lenovo tablet ID (0xE6)
    [   2] Input: wacom - report resolution for pen devices
    [    ] Input: wacom - support 2FGT in MT format
    [    ] Input: wacom - support one finger touch the touchscreen way
    [C N1] Input: wm831x - add driver for Wolfson WM831x PMIC touchscreen controllers
    [C   ] Input: xen-kbdfront - move to drivers/input/misc

Media

    [    ] Add chip identity for NOON010PC30 camera sensor
    [ DN4] Add multi-planar API documentation
    [   2] Add proper audio support for Nova-S Plus with wm8775 ADC
    [    ] add support for Encore FM3
    [  N ] add TerraTec remote
    [C N2] Add v4l2 subdev driver for NOON010PC30L image sensor
    [    ] adv7343: use control framework
    [    ] af9015: map remote for TerraTec Cinergy T Stick RC
    [C N2] Altera FPGA based CI driver module
    [C N9] Altera FPGA firmware download module
    [    ] bt819: use control framework
    [   1] cpia2: convert to video_ioctl2
    [    ] cs5345: use the control framework
    [   3] cx18: Use the control framework
    [    ] cx231xx: Add support for PV Xcapture USB
    [    ] cx88: add support for TeVii S464 PCI card
    [C  2] dabusb: remove obsolete driver
    [   7] DiB0090: misc improvements
    [   4] DiB0700: add support for several board-layouts
    [   9] DiB7090: add support for the dib7090 based
    [   6] DiB8000: add diversity support
    [   9] DiBxxxx: Codingstype updates
    [ D  ] DM04 LME2510(C) Sharp BS2F7HZ0194 Firmware Information
    [ D  ] DocBook: Document the removal of the old VIDIOC_*_OLD ioctls
    [ D  ] Documentation: README.ivtv: Remove note that ivtvfb is not yet in the kernel
    [C   ] drivers:media:radio: Update Kconfig and Makefile for wl128x FM driver
    [  N ] drivers:media:radio: wl128x: FM Driver common header file
    [  N6] drivers:media:radio: wl128x: FM Driver Common sources
    [  N2] drivers:media:radio: wl128x: FM driver RX sources
    [  N1] drivers:media:radio: wl128x: FM driver TX sources
    [  N1] drivers:media:radio: wl128x: FM Driver V4L2 sources
    [C N ] drivers:media:radio: wl128x: Kconfig & Makefile for wl128x driver
    [   1] dw2102: add support for Geniatech SU3000 USB DVB-S2 card
    [    ] dw2102: add support for the TeVii S480 PCIe
    [    ] dw2102: Add Terratec Cinergy S2 USB HD
    [    ] dw2102: Copyright, cards list updated
    [    ] dw2102: Extend keymap parameter for not used remote
    [    ] dw2102: Prof 7500: Lock LED implemented
    [ D  ] Fix mmap() example in the V4L2 API DocBook
    [ D  ] get_dvb_firmware: ngene_18.fw added
    [    ] gspca_cpia1: Add support for button
    [    ] gspca - nw80x: The webcam dsb-c110 is the same as the twinkle
    [    ] gspca - ov519: Add the 800x600 resolution for sensors ov2610/2610ae
    [    ] gspca - ov519: Add the sensor ov2610ae
    [    ] gspca - ov534: Add saturation control for ov767x
    [ D 1] gspca - ov534: Add the webcam 06f8:3002 and sensor ov767x
    [    ] gspca_sn9c20x: Add another MSI laptop to the sn9c20x upside down list
    [    ] gspca_sn9c20x: Add hflip and vflip controls for the ov7660 sensor
    [    ] gspca_sn9c20x: Add LED_REVERSE flag for 0c45:62bb
    [   1] gspca - sonixb: Use the new control mechanism
    [    ] gspca - zc3xx: Add exposure control for sensor hv7131r
    [    ] imon: add more panel scancode mappings
    [C  1] Initial commit to support NetUP Dual DVB-T/C CI RF card
    [C  4] lirc: remove staging lirc_it87 and lirc_ite8709 drivers
    [    ] lirc_zilog: Update TODO list based on work completed and revised plans
    [    ] mceusb: add Dell transceiver ID
    [ DN2] media: Entities, pads and links
    [ DN2] media: Entities, pads and links enumeration
    [ D  ] media: Entity graph traversal
    [ D  ] media: Entity use count
    [ DN1] media: Links setup
    [ D  ] media: Pick a free ioctls range
    [ D 1] media: Pipelines and media streams
    [C   ] MFD: WL1273 FM Radio: MFD driver for the FM radio
    [C N ] Move CI cxd2099 driver to staging
    [    ] ngene: Add net device
    [  N2] ngene: CXD2099AR Common Interface driver
    [    ] ngene: Enable CI for Mystique SaTiX-S2 Dual (v2)
    [    ] ngene: Firmware 18 support
    [    ] ngene: Shutdown workaround
    [    ] ngene: Support up to 4 tuners
    [ DN1] omap3isp: Add documentation
    [  N9] omap3isp: CCDC, preview engine and resizer
    [  N9] omap3isp: CCP2/CSI2 receivers
    [C N ] omap3isp: Kconfig and Makefile
    [  N9] omap3isp: OMAP3 ISP core
    [  N8] omap3isp: Statistics
    [  N8] omap3isp: Video devices and buffers queue
    [    ] pvrusb2: Implement support for Terratec Grabster AV400
    [C N6] rc: New rc-based ite-cir driver for several ITE CIRs
    [    ] rc-rc5-hauppauge-new: Add support for the old Black RC
    [    ] rc-rc5-hauppauge-new: Add the old control to the table
    [ D  ] Remove compatibility layer from multi-planar API documentation
    [    ] s5p-fimc: Add control of the external sensor clock
    [    ] s5p-fimc: Add support for the buffer timestamps and sequence
    [   3] s5p-fimc: Conversion to multiplanar formats
    [    ] s5p-fimc: fix MSCTRL.FIFO_CTRL for performance enhancement
    [    ] saa7110: use control framework
    [    ] saa7134-empress: add missing MPEG controls
    [CD 6] se401: remove last V4L1 driver
    [C  9] staging-usbvideo: remove
    [    ] stv0900: speed up DVB-S searching
    [C N9] Support for stv0367 multi-standard demodulator
    [    ] tlv320aic23b: use control framework
    [    ] tm6000: add audio conf for new cards
    [    ] tm6000: add new TV cards of Beholder
    [   2] tm6000: add radio support to the driver
    [    ] tm6000: Add support for Terratec Grabster AV 150/250 MX
    [    ] tuner-core: Improve function documentation
    [    ] tuner-simple: add support for Tena TNF5337 MFD
    [    ] tvp514x: use the control framework
    [    ] tvp5150: use the control framework
    [    ] tvp7002: use control framework
    [   1] v180 - DM04/QQBOX added support for BS2F7HZ0194 versions
    [ D  ] v4l2-framework.txt: improve v4l2_fh/priority documentation
    [ D  ] v4l2: use new flag to enable core priority handling
    [   2] V4L2: WL1273 FM Radio: TI WL1273 FM radio driver
    [ DN ] v4l: Add 12 bits bayer pixel formats
    [ D  ] v4l: Add a media_device pointer to the v4l2_device structure
    [   1] v4l: Add compat functions for the multi-planar API
    [ DN1] v4l: Add DocBook documentation for YU12M, NV12M image formats
    [ D  ] v4l: Add missing 12 bits bayer media bus formats
    [    ] v4l: Add multi-planar API definitions to the V4L2 API
    [   2] v4l: Add multi-planar ioctl handling code
    [ DN ] v4l: add V4L2_PIX_FMT_Y12 format
    [C N5] v4l: add videobuf2 Video for Linux 2 driver framework
    [ D 1] V4L doc fixes
    [ DN ] v4l: Documentation for the NV12MT format
    [C N2] V4L: Initial submit of OV9740 driver
    [ D  ] v4l: Make v4l2_subdev inherit from media_entity
    [ D  ] v4l: Make video_device inherit from media_entity
    [ D  ] v4l: removal of old, obsolete ioctls
    [ DN1] v4l: subdev: Add device node support
    [    ] v4l: subdev: Add new file operations
    [ D  ] v4l: subdev: Control ioctls support
    [ D  ] v4l: subdev: Events support
    [ D  ] v4l: subdev: Generic ioctl support
    [ DN1] v4l: v4l2_subdev userspace crop API
    [ DN9] v4l: v4l2_subdev userspace format API
    [    ] v4l: v4l2_subdev userspace format API - documentation binary files
    [ DN1] v4l: v4l2_subdev userspace frame interval API
    [C N ] v4l: videobuf2: add DMA coherent allocator
    [C N1] v4l: videobuf2: add DMA scatter/gather allocator
    [C N ] v4l: videobuf2: add generic memory handling routines
    [C N ] v4l: videobuf2: add vmalloc allocator
    [    ] via-camera: Add suspend/resume support
    [ D 1] videodev2.h.xml: Update to reflect videodev2.h changes
    [    ] vivi: convert to the control framework and add test controls
    [    ] vpx3220: use control framework
    [    ] xc5000: add support for DVB-C tuning

Platform

    [    ] acer-wmi: does not poll device status when WMI event is available
    [    ] asus-laptop: remove deprecated interfaces (lcd_switch and display_get)
    [C   ] asus-wmi: add hwmon interface and pwm1
    [    ] asus-wmi: add some common device ids and method ids
    [    ] asus-wmi: move generic code to asus-wmi
    [ D 3] backlight: add backlight type
    [ D  ] eeepc-wmi: add camera and card reader support
    [    ] eeepc-wmi: add camera keys
    [    ] eeepc-wmi: add hibernate/resume callbacks
    [   1] eeepc-wmi: add hotplug code for Eeepc 1000H
    [    ] eeepc-wmi: add keys found on EeePC 1215T
    [ D  ] eeepc-wmi: add touchpad sysfs file
    [    ] eeepc-wmi: add wimax support
    [    ] eeepc-wmi: add wlan key found on 1015P
    [    ] eeepc-wmi: support backlight power (bl_power) attribute
    [    ] hp-wmi: add rfkill support for wireless query 0x1b
    [C N ] intel_mid_powerbtn: add power button driver for Medfield platform (#3)
    [C   ] mbp_nvidia_bl: rename to apple_bl
    [C N1] medfield: Add Thermal Driver
    [    ] msi-laptop: send out touchpad on/off key
    [C N ] OLPC XO-1.5 ebook switch driver
    [    ] samsung-laptop: add support for N230 model
    [    ] samsung-laptop: Samsung R410P backlight driver
    [    ] samsung-laptop: set backlight type
    [ D  ] sony-laptop: documentation updates
    [    ] sony-laptop: implement keyboard backlight support
    [    ] sony-laptop: implement new backlight control method
    [   1] staging: samsung-laptop: Extend samsung-laptop platform driver to support another flavor of its platform BIOS.
    [    ]  thinkpad-acpi: Some BIOS versions don't end in WW, remove check
    [    ] watchdog: softdog.c: enhancement to optionally invoke panic instead of reboot on timer expiry

Staging

    [  N1] drivers:staging: ti-st: add the v7 btwilink driver
    [C N3] IIO: ADC: New driver for the AD7298 8-channel SPI ADC
    [    ] Revert "staging: iio: ak8975: add platform data."
    [   9] rtl8192u_usb: Remove built-in firmware images
    [    ] stagine/easycap: use module paramter for default encoding instead of ifdef
    [C   ] staging: Allow sharing xvmalloc for zram and zcache
    [    ] staging: ath6kl: Adding support for txop bursting enable/disable
    [    ] staging: ath6kl: update TODO file / maintainers
    [    ] staging: brcm80211: implementation of RFKILL functionality
    [C  1] staging: delete ti-st from staging
    [C  9] staging: easycap: add ALSA support
    [C   ] staging: easycap: group module parameters handling
    [    ] staging/easycap: replace NOREADBACK with moduel parameter
    [C   ] Staging: hv: enable mouse driver to build
    [C N3] staging: IIO: ADC: New driver for AD7606/AD7606-6/AD7606-4
    [C N1] Staging: iio: add driver for MAX517/518/519
    [    ] staging: IIO: DAC: AD5446: Add missing ID table entries
    [    ] staging: IIO: DAC: AD5446: Add power down support
    [C   ] staging: IIO: DAC: AD5446: Add support for AD5601/AD5611/AD5621
    [   1] Staging: IIO: DAC: AD5624R: Update to IIO ABI
    [C   ] staging: IIO: DAC: Add support for the AD5543/AD5553
    [C N2] Staging: IIO: DDS: AD9832 / AD9835 driver
    [    ] Staging: IIO: Documentation: iio_utils: fix channel array generation.
    [    ] Staging: iio: Documented output / DAC interface
    [C   ] staging:iio:gyro: add adis16251 support to adis16260 driver
    [C  2] staging:iio:gyro remove adis16251 driver as now supported by adis16260 driver
    [C N ] staging:iio:kfifo buffer implementation
    [C N ] staging: IIO: trigger: New Blackfin specific trigger driver iio-trig-bfin-timer
    [C N ] Staging: IIO: TRIGGER: New sysfs based trigger
    [    ] staging: keucr: Delete use kernel strcmp() & strcpy() from TODO file
    [    ] staging: keucr: use kernel byteorder functions
    [C  5] staging: memrar: remove driver from tree
    [C N7] Staging: Merge ENE UB6250 SD card codes from keucr to drivers/usb/storage
    [C  9] staging: r8712u: Firmware changes for driver
    [    ] staging: r8712u: Switch driver to use external firmware from linux-firmware
    [    ] staging: rtl8192e: Delete dead code
    [    ] staging: rtl8192e: Pass priv to TranslateRxSignalStuff819xpci
    [   7] staging: rtl8192e: Pass r8192e_priv to phy functions
    [    ] staging: rtl8192e: Pass r8192_priv to eprom_read
    [   1] staging: rtl8192e: Remove dead code
    [   7] staging: rtl8192e: Remove RTL8192P and RTL8192U ifdefs
    [    ] Staging: rtl8192e: Remove support for legacy wireless extentions
    [   7] staging: rtl8192e: Use private structure in IO functions
    [    ] staging: rtl8192e: Use single spinlock in MgntActSet_RF_State
    [    ] staging: sep: Add comment to TODO to clean up un-needed debug prints
    [   1] staging: sep: remove unused ioctls
    [    ] staging: tidspbridge: remove custom linked list
    [   1] Staging: usbvideo: vicam: fixed some coding style issues
    [C   ] Staging: zram: make ZRAM depends on SYSFS
    [    ] zram/vmalloc: Correct tunings to enable use with 64K pages

USB

    [    ] arm: omap4: 4430sdp: drop ehci support
    [C N1] net/usb: Ethernet quirks for the LG-VL600 4G modem
    [    ] omap:usb: add regulator support for EHCI
    [C   ] pch_phub: add new device ML7213
    [    ] pch_uart: add multi-scatter processing
    [    ] pch_uart : Reduce memcpy
    [    ] USB: Add support for SuperSpeed isoc endpoints
    [    ] USB: Disable auto-suspend for USB 3.0 hubs.
    [C N1] USB: EHCI bus glue for on-chip PMC MSP USB controller
    [C   ] usb: EHCI, OHCI: Add configuration for the SH USB controller
    [    ] usb: ehci: omap: add support for TLL mode on OMAP4
    [    ] USB: ftdi_sio: Added IDs for CTI USB Serial Devices
    [    ] USB: ftdi_sio: add ids for Hameg HO720 and HO730
    [    ] USB: ftdi_sio: add PID for OCT DK201 docking station
    [    ] USB: gadget: Add test mode support for ci13xxx_udc
    [   1] USB: gadget: Implement hardware queuing in ci13xxx_udc
    [C N2] usb: host: Add EHCI driver for NVIDIA Tegra SoCs
    [C N3] usb: host: omap: common usb host core driver
    [    ] USB: isp1760: Implement solution for erratum 2
    [    ] usb: Make core allocate resources per PCI-device.
    [    ] USB: move usbcore away from hcd->state
    [   1] usb: musb: Idle path retention and offmode support for OMAP3
    [C   ] usb: musb: temporarily make it bool
    [    ] usbnet: add support for some Huawei modems with cdc-ether ports
    [    ] USB: opticon: add rts and cts support
    [C N ] usb: otg: Add ulpi viewport access ops
    [    ] USB: serial: ch341: add new id
    [  N ] USB: tools: Add a Makefile
    [C N7] usb: udc: add Faraday fusb300 driver
    [ D  ] USB: usbmon: fix-up docs and text API for sparse ISO
    [C N2] USB: usb_storage: add ums-realtek driver
    [    ] USB: usbtest - add alignment tests to test script
    [  N ] USB: usbtest - add shell script to test HCDs
    [   1] USB: usbtest - Add tests to ensure HCDs can accept byte aligned buffers.
    [    ] USB: use "device number" instead of "address"
    [    ] xHCI: Implement AMD PLL quirk

Various

    [ DN ] altera_ps2: Add devicetree support
    [    ] bq20z75: Add i2c retry mechanism
    [    ] bq20z75: Add MODULE_DEVICE_TABLE
    [  N1] bq20z75: Add optional battery detect gpio
    [    ] bq20z75: Add support for charge properties
    [C N ] bq27x00: Add bq27000 support
    [    ] bq27x00: Add MODULE_DEVICE_TABLE
    [    ] bq27x00: Add new properties
    [    ] bq27x00: Add type property
    [    ] bq27x00: Poll battery state
    [    ] bq27x00: Prepare code for addition of bq27000 platform driver
    [   1] dma40: cyclic xfer support
    [C N1] drivers/char: add MSM smd_pkt driver
    [ DN1] drivers:misc: ti-st: move from rfkill to sysfs
    [    ] drivers/rtc/rtc-isl1208.c: add alarm support
    [C N2] drivers/vidfeo/backlight: ld9040 amoled driver support
    [    ] ds2782_battery: Add MODULE_DEVICE_TABLE
    [    ] dw_dmac: Adding support for 64 bit access width for memcpy xfers
    [    ] dw_dmac: Setting Default Burst length for transfers as 16.
    [C   ] firewire: nosy: should work on Power Mac G4 PCI too
    [C   ] gpio: Add Tunnel Creek support to sch_gpio
    [C N1] gpio: driver for 42 AB8500 GPIO pins
    [C   ] gpio; Make Intel chipset gpio drivers depend on x86
    [C  1] gpio/mcp23s08: support mcp23s17 variant
    [C N ] hvc: add Blackfin JTAG console support
    [   1] IB/srp: add support for indirect tables that don't fit in SRP_CMD
    [    ] IB/srp: allow sg_tablesize to be set for each target
    [    ] leds: Add ability to blink via simple trigger
    [C N1] leds: add driver for LM3530 ALS
    [    ] MAINTAINERS: Add file pattern for fb dt bindings.
    [    ] MAINTAINERS: de-orphan fbdev.
    [ DN ] n_gsm: add a documentation
    [C   ] pch_phub: add new device ML7213
    [    ] pci_ids: Add Intel Tunnel Creek LPC Bridge device ID.
    [    ] power_supply: Add new LED trigger charging-blink-solid-full
    [   1] rapidio: add architecture specific callbacks
    [    ] rapidio: add new sysfs attributes
    [C   ] rapidio: modify configuration to support PCI-SRIO controller
    [    ] RDMA/cxgb4: Enable on-chip SQ support by default
    [    ] RDMA/cxgb4: Turn on delayed ACK
    [    ] regulator: add ab8500 enable and raise time delays
    [C N ] regulator: Add a subdriver for TI TPS6105x regulator portions v2
    [    ] regulator: Add MODULE_DEVICE_TABLE to max8997 and max8998
    [    ] regulator: add set_voltage_time_sel infrastructure
    [    ] regulator: add support for USB voltage regulator
    [    ] Regulator: add suspend-finish API for regulator core.
    [C N3] regulator: MAX8997/8966 support
    [C N1] rtc: add real-time clock driver for NVIDIA Tegra
    [    ] serial: mfd: add a module parameter for setting each port's working mode
    [C N5] serial: msm_serial_hs: Add MSM high speed UART driver
    [C   ] serial: pch_uart: revert Kconfig for non-DMA mode
    [C   ] serial: pch_uart: support new device ML7213
    [C N ] sigma-firmware: loader for Analog Devices' SigmaStudio
    [CDN1] spi: add OpenCores tiny SPI driver
    [C N1] spi: add support for SuperH SPI
    [C N1] spi: add ti-ssp spi master driver
    [CDN1] spi: New driver for Altera SPI
    [    ] spi/pl022: Add loopback support for the SPI on 5500
    [CDN3] ST SPEAr: PCIE gadget suppport
    [C N ] tty: Add msm_smd_tty driver
    [C  2] tty: move a number of tty drivers from drivers/char/ to drivers/tty/
    [C N2] tty: move Kconfig entries into drivers/tty from drivers/char
    [C N2] tty: move obsolete and broken generic_serial drivers to drivers/staging/generic_serial/
    [C N1] tty: move obsolete and broken tty drivers to drivers/staging/tty/
    [ DN ] tty: serial: altera_jtaguart: Add device tree support
    [ DN ] tty: serial: altera_uart: Add devicetree support
    [C N1] UIO: add PRUSS UIO driver support
    [ DN ] video, sm501: add edid and commandline support
    [   3] video, sm501: add I/O functions for use on powerpc
    [ DN ] video, sm501: add OF binding to support SM501
    [    ] z2_battery: Add MODULE_DEVICE_TABLE

Quelle und Links : http://www.heise.de/open/artikel/Kernel-Log-Was-2-6-39-bringt-4-Treiber-1239637.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline spoke1

  • Alle angenehmen Dinge des Lebens sind entweder illegal, unmoralisch, teuer oder machen dick!
  • Premium-Cubie
  • ****
  • Beiträge: 2718
  • kaffeine Fan
    • skynetR32 Mod HP
Linux-Kernel 2.6.39 freigegeben
« Antwort #196 am: 19 Mai, 2011, 08:11 »
Nach lediglich 65 Tagen Entwicklung hat Linus Torvalds den Linux-Kernel 2.6.39 veröffentlicht. Er bringt unter anderem Unterstützung für Ipset, mit dem sich die Informationen zur Paket-Behandlung in einfach aktualisierbare und schnell abfragbare Tabellen auslagern lassen; das soll das Aufsetzen, die Pflege und den Betrieb von Firewalls vereinfachen. Interrupts können jetzt in Threads abgearbeitet werden. Das Ext4-Dateisystem und der Block Layer sollen besser skalieren und eine bessere Performance zeigen.

Zum Kernel gehört nun auch ein Netzwerk-Backend für Xen. Wie immer bringt der neue Linux-Kernel hunderte neuer oder erweiterter Treiber. So stieß ein einfacher DRM/KMS-Treiber für AMDs aktuelle High-End-Grafikkarten mit Cayman-GPU zum Kernel. Ebenfalls neu dabei sind Treiber für die Funktionstasten von Samsung-Notebooks und die Realtek-WLAN-Chips RTL8192CU und RTL8188CU.

Details zu diesen und vielen weiteren Neuerungen von Linux 2.6.39 liefert ein Artikel auf heise open. Er gibt auch einen Ausblick auf einige Änderungen, die in den vielleicht Mitte oder August erscheinenden Linux-Kernel 2.6.40 einziehen dürften:



Quelle und die Neuerungen-von-Linux-2-6-39
Produktiv:
ASRock K8S8X, Athlon64 3000+, 1GB Infineon Ram, WinFast A340 8X AGP, Samsung HD160 GB SATA2,
Technisat SkyStar 2, Stab HH100 Rotor und 5° & 19,2° Ost fest
BS: Mandriva-Linux (mdv) 2010.2 PP, kde 3.5.12, kaffeine 0.8.8, skynetR32

Bastelsrechner:
ASRock N570 SLI, Athlon64 X2 6000+ 4GB Geil Ram, EVGA GeForce G 210 Passiv (1GB DDR3, VGA, DVI, HDMI), Samsung HD 500GB SATA2, TT-budget S2-3200 PCI
BS: immer nur Pinguin freundliche

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Abschied von Linux 2.6
« Antwort #197 am: 24 Mai, 2011, 09:33 »
Eine kurze Mitteilung von Linus Torvalds deutet an, dass die nächste Version des Linux-Kernels nicht 2.6.40, sondern 2.8.0 oder gar 3.0 sein könnte.

Nur ein Nachsatz in einer kurzen Mitteilung von Linux-Initiator Linus Torvalds gibt den bereits Jahre alten Überlegungen, die Kernel-Versionsnummerierung zu ändern, wieder Auftrieb. »Die Stimmen in meinem Kopf sagen, dass die Versionsnummern allmählich zu groß werden«, schrieb Torvalds. Die nächste Version könnte daher 2.8.0 statt des eigentlich fälligen 2.6.40 sein.

Der kurze Satz löste sofort eine lebhafte Diskussion aus. Ingo Molnar wünschte sich, das die 2.6er-Linie noch bis 2.6.42 (in Anspielung auf Per Anhalter durch die Galaxis) weitergeführt würde, worauf 3.0.0 folgen sollte. Später gab er allerdings zu bedenken, dass wohl erst Linux 42.0 als die Antwort auf die Frage nach dem Leben, dem Universum und allem sein könnte. Torvalds antwortete, dass er ernsthaft über 3.0 nachdenke, also die Versionsnummern auf zwei Stellen reduziert; die dritte Stelle wäre dann für Updates der stabilen Version gedacht.

Einen realen Grund außer dem Eindruck vieler Entwickler, dass die Versionsnummer »zu groß« wird, gibt es für die Änderung nicht. Da die Versionsnummern des Kernels schon lange nichts mehr mit Features zu tun haben, ist im Prinzip jeder Zeitpunkt für eine Umstellung denkbar. Die mit Linux 2.6.37 weitgehend abgeschlossene Abschaffung des Big Kernel Lock, die zweifellos ein Meilenstein war, taugt daher kaum als Ausrede. Mehrere Entwickler würden es bevorzugen, wenn zuerst die ARM-Architektur aufgeräumt würde, bevor man den Kernel in Linux 3.0 umbenennt. Andere Entwickler geben zu bedenken, dass durch die Änderung einige Skripte und Tools geändert werden müssten, dies ist jedoch sicherlich ein überschaubares Problem.

Passend zur Version 3.0 wäre für Torvalds, dass Linux dieses Jahr in seine dritte Dekade geht. Heute vor 20 Jahren war Linux zwar noch nicht veröffentlicht, aber Torvalds, von seinem Studium unterfordert, arbeitete zu dieser Zeit sehr intensiv an der ersten Version. Allerdings will er diesen Aspekt nicht zu sehr betonen. Linux 3.x würde dann nach einigen Jahren durch Version 4.0 ersetzt, gleichgültig ob dies in zehn Jahren wäre oder deutlich früher. Wichtiger sei die Betonung, dass auch ungerade Versionsnummen mittlerweile für stabile Versionen stehen.

Gespannt darf man nun auf den ersten Veröffentlichungskandidaten der nächsten Kernel-Version sein, die Torvalds noch vor seinem Abflug zur LinuxCon Japan, also kommenden Sonntag oder Montag, herausgeben wird. Dieser wird zeigen, wie sich Torvalds bezüglich der Versionsnummer entschieden hat.

Quelle : www.pro-linux.de

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Erste Vorabversion von Linux 3.0 erschienen
« Antwort #198 am: 30 Mai, 2011, 13:07 »
Vor einer Woche deutete es sich bereits an, jetzt ist es offiziell: Der nächste aus dem Hauptentwicklungszweig von Linux hervorgehende Kernel soll die Versionsnummer 3.0 tragen. Das geht aus der Freigabe-Mail zur ersten Vorabversion des 3.0er-Kernels hervor, der in etwa sieben bis neun Wochen erscheinen dürfte. Mit der Vorabversion wechselt der Kernel zudem den Namen von "Flesh-Eating Bats with Fangs" zu "Sneaky Weasel".

Als Nachfolger des vor elf Tagen freigegebenen Linux 2.6.39 hätte die aus dem aktuellen Entwicklungszyklus hervorgehende Version eigentlich die Nummer 2.6.40 erhalten. Seit der Freigabe der Version 2.6.0 vor knapp siebeneinhalb Jahren und der wenig später verkündeten Abkehr von der Entwicklung mit einer "Unstable-Series" wie 2.3 oder 2.5 haben die Kernel-Hacker lediglich den letzten Abschnitt der aus drei Zahlen bestehenden Versionsbezeichnung erhöht. Vor einige Tagen erklärte Torvalds allerdings überraschend, dass die "Stimmen in seinem Kopf" ihm erzählen, die Nummern würden zu groß. In dem Zusammenhang erwähnte er Überlegungen, auf 2.8.0 zu springen; schnell war in der daraus entstandenen Diskussion dann aber von 3.0 die Rede.

Die "3" am Anfang solle für die dritte Dekade stehen – die erreicht Linux in Kürze, denn der Kernel wird dieses Jahr 20 Jahre alt. Der Nachfolger der Version 3.0 soll die Versionsnummer 3.1 tragen und dürfte vermutlich zwei bis drei Monate nach 3.0 erscheinen. Die parallel entwickelten Versionen der Stable- und Longterm-Serien sollen in Zukunft den dritten Abschnitt in der Versionsbezeichnung nutzen können, um ihre Kernel zu kennzeichnen; bisher verwendeten sie einen vierten Abschnitt. Einige Skripte im Kernel und dessen Umfeld müssen an diese Änderung noch angepasst werden; das ist ein Grund, warum sich die Vorabversion an einige Stellen derzeit nicht als 3.0-rc1, sondern als 3.0.0-rc1 identifiziert. Für die 3.0er-Kernel hat Torvalds auf Kernel.org ein neues Verzeichnis angelegt; die für die Einstiegsseite der Webseite zuständigen Skripte sind darauf bislang noch nicht richtig eingestellt und verlinken bislang noch nicht auf die Archive von Linux 3.0-rc1.

Torvalds hat die Entscheidung zum Sprung auf 3.0 alleine getroffen, wie er in der Freigabe-Mail zu 3.0-rc1 schreibt. Dort betont er auch sehr deutlich, dass diese Version keine großen Änderungen bringe. Es sei lediglich eine Neunummerierung, die keine größeren Neuerungen bringe, wie es etwa bei Gnome 3.0 oder KDE 4.0 der Fall war. Bereits vergangene Woche hatte er anderen Kernel-Hackern erklärt, dass er den Sprung auf eine höhere Versionsnummer nicht zum Anlass nehmen werde, besonders große Änderungen vorzunehmen oder vermeintliche Altlasten wie MCA-, EISA- oder ISA-Unterstützung zu entfernen (1, 2).

Die Vorabversion von 3.0 enthält aber durchaus den üblichen Schwung an Neuerungen, denn die hatten viele der anderen Kernel-Hacker entwickelt und zur Aufnahme eingesandt, noch bevor überhaupt die Rede von einem Sprung auf 3.0 die Rede war. Darunter findet sich wider Erwarten nun doch das Storage-Backend für Xen. Damit enthält der Kernel nun alle wichtigen Komponenten, um als federführender Kernel (Dom0) unter dem Xen-Hypervisor zu arbeiten; einige Hintergründe dazu finden sich in einem Blog-Eintrag von Oracle-Mitarbeiter Wim Coekaerts.

Der Netfilter-Code von Linux 3.0 enthält nun einen Just In Time Compiler für x86-64-Systeme, der einige Performance-Vorteile für die Paket-Verarbeitung auf Firewalls bringen soll. Es gab zudem zahlreiche Verbesserungen am weiterhin experimentellen Btrfs-Dateisystem. Wie immer stießen zudem einige Dutzend neue Treiber zum Kernel; darunter der Treiber rtl8192se für WLAN-Chips von Realtek oder einer für den DVB-T Tuner Micronas DRXD, den verschiedene Hersteller einsetzen. Das Kernel-Log in c't und auf heise open wird in den kommenden Wochen über diese und zahlreiche andere Neuerungen von Linux 3.0 berichten.

Quelle : http://www.heise.de/newsticker/meldung/Erste-Vorabversion-von-Linux-3-0-erschienen-1252084.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log: Schwierigkeiten mit Hardware und "3.0"
« Antwort #199 am: 02 Juni, 2011, 10:34 »
Die zweistellige Versionsnummer von Linux 3.0 bereitet noch einige Umstände, an deren Beseitigung fleißig gearbeitet wird. Unsaubere Arbeit der Hardware-Hersteller führt zu Problemen beim Reboot und der Zusammenarbeit mit UEFI-Hardware. Die Pflege der Kernel-Serie 2.6.38 endet bald.

Nur einige Stunden nach der Freigabe der ersten Vorabversion von Linux 3.0 erschienen erste Patches, durch die der Kernel selbst besser mit der neuen zweistelligen Versionsnummer zurechtkommt. Unter den Änderungen ist ein Workaround für das Programm Depmod. In die kurz nach Linux 3.0-rc1 veröffentlichte Version 3.13 der module-init-tools zog parallel ein Patch ein, der die Ursache der Depmod-Probleme beseitigt. Einige Entwickler haben vorgeschlagen, Torvalds solle den Kernel aufgrund dieser und ähnlicher Probleme doch 3.0.0 und nicht 3.0 nennen; das selbst ernannte Alpha-Männchen der Kernel-Entwicklung hat sich dazu aber bislang nicht geäußert.

Joe Pranevich hat unterdessen einen Entwurf eines Artikels mit dem Titel "Wonderful World of Linux 3.0" veröffentlicht, der die wichtigsten in den letzten Jahren vorgenommenen Kernel-Änderungen auflistet. Einen ähnlichen Artikel hatte Pranevich schon zum Erscheinen von Linux 2.6.0 geschrieben. David Lang sorgt sich allerdings, solch ein Dokument könne den Eindruck erwecken, Linux 3.0 sei eine größere Überarbeitung; ähnliche Bedenken äußert auch Willy Tarreau, der die Kernel-Serien 2.4 und 2.6.37 betreut. Schon in der Freigabe-Mail zu 3.0-rc1 hat Torvalds sehr deutlich gesagt, dass 3.0 keine größeren Neuerungen bringt als die Vorgänger der 2.6er-Serie und lediglich eine neue Nummerierung angewendet wird.

Hardware-Probleme

Der Kernel-Hacker Matthew Garrett versucht seit einigen Wochen verstärkt, Probleme zu beseitigen, die beim Zusammenspiel von Linux und UEFI (Unified Extensible Firmware Interface) auftreten, das bei neueren Mainboards BIOS-Funktionen ersetzt. Einige seiner teilweilse amüsant beschriebenen Erkenntnisse und Erlebnisse finden sich in seinen Tweets sowie den Blog-Einträgen "EFI implementation bugs" und "Trials and tribulations with EFI". Dort erwähnt er auch einige in Linux 3.0 eingeflossene Korrekturen, welche die Situation verbessern sollten. Bei unseren Versuchen in den c't-Labors gelang es bisher bei so gut wie keinem Desktop-Mainboard, eine gängige Linux-Distribution per UEFI zu booten.

Die Situation ist ähnlich wie vor Jahren bei ACPI: Die UEFI-Spezifikation ist an einigen Stellen nicht eindeutig; in anderen Bereichen halten sich die Hersteller nicht exakt an die Vorgaben oder tricksen, um bestimmte Funktionen zu ermöglichen. Linux stolpert dann gelegentlich an solchen Stellen, denn ob in der Praxis alles funktioniert, testen viele Hardware-Hersteller nur mit aktuellen Windows-Versionen.

ACPI und UEFI sind nicht die einzigen Bereiche, wo Ungenauigkeiten oder Tricksereien der Hardware-Hersteller Problemen nach sich ziehen. Selbst bei so etwas vermeintlich Simplem wie der Anweisung zum Reboot gibt es einige Probleme beim Zusammenspiel zwischen Hardware und Linux. Hintergründe erläutert Garrett in einem Blog-Eintrag; demnach booten einige Systeme von Apple und Lenovo nur neu, wenn die Anweisungen zum Neustart in einer ähnlichen Art eintrudeln, wie Windows sie sendet. Patches, damit der Kernel genau das macht, sind in Linux 3.0 eingeflossen.

Kernel-Versionsstatus

Greg Kroah-Hartman hat den Stable-Kernel 2.6.38.7 sowie die Longterm-Kernel 2.6.32.41 und 2.6.33.14 freigegeben. Die beiden erstgenannten halten die übliche Aufforderung zum Wechsel auf die neuen Versionen, denn unter den kleineren in Stable- und Longterm-Kernel einfließen Änderungen sind manchmal auch Korrekturen für Sicherheitslücken.

Die Stable-Kernel 2.6.39.1 und 2.6.38.8 sind gerade in Vorbereitung; sie dürften vermutlich am Wochenende erscheinen, da die Zeit zum Einreichen von Kommentaren am Freitag Nachmittag endet. Die Pflege der 38er-Serie will Kroah-Hartman mit 2.6.38.8 einstellen; er rät zum Umstieg auf den Kernel 2.6.39.

LKML-Diskussionen

Mehrere Leser – darunter auch einige Kernel-Hacker – haben uns gebeten, doch häufiger wichtige Diskussionen auf den Mailinglisten der Kernel-Entwickler kurz zu erwähnen und zu verlinken, da es aufgrund der vielen Mails schwierig sei, der LKML zu folgen. Wenn sich dort interessante Dinge tun, würden sie es aber gerne erfahren, um die Diskussionsbeiträge selbst zu sichten; eine Zusammenfassung der Diskussion wäre gar nicht nötig. In den nächsten Ausgaben des Kernel-Logs werden wir einige solche Kurz-Verweise auf wichtige Mitteilungen oder Diskussion aufzunehmen, um zu testen, ob diese Form Anklang bei den Lesern findet.

    Eine längere LKML-Diskussion entstand um die Idee, Fsync-Aufforderungen im Laptop-Mode nicht zu honorieren, damit Festplatte länger im Stromsparmodus verweilen können (u. a. 1, 2). Bekannte Kernel-Hacker erläutern daraufhin, warum das eine schlechte Idee ist; darunter auch Linux-Urgestein Theodore 'tytso' Tso. Möglicherweise führt die Diskussion mittelfristig zu einer Lösung, die alle Beteiligten halbwegs zufrieden stellt.
    In "AAARGH bisection is hard" tauschen sich einige Entwickler mit Linus Torvalds über Vorteile, Ansätze und Probleme der Fehlersuche mit "Git Bisect" aus.
    In "[RFC] ARM Subarchitecture group maintainership" diskutieren die Entwickler einige teilweise bereits umgesetzte Ansätze, um die Zusammenarbeit zwischen den ARM-Entwicklern zu verbessern und den ARM-Code im Kernel aufzuräumen.

Kernel-Log-Staccato

Kernel

Luis R. Rodriguez hat die finale Version von compat-wireless 2.6.39 zum Download freigegeben. Mit ihr lassen sich die WLAN- und Bluetooth-Treiber von Linux 2.6.39 unter Linux-Kerneln seit 2.6.26 einsetzen.

Der bei Atheros angestellte Rodriguez hat einige Videos auf YouTube veröffentlicht, die Informationen zur Entwicklung von WLAN-Treibern für Linux liefern.

RCU-Kernel-Betreuer Paul E. McKenney weist in seinem Blog auf eine Aktualisierung des laufend fortgeschriebenen Buch zur parallelen Programmierung hin, die unter anderem im Anhang die Entwicklung von RCU (Read-Copy Update) im Kernel erläutert.

Unterstützung für Grafikhardware

Jeremy Huddleston hat den X-Server 1.10.2 veröffentlicht, der einige Fehlerkorrekturen bringt.

Das kürzlich freigegebene Treiberpaket xf86-video-ati 6.14.2 beseitigt einige Fehlerunter anderem im Tiling-Code für Fusion-GPUs. Mit der neuen Version des Open-Source-Grafiktreibers für Radeon-GPUs lassen sich zudem einige Beschleunigungsfunktionen der Cayman-GPUs verwenden, die auf den Radeon-HD-Grafikkarten der Serie 6900 sitzen. Um diese zu nutzen ist unter Umständen eine aktuelle Entwicklerversion des Linux-Kernels nötig. In den Entwicklerzweig von Mesa 3D sind erste Teile des Codes zur 3D-Unterstützung bei Cayman-GPUs eingezogen; der Shader-Compiler kann allerdings noch nicht mit der Shader-Hardware dieser GPUs umgehen. Alex Deucher hat derweil Patches zur Begutachtung gestellt, durch die das DRM-Subsystem AMDs Llano APUs unterstützt, die in den kommenden Wochen auf den Markt kommen sollen.

Kernel-Umland ("Plumbing layer"), Userland-Treiber, Entwicklertools, ...

Auf den Webseiten von Free Electrons finden sich Videoaufzeichnungen von der Embedded Linux Conference (ELC) 2011 und dem Embedded-Track der FOSDEM 2011 . Darunter finden sich auch einige allgemeine Vorträge bekannter Entwickler; etwa "Really fast x86 boot" von Coreboot-Entwickler Rudolf Marek, das "Kernel Shark Tutorial" von Steven Rostedt, "Becoming part of the Linux kernel community" von Arnd Bergmann sowie "RT-Preempt: what’s the state and why there is no roadmap" von Thomas Gleixner.

Parallel zur mittlerweile acht Teile umfassenden Blog-Reihe "Systemd for Administrators" hat Lennart Poettering nun noch die Serie "Systemd for Developers" gestartet, in der er Entwicklern einige Tipps zur Arbeit mit Systemd gibt. Zwei von Poettering und Kay Sievers geschriebene Artikel in c't 13/11 (ab Montag, 6. Juni, am Kiosk) liefern ebenfalls Hintergründe zur Arbeitsweise und dem Praxiseinsatz der Sysvinit- und Upstart-Alternative. Sie kümmert sich beim kürzlich veröffentlichten Fedora 15 standardmäßig um den Systemstart; OpenSuse scheint bald umsteigen zu wollen.

Junio C Hamano hat Git 1.7.5.3 freigegeben.

Die Entwickler des Projekts Hplip (Hewlett-Packard's Linux Imaging and Printing Software) haben die Version 3.11.5 der gleichnamigen Treiber für Drucker und Multifunktionsgeräte von HP veröffentlicht. Die Release Notes geben einen detaillierten Überblick über die wichtigsten Neuerungen – darunter Unterstützung für einige LEDM-Scanner sowie einige Drucker der Serien Designjet und LaserJet.

Quelle : http://www.heise.de/open/artikel/Kernel-Log-Schwierigkeiten-mit-Hardware-und-3-0-1253730.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log – Was 3.0 bringt (1): Netzwerk
« Antwort #200 am: 10 Juni, 2011, 12:57 »
Ein Just in Time Compiler verspricht schnelleres Filtern von Netzwerkpaketen. Der WLAN-Stack beherrscht jetzt Wake on Wireless LAN und unprivilegierte Nutzer dürften "pingen". Neue und überarbeitete Treiber verbessern die Unterstützung für Netzwerkbausteine von Ralink und Realtek.

Zum Wochenstart hat Linus Torvalds die zweite Vorabversion von Linux 3.0 veröffentlicht. Nach dem recht überraschenden Versionssprung von 2.6.39 auf 3.0 identifiziert sich auch der RC2 aus Kompatibilitätsgründen intern als Vorabversion von Linux 3.0.0, obwohl der Kernel später die Bezeichnung 3.0 tragen soll. In der Freigabe-Mail zum RC2 schreibt Torvalds, es sei einigermaßen ruhig gewesen, obgleich ein Btrfs-Update etwas größer gewesen sei als gehofft; er hofft, die Dinge bleiben so ruhig.

Wie vorgesehen ist damit auch diesmal das Gros der Änderungen für die nächste größere Kernel-Überarbeitung im Rahmen des Merge Window in den Hauptentwicklungszweig von Linux eingezogen. Da von nun an nur mehr Korrekturen und kleine Verbesserungen einziehen dürften, kann das Kernel-Log bereits einen umfassenden Überblick über die wichtigsten Neuerungen des Mitte oder Ende Juli erwarteten Linux 3.0 geben.

Die Artikel der Serie "Was 3.0 bringt" werden sich dabei nach und nach den unterschiedlichen Funktionsbereichen des Kernels annehmen. Den Anfang der Serie macht die folgende Beschreibung der wichtigsten Änderungen am Netzwerk-Stack und den darauf aufsetzenden Treibern. In den kommenden Wochen folgen Artikel zur Grafik-Treibern, Storage-Unterstützung, Dateisystemen, Architektur-Code, Infrastruktur sowie Treibern für andere Hardware.

Just in Time

Zum Netfilter-Code gehört jetzt ein "Berkeley Packet Filter Just in Time Compiler" für x86-64-Systeme. Er erzeugt zur Laufzeit Assembler-Code, der einige der von den Iptables-Regeln vorgegeben Aufgaben zum Filtern von Netzwerkpaketen übernimmt; das soll Performance-Vorteile für Firewalls bringen. Der standardmässig deaktivierte JIT-Compiler lässt sich einschalten, indem man den Wert 1 in die Datei /proc/sys/net/core/bpf_jit_enable schreibt. Bei einer früheren Version des Compilers hat dessen Entwickler eine Beschleunigung um 50 Nanosekunden pro Paket messen können. Weitere Hintergründe zum Ansatz liefert ein LWN.net-Artikel.

Samba-Entwickler Anton Blanchard hat den neuen Syscall sendmmsg eingebracht. Er stellt das Sende-Äquivalent zu recvmmsg dar und ermöglicht das Versenden eines Schwungs von Nachrichten mit nur einem Funktionsaufruf. Das reduziert den Syscall-Overhead und kann den Netzwerk-Durchsatz steigern: laut Messungen des Entwicklers um bis zu 20 Prozent bei UDP-Übertragungen und 30 Prozent beim Einsatz von Raw Sockets.

Ping für jedermann

Ping-Programme können den neuen Socket IPPROTO_ICMP nutzen, um unprivilegierte Anwender das Senden und Empfangen von ICMP_ECHO-Paketen zu ermöglichen; bisher benötigt Ping unter Linux für seine Arbeit Root-Rechte oder erhält durch Capabilities die nötigen Rechte zum Erledigen seiner Arbeit. MacOS X bietet eine ähnliche Funktion schon seit längerem; der Commit-Kommentar und ein kurzer LWN.net-Artikel erläutern einige Hintergründe.

Zum Kernel stieß ein Netzwerk-Scheduler, der das Verfahren Quick Fair Queue (QFQ) implementiert, das einen geringen Overhead haben soll. Über den neuen Syscall setns lässt sich ein Namespace erzeugen, der sich an verschiedene Prozesse übergeben lässt; das soll laut Git-Pull-Request unter anderem ein Isolieren von VPN-Verbindungen ermöglichen. Hintergründe zu dem auch für Container-Virtualisierung interessanten Verfahren liefert ein LWN.net-Artikel. Der Bluetooth-Stack unterstützt jetzt Extended Inquiry Response (EIR), der Bluetooth-USB-Treiber das MacBookPro "8,2". Der LAN-Treiber r8169 spricht ab 3.0 die Realtek-Chips RTL8105, RTL8111E, RTL8168E und RTL8168DP an (1, 2, 3), der Treiber tg3 den Broadcom-Chip 5720.

Wireless

Der WLAN-Stack des Kernels enthält jetzt grundlegende Unterstützung für die Konfiguration von Wake on Wireless LAN (WoWLAN) (1, 2). Neu ist auch der Treiber rtl8192se für die PCIe-WLAN-Chips RTL8191SE und RTL8192SE von Realtek (u. a. 1). Es ist der dritte maßgeblich von Realtek selbst entwickelte Treiber, der in letzter Zeit in das Netzwerk-Subsystem des Kernel einzog. Beim Integrieren der drei hat Kernel-Hacker Larry Finger geholfen. Er arbeitet bereits an der Aufnahme von ordentlicher WLAN-Treibern für die Chips RTL8192DE und RTL8191SU; für Letztere bringt der Kernel allerdings bereits einen Staging-Treiber mit.

Ebenfalls neu ist der Treiber mwifiex für den vornehmlich im Embedded-Umfeld verbauten SDIO-WLAN-ChipSD8787. Nachdem sich der Treiber carl9170 etabliert hat, wurde der für die gleichen Chips geeignete, aber ältere Treiber ar9170usb jetzt entfernt. Der Treiber ath9k spricht nun auch den Atheros AR9340 an.

Einer der Entwickler des Broadcom-WLAN-Treibers b43 hat einen Treiber für eine Protokoll-Variante der Advanced Microcontroller Bus Architecture (AMBA) eingebracht – der ist bei einigen Bausteinen nötig, damit die WLAN-Treiber die WLAN-Funktionen der Broadcom-Chips erreichen.

Rt2x00-WLAN-Treiber

Die im Rt2x00-Projekt entstandenen Kernel-Treiber für WLAN-Chips von Ralink bieten ab Linux 3.0 experimentelle Unterstützung für die USB-WLAN-Chipsätze der Baureihe RT5370. Der Treiber für die RT53xx-Familie gilt fürs erste weiter als experimentell, soll diese PCI-WLAN-Chips jetzt aber komplett unterstützten und besser funktionieren. Ähnlich verhält es sich bei den Treibern für die PCI- und USB-Chips für der RT33xx-Reihe, die den Status "experimentell" ablegen konnten.

Auch die Ralink-Treiber kann man nun über Sysfs dazu auffordern, ein bestimmtes PCI-, PCIe- oder USB-Gerät anzusprechen. Das ist nötig, wenn der Treiber es nicht automatisch erkennt, weil die PCI-, PCIe- oder USB-IDs der WLAN-Hardware in der Liste der vom Treibern unterstützten Geräte fehlt. Diese Listen werden immer mal wieder aktualisiert; gelegentlich auch bei Stable- und Longterm-Kerneln, denn die Gefahr ist gering, durch solche Erweiterungen Probleme bei Anwendern auszulösen, welche die Treiber mit anderer Hardware schon länger einsetzen.

Bei jeder neuen Kernel-Version gibt es dutzende oder hunderte Erweiterungen der Listen der von Treibern unterstützten PCI-, PCIe- oder USB-IDs. Das Kernel-Log verlinkt auf solche Commits zumeist im Abschnitt "Die kleinen Perlen". Durch solche eher unscheinbare Änderungen verbessert sich die Hardware-Unterstützung von Linux immer weiter. Das lässt sich gut an drei für Linux 3.0 vorgenommene Commits am Ralink-USB-WLAN-Treiber rt2800usb illustrieren, durch die der Treiber in Zukunft über 30 weitere USB-WLAN-Geräte verschiedener Hersteller automatisch anspricht, ohne dass sich der Anwender um etwas kümmern muss (1, 2, und 3). Bei USB-Hardware sind solche Anpassungen besonders häufig nötig, da die Hersteller oft eigene IDs für ihre Geräte nutzen, während sich PCI- und PCIe-Geräte zumeist mit der ID des verbauten Chips melden.

Die Treiber für Ralink-Chips sind derweil so weit gereift, dass die Kernel-Entwickler die von Ralink entwickelten und später in den Staging-Zweig integrierten Treiber rt2860sta und rt2870sta rausgeworfen haben – ein weiteres Beispiel für Treiber, die im Staging-Zweig nicht gereift sind, sondern durch ganz andere, weitgehend unabhängig entstandene Treiber ersetzt wurden. Auch der für Atheros-AR600x-Chips zuständige Staging-Treiber ath6kl soll nun doch nicht im Staging-Bereich verbessert werden, sondern unabhängig davon.

Die kleinen Perlen

Netzwerk-Subsystem-Verwalter David Miller listet einige weitere Neuerungen in den wichtigsten Git-Pull-Requests, die er während des Merge Window ausgesandt hat (1, 2, 3, 4). Dort erwähnt er etwa Änderungen, durch die der Routing Cache langfristig entfernt werden kann.

Viele kleinere, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den "offiziellen" Kernel-Quellen auf Kernel.org. Der über diese Links angezeigten Commit-Kommentar und der darunter ausgegebene Patch liefern zahlreiche weitere Informationen zur jeweiligen Änderungen.

Vor jedem Link finden sich in eckigen Klammern einige Buchstaben und Zahlen. Ein "C" kennzeichnet Patches mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten, die bei der Kernel-Konfiguration über "make menuconfig" oder "make xconfig" angezeigt werden. Ein "D" steht bei Patches, die die Dokumentation verändern, die im Kernel-Zweig unterhalb von Documentation/ liegt. Ein "N" weist Änderungen aus, die eine neue Datei anlegen. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: eine "1" kennzeichnet Änderungen, die inklusive Kommentar zwischen 10 und 20 KByte groß sind, eine "2" für solche, die zwischen 20 und 30 KByte Umfang haben; Änderungen ohne Zahl sind kleiner als 10 KByte, Patches mit einer "9" hingegen 90 KByte oder größer.

LAN

    [    ] Add Fujitsu 1000base-SX PCI ID to tg3
    [    ] be2net: add rxhash support
    [    ] be2net: Enable SR-IOV for Lancer
    [    ] benet: convert to set_phys_id
    [    ] bnx2: convert to set_phys_id
    [    ] bnx2x: Allow ethtool to enable/disable loopback.
    [    ] bnx2x: convert to set_phys_id
    [    ] cxgb3: implement set_phys_id
    [    ] cxgb4: drop phys_id interface and implement the newer set_phys_id
    [    ] cxgb4vf: drop phys_id interface and implement the newer set_phys_id
    [    ] e1000: convert to set_phys_id
    [    ] e1000e: implement ethtool set_phys_id
    [    ] e100: implemenet set_phys_id
    [    ] ethtool: Change ETHTOOL_PHYS_ID implementation to allow dropping RTNL
    [    ] ewrk3: convert to set_phys_id
    [    ] igb: convert to ethtool set_phys_id
    [    ] ixgb: convert to set_phys_id
    [    ] ixgbe: add LED blink code for x540
    [    ] ixgbe: Add macvlan support for VF
    [    ] ixgbe: add support for 64k EEPROM for 82599
    [    ] ixgbe: Add support for new 82599 adapter
    [    ] ixgbe: convert to ethtool set_phys_id
    [    ] ixgbe: enable SCTP checksum offload for X540
    [    ] ixgbevf: Add macvlan support in the set rx mode op
    [    ] net: allow shifted access in smsc911x V2
    [    ] niu: convert to new ethtool set_phys_id
    [    ] pcnet32: convert to set_phys_id
    [C N4] ptp: Added a clock driver for the National Semiconductor PHYTER.
    [   1] qlcnic: Code optimization patch
    [    ] qlcnic: convert to set_phys_id
    [   2] qlcnic: FW dump support
    [    ] qlcnic: Update version number to 5.0.16
    [    ] qlge: use ethtool set_phys_id
    [    ] s2io: convert to set_phys_id (v2)
    [    ] sfc: Implement ethtool_ops::set_phys_id instead of ethtool_ops::phys_id
    [    ] skge: implement set_phys_id
    [    ] sky2: support ethtool set_phys_id
    [    ] stmmac: review Wol and enable the Unicast support
    [    ] tg3: Add 5720 ASIC rev
    [    ] tg3: Add 5720 H2BMC support
    [    ] tg3: Add 5720 NVRAM decoding
    [    ] tg3: Add 5720 PHY ID
    [    ] tg3: Add EEH support
    [    ] tg3: Add jumbo frame loopback tests to selftest
    [    ] tg3: Add support for extended VPD blocks
    [    ] tg3: Add TSO loopback test
    [    ] tg3: Allow ethtool to enable/disable loopback.
    [    ] tg3: Enable 5720 support
    [    ] tg3: implement ethtool set_phys_id
    [    ] tg3: Update version to 3.118
    [    ] tg3: Update version to 3.119
    [    ] via-rhine: Assign random MAC address if necessary
    [    ] vxge: always enable hardware time stamp
    [    ] vxge: convert to set_phys_id
    [    ] vxge: update driver version

WLAN

    [    ] ath5k: disable 5 GHz support for the dualband PHY chip on dual-radio AR5312
    [    ] ath5k: fix the EEPROM check for hw AES crypto support
    [    ] ath9k: add an interface for overriding the value of specific GPIO pins
    [    ] ath9k: Add AR9340 platform id to id table
    [    ] ath9k: add support for overriding LED pin and GPIO settings from platform data
    [    ] ath9k: add support for overriding the MAC address through platform data
    [    ] ath9k_htc: Enable AP and P2P modes
    [    ] ath9k_hw: Add support for btcoexistence in AR9300.
    [    ] ath9k_hw: enable Antenna diversity for AR9485
    [    ] ath9k_hw: Enable byte Tx/Rx data swap for AR9340
    [    ] ath9k_hw: Fix throughput drops in HT40 mode for AR9287 chips
    [    ] ath9k_hw: Speedup register ops for HTC driver
    [    ] ath9k: Implement an API to swap main/ALT LNA's
    [C   ] ath9k: introduce ATH9K_{PCI,AHB} config options
    [    ] ath9k: Support RSN IBSS
    [    ] ath: Speedup key set/reset ops for HTC driver
    [    ] bcma: add PCI ID of the card found in Thinkpad X120e
    [   1] cfg80211/nl80211: add support for scheduled scans
    [    ] iwlagn: add eeprom command to testmode
    [    ] iwlagn: add feature flags
    [    ] iwlagn: add testmode set fixed rate command
    [    ] iwlagn: add testmode trace command
    [    ] iwlagn: fix incorrect PCI subsystem id for 6150 devices
    [    ] iwlagn: led stay solid on when no traffic
    [  N3] iwlagn: move IO functions out of line
    [    ] iwlagn: new 105 series device
    [    ] iwlagn: no 5.2GHz/HT40 support for bgn devices
    [    ] iwlagn: remove deprecated module parameters
    [   2] iwlagn: support multiple TBs per command
    [    ] iwlwifi: set default aggregation frame limit to 63
    [C N2] iwlwifi: support the svtool messages interactions through nl80211 test mode
    [    ] mac80211: Add new API for rate selection
    [   1] mac80211: add support for HW scheduled scan
    [    ] mwl8k: add support for block ack commands
    [    ] mwl8k: update to ap firmware API version 2
    [C N1] net: rfkill: add generic gpio rfkill driver
    [    ] p54: implement multicast filter
    [    ] rt2x00: Add autowake support for USB hardware
    [    ] rt2x00: Enable WLAN LED on Ralink SoC (rt305x) devices
    [   1] rt2x00: Implement tx power temperature compensation
    [    ] rt2x00: Linksys WUSB600N rev2 is a RT3572 device.
    [    ] ssb: update list of devices supporting multiple 80211 cores
    [    ] wifi: Add hwflags to debugfs.
    [    ] wl1251: Add support for idle mode
    [   1] wl12xx: 1281/1283 support - Add acx commands
    [    ] wl12xx: 1281/1283 support - add block size handling for sdio and spi
    [    ] wl12xx: 1281/1283 support - Add Definitions
    [    ] wl12xx: 1281/1283 support - Add dummy packet support
    [C   ] wl12xx: 1281/1283 support - enable chip support
    [    ] wl12xx: 1281/1283 support - Improve Tx & Rx path
    [   1] wl12xx: 1281/1283 support - Loading FW & NVS
    [    ] wl12xx: 1281/1283 support - move IRQ polarity
    [    ] wl12xx: 1281/1283 support - New boot sequence
    [   1] wl12xx: 1281/1283 support - New radio structs and functions
    [    ] wl12xx: 1281/1283 support - Use different FW file for AP mode wl127x/wl128x chips
    [    ] wl12xx: 1281/1283 support - use dynamic memory for the RX/TX pools
    [    ] wl12xx: add BT-coexistance for AP
    [    ] wl12xx: Add support for 11n Rx STBC one spatial stream
    [    ] wl12xx: Enable dynamic memory for 127x

Various

    [    ] Bluetooth: Add automated SSP user confirmation responses
    [    ] Bluetooth: Add basic discovery commands to the management interface
    [    ] Bluetooth: Add confirm_hint parameter to user confirmation requests
    [    ] Bluetooth: Add definitions for link key types
    [    ] Bluetooth: Add discovering event to the Management interface
    [    ] Bluetooth: Add secure flag for mgmt_pin_code_req
    [    ] Bluetooth: Add store_hint parameter to mgmt_new_key
    [    ] Bluetooth: Add support for disconnecting LE links via mgmt
    [    ] Bluetooth: Add support for sending connection events for LE links
    [    ] Bluetooth: Add variable SSP auto-accept delay support
    [C  1] Bluetooth: btmrvl: support Marvell Bluetooth device SD8787
    [    ] Bluetooth: mgmt: Add support for setting the local name
    [    ] bonding: cleanup module option descriptions
    [ D  ] bonding: documentation and code cleanup for resend_igmp
    [   1] bonding, ipv4, ipv6, vlan: Handle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS
    [    ] bridge: add netlink notification on forward entry changes
    [   2] caif: prepare support for namespaces
    [CD 1] capi: Perform scheduled capifs removal
    [    ] cfg80211: module_param to disable HT40 in 2.4GHz band
    [   1] drivers/net: add prefetch header for prefetch users
    [  N1] enic: Add support for PORT_REQUEST_PREASSOCIATE_RR
    [    ] ethtool: Add 20G bit definitions
    [ D  ] igb: Add anti-spoofing feature documentation
    [ D 1] ipv4, ipv6, bonding: Restore control over number of peer notifications
    [    ] ipv4: more compliant RFC 3168 support
    [    ] net/9p: enable 9p to work in non-default network namespace
    [    ] net: Allow no-cache copy from user on transmit
    [    ] net-bonding: Adding support for throughputs larger than 65536 Mbps
    [    ] net: ethtool support to configure number of channels
    [    ] ns proc: Add support for the ipc namespace
    [    ] ns proc: Add support for the network namespace.
    [    ] ns proc: Add support for the uts namespace

Quelle und Links : http://www.heise.de/open/artikel/Kernel-Log-Was-3-0-bringt-1-Netzwerk-1257064.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log: Llano-Unterstützung, Union-Dateisysteme
« Antwort #201 am: 15 Juni, 2011, 16:18 »
Treibercode für den Grafikchip der Llano-APUs von AMD hat es noch in Linux 3.0 geschafft – dessen Versionsnummer vielleicht doch 3.0.0 lauten muss. Derweil wird mal wieder über den besten Ansatz für Overlay- oder Union-Dateisysteme diskutiert.

In der Nacht von Montag auf Dienstag hat Linus Torvalds die dritte Vorabversion von Linux 3.0 freigegeben. Mit ihr stieß Unterstützung für den Grafikkern von AMDs am Dienstag vorgestellten Llano-Prozessoren zum Kernel – die Änderungen schienen Torvalds wohl klein und ungefährlich genug, um sie auch mehr als eine Woche nach Ende des Merge Window noch in den Hauptentwicklungszweig aufzunehmen.

Nach dem Versionssprung auf 3.0 flossen zudem einige Änderungen ein, die Probleme mit zweistelligen Versionsnummern beseitigen. In einer daraufhin entstandenen Diskussion deutet Torvalds an, den nächsten Kernel vielleicht doch "3.0.0" zu nennen, wenn keine Tricks gefunden werden, damit ältere Programme mit einem "3.0" klarkommen. Schwierigkeiten mit einer zweistelligen Versionsnummer zeigen unter anderem ältere Versionen der Module-Init-Tools (Depmod und Co.), Mdadm sowie die LVM2- und Device-Mapper-Werkzeuge. Torvalds scheint aber langfristig auf Versionsnummern mit zwei Stellen wechseln zu wollen. In einer anderen Diskussion hat Torvalds erklärt, Programme sollen möglichst keine Annahmen über den Aufbau der Versionsnummer enthalten.

Rafael J. Wysocki hat kurz vor der Freigabe des RC3 neue Regression Reports veröffentlicht. Demnach zeigte der Hauptentwicklungszweig am Wochenende 7 Fehler, die Linux 2.6.39 nicht aufwies; zudem sind 18 Fehler bekannt, die mit 2.6.38 nicht auftraten.

Überlagern

Viele Linux-Distributionen nutzen für ihre Live-Medien Overlay- oder Union-Dateisysteme, um ein beschreibbares Dateisystem über ein schreibgeschütztes zu legen, damit man beispielsweise nach dem Booten von einem nicht beschreibbaren Dateisystem einer CD oder DVD Software nachinstallieren kann. Fedora verwendet dazu den Device Mapper; bei anderen Distributionen wie Ubuntu kommt das Overlay-Dateisystem aufs zum Einsatz, das allerdings außerhalb der Kernelquellen gepflegt wird. Verschiedene Entwickler arbeiten daher seit Jahren an Overlay- oder Union-Funktion auf Dateisystemebene, die den Qualitätsansprüchen der Kernel-Hacker genügt, damit sie in den Hauptentwicklungszweig einziehen kann.

Der durch Fuse bekannte Entwickler Miklos Szeredi hat seine Overlay-Lösung jetzt zur Aufnahme bei Linux 3.1 vorgeschlagen. Die daraufhin entstandene Diskussion erweckt ein wenig den Eindruck, dass auch einige der Kernel-Hacker endlich eine Lösung im offiziellen Kernel sehen wollen. Die Dateisystemspezialistin Valerie Aurora merkt allerdings an, die Lösung von Szeredi habe möglicherweise einige Probleme. Aurora hat zusammen mit anderen Entwicklern ein alternatives Union-Framework vorangetrieben, sich aus der Kernel-Entwicklung aber vor einigen Monaten weitgehend zurückgezogen.

Die jetzige Diskussionen scheint im Sande zu verlaufen – das Thema dürfte aber vermutlich in nächster Zeit wieder aufkommen. Einige Hintergründe zum Ansatz von Szeredi liefert ein LWN.net-Artikel aus dem September 2010. Er verweist auf viele ältere LWN.net-Artikel, die einige Probleme beim Überlagern von Dateisystemen erläutern, die manche außerhalb des Kernels gepflegte Lösungen ignorieren.

Aktuelle LKML-Diskussionen

Die durch den USB-3.0-Code bekannte Sarah Sharp hat einen "USB mini-summit" angekündigt, der im Rahmen der LinuxCon Vancouver stattfinden soll. Daraus entstand eine Diskussion, die sich unter anderem mit Techniken zum Weiterreichen von USB-Geräten an virtuelle Maschinen beschäftigt. An der hat sich auch Hans de Goede beteiligt, der kürzlich einem Blog-Eintrag zu einer von ihm vorangetriebenen Lösung verfasst hat.

Die bereits erwähnte Diskussion zum Union- und Overlay-Dateisystemen enthielt auch einige Beiträge zu Userspace-Dateisystemen. Torvalds erwähnt dort, dass Fuse zwar für gewisse Dinge gut sei, für das Root-Dateisystem aber ungeeignet sei. Ein Tuxera-Entwickler der NTFS-Treiber für den Linux-Kernel und Fuse erklärte, der Kernel-Treiber sei viel schneller, als ein Userspace-Treiber je werden könne.

Amir Goldstein hat Patches veröffentlicht, die Ext4 um eine Snapshot-Funktion erweitern. In der daraus entstandenen Diskussion merken einige Entwickler an, dass der Device Mapper durch das noch in Entwicklung befindliche "Multisnap" ähnliche Funktionen ermögliche, ohne dass tief greifende Änderungen an Ext4-Code nötig seien (u.a. 1, 2).

Die im letzten regulären Kernel-Log erwähnten Probleme rund um die Linux-Unterstützung von (U)EFI haben weitere Diskussionen nach sich gezogen. In einem Beitrag spricht Torvalds alles andere als positiv über (U)EFI und verwendet dabei deutliche Worte; er bezeichnet aber auch die Unterstützung von (U)EFI in Linux als kaputt. Matthew Garrett berichtet in seinem Blog derweil über einen praktischen Nutzen, den EFI bringt: Ein Ort zum Speichern von Daten, die helfen können, die Ursache von Systemabstürzen zu finden.

Keith Packard übernimmt die Pflege des DRM/KMS-Treiber für Notebook- und Desktop-Grafikchips von Intel; er liefert und erhielt in dem Rahmen einige Tipps zum Einsatz von Git zur Kernel-Entwicklung.

In einer Diskussion um ein im Longterm-Kernel 2.6.32 bislang nicht korrigiertes XFS-Problem stellte Kernel-Urgestein Theodore Tso klar, dass Korrekturen nicht magisch in die Stable- oder Longterm-Kernel eingehen, sondern es eines Entwicklers bedarf, der sich um solche Dinge kümmere; später führte er noch aus, dass dies nicht der Job der Stable- und Longterm-Betreuer sei.

Kernel-Log-Staccato

Kernel

Wie erwartet sind kurz nach dem letzten regulären Kernel-Log die Linux-Versionen 2.6.39.1 und 2.6.38.8 erschienen; mit der letztgenannten endet die Pflege der 38er-Serie.

Auf video.linux.com ist ab Zeitstempel 8:45 eine Video-Aufzeichnung eines Gesprächs zwischen Linus Torvalds und Greg Kroah-Hartman abrufbar, das die beiden kürzlich im Rahmen der LinuxCon Japan 2011 geführt haben. Sie unterhalten sich unter anderem über den Versionssprung auf 3.0 und den 20. Geburtstag, der im Spätsommer ansteht; eine Zusammenfassung des Bühnengesprächs liefert LWN.net.

Der langjährige Libata-Kernel-Hacker Tejun Heo hat das Wiki zum ATA-Code von Linux um eine Warnung vor Marvell-ATA-Controllern mit AHCI erweitert. Die Linux-Unterstützung für diese Chipsätze sei unvollständig und/oder fehlerhaft; für erste solle man sie besser meiden. In der begleitenden Mail erklärt er, es gäbe viele Probleme mit diesen Controllern; die Schuld daran liege mit Sicherheit bei den Marvell- und den Libata-Entwicklern. Er habe nicht genug Zeit und Energie, um Chipsätzen und Dokumentation nachzujagen; auch Marvell scheine nicht sonderlich an einer Lösung interessiert zu sein.

Die Webseite Phoronix hatte vor einigen Wochen berichtet, dass manche Notebooks mit aktuellen Kerneln eine höhere Leistungsaufnahme aufweisen. Die Hauptursache scheint noch immer nicht gefunden zu sein; eine in Linux 3.0 und 2.6.39.1 eingeflossene Änderung beseitigt allerdings einen anderen Fehler, der auf manchen Systemen zu einer leicht höheren Leistungsaufnahme geführt hat.

Ein Blog-Eintrag im bei news.opensuse.org liefert am Linux-Kernel interessierten Suse-Anwendern einige Tipps. Er verweist unter anderem auf das kürzlich umgezogene Git-Repository mit den Quellen der OpenSuse-Kernel und einige Depots, über die man vorkompilierte und auf OpenSuse oder Suse Linux Enterprise (SLE) abgestimmte Kernel beziehen kann – darunter neue OpenSuse- und Vanilla-Kernel sowie solche auf Basis des Hauptentwicklungszweigs oder Linux-Next.

Das OSADL hat einen Artikel veröffentlicht, der einige Tipps zum Verbessern der Echtzeit-Eigenschaften von RT-Kerneln enthält.

Unterstützung für Grafikhardware

Gnome- und Mutter-Entwickler Owen Taylor liefert in einem Blog-Eintrag Informationen und Messergebnisse zum Einfluss verschiedener Compositor auf die Grafikperformance im Desktop-Alltag. Motiviert dazu wurde er durch einen Test von Phoronix, in dem die Gnome-Shell nicht sonderlich gut abgeschnitten hat. Daran, so Taylor, sei der Fenstermanager und Compositor Mutter schuld, der eine im Vollbild laufende 3D-Anwendung nicht in Ruhe lässt, weil er keinen "unredirect support" bietet. Es gibt aber Patches, die dieses Feature nachrüsten.

Alex Deucher hat die X.org-Wiki-Seite zu dem von ihm mitentwickelten Radeon-Treiber um einen Hinweis zu "Hybrid Graphics" erweitert. Demnach funktioniert die Umschaltung zwischen Chipsatz-Grafik und separatem Grafikchip mit vgaswitcheroo, sofern die Hardware einen Multiplexer (Mux) zum Umschalten zwischen den beiden Wegen zum Display-Ausgang verwendet.

Adam Jackson hat in Tweets und Diskussionsbeiträgen Verbesserungen an Mesa 3D angedeutet, durch die die auf 3D-Unterstützung angewiesene Gnome Shell von Gnome 3 ausreichend auch dann schnell arbeiten soll, wenn die 3D-Berechnungen nicht durch einen Grafikchip, sondern durch den Hauptprozessor erfolgen ("Software Rendering").

Mesa 3D 7.1 soll am 22. Juli erscheinen.

Intel-Entwickler Chris Wilson hat den X.org-Treiber für Notebook- und Desktop-Hardware von Intel um ein "sna" (SandyBridge's New Acceleration) genanntes Beschleunigungs-Framework erweitert. Der Commit-Kommentar des weiter verbesserten und korrigierten Codes enthält einige Messergebnisse mit Desktop-Anwendungen wie Firefox, xfce4-terminal und gnome-terminal; die meisten Benchmarks sind schneller geworden, mache sogar um ein Mehrfaches. Das Framework ist auf den Grafikkern der Sandy-Bridge-Prozessoren abgestimmt, die Intel Anfang des Jahres eingeführt hat; er deutet aber an, dass auch ältere Intel-Chips davon profitieren könnten.

Nvidia hat die Version 275.09.07 (x86-32, x86-64) seiner proprietären Grafiktreiber freigeben. Sie bringen unter anderem Unterstützung für die GeForce-Modelle 315M, 320M, 410M, GT 545, GTX 560 und GTX 560M sowie die Open-GL-Erweiterung GL_EXT_x11_sync_object extension. Die neue Version korrigiert zudem Probleme beim Zusammenspiel mit Gnome 3 und KDE 4.

Kernel-Umland ("Plumbing layer"), Userland-Treiber, Entwicklertools, ...

Die Smartmontools sind seit kurzem in Version 5.41 erhältlich. Das Werkzeug zur Analyse des Gesundheitszustands von ATA-Datenträgern mit SMART (Self-Monitoring, Analysis and Reporting Technology) erhielt mit der neuen Version unter anderem eine erweiterte Gerätedatenbank sowie Unterstützung für Festplatten, die mit 4 KByte großen Sektoren arbeiten.

WLAN-Entwickler Luis R. Rodriguez hat acs präsentiert – ein als "proof of concept" eingestuftes Programm, das den "idealen" WLAN-Kanal zu finden verspricht.

OpenSuse-Entwickler Frédéric Crozat beschreibt in seinem Blog einige der nächsten Schritte zudem Umstieg auf Systemd, der für OpenSuse 12.1 geplant ist. Einige Hintergründe zur Arbeitsweise und dem Praxiseinsatz von Systemd liefern zwei Artikel in der aktuellen, noch bis zum Wochende am Kiosk erhältlichen c't 13/11, die von den Systemd-Hauptentwicklern Lennart Poettering und Kay Sievers stammen.

Anlässlich des "World IPv6 Day" hat Kernel.org-Admin John 'Warthog9' Hawley IPv6-Unterstützung bei einigen Kernel.org-Diensten aktiviert.

Die Programmseite zur Linux Audio Conference (LAC) 2011 verweist auf Videoaufzeichnungen, Präsentationsfolien und Textfassungen vieler Konferenzvorträge; darunter etwa "Configuring your system for low-latency real-time audio processing" von Jeremy Jongepie.

Quelle und Links : http://www.heise.de/open/artikel/Kernel-Log-Llano-Unterstuetzung-Union-Dateisysteme-1260191.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log – Was 3.0 bringt (2): Dateisysteme
« Antwort #202 am: 22 Juni, 2011, 19:30 »
Die Kernel-Hacker haben den Btrfs-Code optimiert und um neue Funktionen erweitert; ein deutlich verbessertes Werkzeug zum Prüfen des experimentellen Dateisystems soll bald erscheinen. Ext4 beherrscht jetzt die "punch hole" genannte Technik, um ungenutzten Speicherplatz mitten in einer Datei wieder freizugeben.

Auch in dieser Woche hat Linus Torvalds in der Nacht von Montag auf Dienstag eine neue Vorabversion von Linux 3.0 freigegeben. In der Freigabemail zum mittlerweile vierten RC erwähnt er einige etwas umfangreichere Änderungen am DRM-Subsystem; darunter Patches, welche die zwischen RC2 und RC3 eingeflossene Unterstützung für den Grafikkern in AMDs kürzlich vorgestelltem Llano verbessern.

Das Kernel-Log nimmt die fortschreitende Entwicklung von Linux 3.0 zum Anlass, die Mini-Serie "Was 3.0 bringt" mit der Beschreibung der Neuerungen rund um Dateisysteme fortzusetzen. Den Anfang dieser Artikel-Reihe hatte eine Übersicht der Änderungen an Netzwerk-Treibern und -Infrastruktur gemacht; in den kommenden Wochen werden Artikel zur Grafik-Treibern, Architektur-Code, Storage-Unterstützung, Infrastruktur und Treibern für andere Hardware folgen.

Btrfs

Einen ganzen Schwung von Änderungen gab es am weiterhin experimentellen Btrfs-Dateisystem; der bei Oracle beschäftigte Hauptentwickler Chris Mason bezeichnete sie in seinem Git-Pull-Request als die vermutlich umfangreichsten, die er je eingesandt hat. Zwischen RC1 und RC2 legt er sogar nochmal einige umfangreichere Änderungen nach – Torvalds kritisierte Letzteres jedoch scharf und forderte die Btrfs-Entwickler auf, solch große Änderungen nicht wieder nach Ende des Merge Window einzusenden.

In diesen und früheren Git-Pull-Request zeigt sich auch deutlich, wie viele verschiedene Firmen mittlerweile zu Btrfs beitragen. Fujitsu-Entwickler Miao Xie hat etwa die neue "Delayed Inode Items Operation" eingebracht; laut Messungen des Entwicklers beschleunigt die Technik das Erstellen von Dateien um zirka 15 Prozent, das Löschen um 20 Prozent.

Von Arne Jansen stammt die Scrub-Unterstützung; hier liegt das Copyright bei Strato. Über diesen Code kann der Anwender den Kernel anweisen, alle Daten vom Speichermedium zu lesen und dabei die Checksummen zu prüfen, um sicherzustellen, dass alle Daten intakt sind; findet es Fehler, dann versucht das Dateisystem eine intakte Kopie des Blocks einzubinden, wenn es eine finden kann.

Den Code zum Verwalten von Inodes haben die Entwickler überarbeitet, damit die Inode-Nummern auf 32-Bit-Systemen nach Löschen und Anlegen vieler Dateien nicht ausgehen; in dem Rahmen erhielt das Dateisystem einen Cache für freie Inode-Nummern, der aber fürs erste über eine Mount-Option eingeschaltet werden muss, weil er noch Probleme bereitet. Diese Verbesserungen hat Fujitsu-Entwickler Li Zefan vorangetrieben.

Da Btrfs mit Copy on Write (COW) arbeitet, fragmentiert es bei bestimmten Zugriffsmustern schnell. Über die neue Mount-Option "auto_defrag" kann man das Dateisystem nun anweisen, auf kleine und zufällige Schreiboperationen ("small random writes") in existierenden Dateien zu achten, um solche Dateien zur automatischen Defragmentierung vorzumerken. Das ist laut Commit-Kommentar und Git-Pull-Request gut für kleine Datenbanken wie jene von Sqlite oder die BerkeleyDB geeignet, nicht aber für größere Datenbanken oder die Festplattenabbilder von Virtualisierungslösungen.

Diese Änderung stammt von Mason selbst. In einem der Git-Pull-Requests hebt er außerdem noch einige Performance-Optimierungen hervor, die Red-Hat-Entwickler Josef Bacik eingebracht hat; zudem habe Suse-Entwickler Dave Sterba zahlreiche Aufräumarbeiten vorgenommen.

In einer Diskussion um den Einsatz von Btrfs als Standard-Dateisystem bei Fedora 16 erwähnte Bacik kürzlich, ein besseres Werkzeug zum Checken und Reparieren von Btrfs-Dateisystem sei "so gut wie fertig"; die Freigabe des seit Monaten vorbereiteten Werkzeugs verzögere sich aber, weil es sehr ausführlich getestet werde. Das derzeit verfügbare btrfsck/fsck.btrfs bietet nur einige Basis-Funktionen.

Staccato: Dateisysteme

    Ext4 unterstützt nun die "punch hole" genannte und via Fallocate nutzbare Funktion, über die Programme dem Dateisystem mitteilen können, wenn Bereiche innerhalb einer Datei keine Daten enthalten. Das kann etwa für Virtualisierungsprogramme interessant sein, damit das Dateisystem nicht mehr genutzte Speicherbereiche von Festplatten-Images wieder freigeben kann, die als Sparse-Dateien vorliegen. OCFS2 und XFS könne das seit Linux 2.6.38.
    Tmpfs bietet jetzt auch eine Basis-Unterstützung für Erweiterte Attribute (EAs/Extended attributes/xattr). Ein Red-Hat-Entwickler hat diese Änderung programmiert, um auf temporären Dateisystemen RPM-Pakete bauen zu können, die File Capabilities verwenden.
    Das XFS-Dateisystem unterstützt nun auch Online Discard, um den jeweiligen Datenträger direkt beim Löschen von Dateien über freigewordene Speicherbereiche zu Informieren – das ist für SSDs und Netzwerkspeicher mit Thin Provisioning interessant. Im "XFS status update for May 2011" hebt Christoph Hellwig zudem noch ein erheblich verbessertes Busy Extent Tracking hervor (1, 2).
    Der NFS-Client-Code enthält nun einen pNFS Objects Layout Treiber für das in RFC5664 beschriebene NFSv4.1 pNFS Target (u. a. 1).

Die kleinen Perlen

Viele kleinere, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den "offiziellen" Kernel-Quellen auf Kernel.org. Der über diese Links angezeigten Commit-Kommentar und der darunter ausgegebene Patch liefern zahlreiche weitere Informationen zur jeweiligen Änderungen.

Vor jedem Link finden sich in eckigen Klammern einige Buchstaben und Zahlen. Ein "C" kennzeichnet Patches mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten, die bei der Kernel-Konfiguration über "make menuconfig" oder "make xconfig" angezeigt werden. Ein "D" steht bei Patches, die die Dokumentation verändern, die im Kernel-Zweig unterhalb von Documentation/ liegt. Ein "N" weist Änderungen aus, die eine neue Datei anlegen. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: eine "1" kennzeichnet Änderungen, die inklusive Kommentar zwischen 10 und 20 KByte groß sind, eine "2" für solche, die zwischen 20 und 30 KByte Umfang haben; Änderungen ohne Zahl sind kleiner als 10 KByte, Patches mit einer "9" hingegen 90 KByte oder größer.

Btrfs

    [    ] btrfs: add cleancache support
    [    ] btrfs: add readonly flag
    [   1] Btrfs: kill BTRFS_I(inode)->block_group
    [   3] Btrfs: kill trans_mutex
    [   4] Btrfs: Make free space cache code generic
    [   1] Btrfs: Make the code for reading/writing free space cache generic
    [   1] btrfs: quasi-round-robin for chunk allocation
    [    ] btrfs: remove 64bit alignment padding to allow extent_buffer to fit into one fewer cacheline
    [    ] btrfs: Remove unused sysfs code
    [   1] Btrfs: Support reading/writing on disk free ino cache

Ext Family

    [    ] ext4: add cleancache support
    [    ] ext4: add new function ext4_block_zero_page_range()
    [    ] ext4: add "punch hole" flag to ext4_map_blocks()
    [  N1] ext4: add support for multiple mount protection
    [    ] ext4: check for ext[23] file system features when mounting as ext[23]
    [    ] ext4: don't show mount options in /proc/mounts if there is no journal
    [ D  ] ext4: remove obsolete mount options from ext4's documentation

Various

    [C   ] 9p: remove experimental tag from tested configurations
    [ D  ] 9p: update Documentation pointers
    [    ] Cache xattr security drop check for write v2
    [    ] cifs: add cifs_async_writev
    [    ] cifs: Add idmap key and related data structures and functions (try #17 repost)
    [   1] CIFS: Add rwpidforward mount option
    [    ] cifs: Add support for mounting Windows 2008 DFS shares
    [    ] CIFS: Allow to set extended attribute cifs_acl (try #2)
    [C   ] cifs: cleanup: Rename and remove config flags
    [   1] cifs: Invoke id mapping functions (try #17 repost)
    [    ] [CIFS] update cifs version to 1.73
    [C  1] CIFS: Use ecb des kernel crypto APIs instead of
    [C   ] exportfs: reallow building as a module
    [ D 1] fs: pass exact type of data dirties to ->dirty_inode
    [    ] GFS2: Add an AIL writeback tracepoint
    [    ] GFS2: Improve tracing support (adds two flags)
    [    ] Introduce smb2 mounts as vers=2
    [    ] mm/fs: add hooks to support cleancache
    [    ] nilfs2: add routine to move secondary super block
    [    ] nilfs2: implement resize ioctl
    [   1] Ocfs2: Add a new code 'OCFS2_INFO_FREEFRAG' for o2info ioctl.
    [    ] ocfs2: Add FITRIM ioctl.
    [    ] ocfs2: Add ocfs2_trim_fs for SSD trim support.
    [    ] ocfs2: Add trace event for trim.
    [ D  ] ocfs2: clean up mount option about atime in ocfs2.txt
    [ D  ] ocfs2: remove the /sys/o2cb symlink
    [    ] pnfs: client stats
    [  N1] pnfs-obj: pnfs_osd XDR client implementation
    [   1] SUNRPC: Support for RPC over AF_LOCAL transports
    [    ] svcrpc: take advantage of tcp autotuning
    [    ] UBIFS: introduce a "grouped" journal head flag
    [ D 1] UBIFS: switch to dynamic printks

Quelle und Links: http://www.heise.de/open/artikel/Kernel-Log-Was-3-0-bringt-2-Dateisysteme-1263114.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log: Höherer Stromverbrauch durch BIOS-Bugs
« Antwort #203 am: 28 Juni, 2011, 17:49 »
Kernel seit 2.6.38 verbrauchen mehr Strom, weil sie in bestimmten Situationen eine PCI-Express-Stromspartechnik deaktivieren. Neue Stable- und Longterm-Kernel bringen Korrekturen; einer hängt aber auffällig hinterher.

Im April hatte die Webseite Phoronix darüber berichtet, einige Systeme würden mit den Linux-Versionen 2.6.35 und 2.6.38 mehr Leistung aufnehmen als mit den jeweiligen Vorgängern. In Test will Phoronix jetzt die Ursache für den mit 2.6.38 steigenden Stromverbrauch gefunden haben.

Schuld sei die in 2.6.38 integrierte Änderung "PCI: Disable ASPM if BIOS asks us to". Sie soll laut Commit-Kommentar Probleme bei Systemen beseitigen, bei denen das BIOS die PCI-Express-Stromspartechnik ASPM (Active State Power Management) bei manchen PCIe-Chips aktiviert, in seiner von Linux konsultierten FADT (Fixed ACPI Description Table) jedoch erklärt, die ASPM nicht zu unterstützen. Durch die Änderung beachtet der Kernel die Angabe in den ACPI-Tabellen und versucht die Stromspartechnik bei allen PCIe-Geräten zu deaktivieren, sofern es das BIOS denn erlaubt.

Offensichtlich gibt es jedoch viele Systeme, bei denen das BIOS über die FADT falsche Informationen zur ASPM-Unterstützung liefert. Bei vielen von ihnen sind ab Kernel 2.6.38 daher alle PCIe-Lanes zur Kommunikation mit PCIe-Chips dauerhaft voll aktiv, was zu der höheren Leistungsaufnahme führt, die Phoronix und eine Reihe von Anwendern beobachteten. Über den Kernel-Parameter "pcie_aspm=force" kann man den Kernel anweisen, ASPM zwangsweise zu aktivieren. Das kann aber zu Systemabstürzen führen, wie etwa Red Hat in der RHEL-6-Dokumentation erläutert. Auf einem Thinkpad-Notebook von Phoronix sank die Leistungsaufnahme durch das Einschalten von ASPM von 24,8 auf 21,6 Watt und damit auf das Niveau beim Betrieb mit Kernel 2.6.37.

Windows scheint solche Situationen anders zu handhaben – es ist unklar, ob es anderswo nach Informationen zur ASPM-Unterstützung schaut oder ASPM einfach nutzt, sofern das BIOS die Kontrolle freigibt. Letztendlich deutet vieles auf eine Problematik hin, die den Reboot- und UEFI-Problemen von Linux ähnelt, denen jüngst etwas Aufmerksamkeit zugekommen ist (1, 2): Linux spricht die Hardware anders an als Windows, wodurch Linux ungetestete Pfade betritt und Probleme auftreten, weil die Hardware-Hersteller meist nur mit Windows getestet haben. Da hilft es auch nichts, das Linux die Dinge teilweise sogar korrekter angeht als Windows: Recht spezifikationskonformes Arbeiten gepaart mit unsauberen ACPI-Tabellen in den Notebook-BIOSen war schon eine der Ursachen für viele der ACPI-Probleme, die Linux-Anwender vor Jahren häufig plagten. Besser wurde es, seit sich der ACPI-Interpreter von Linux mehr wie der von Windows verhält und auch die selben Fehler macht ("Bug compatibility").

Wie die Kernel-Hacker das Problem angehen, dürften die nächsten Tage und Wochen zeigen; vermutlich wird frühestens Linux 3.1 eine Korrektur enthalten, damit ASPM wieder bei mehr Systemen aktiv ist. Phoronix ist zudem noch auf der Suche nach der Änderung, die ab Linux-Kernel 2.6.35 zu einer höheren Leistungsaufnahme führt.

Kernel-Versionsstatus

Greg Kroah-Hartman hat den Stable-Kernel 2.6.39.2 sowie die Longterm-Kernel 2.6.32.42 und 2.6.33.15 veröffentlicht. Die Freigabe-Mails zu den beiden erstgenannten Versionen enthalten den üblichen Hinweis, der nachdrücklich zum Update auffordert, ohne klar zustellen, ob auch Sicherheitslücken beseitigt wurden.

Paul Gortmaker hat wenig später den Longterm-Kernel 2.6.34.10 freigegeben, der über 240 Änderungen bringt. Anders als Greg Kroah-Hartman erwähnt er in der Freigabe-Mail die Korrektur von Sicherheitslücken. Zwischen 2.6.34.9 und 2.6.34.10 vergingen aber über zehn Wochen, in denen Kroah-Hartman vier neue Longterm-Kernel der 32er-Serie veröffentlicht hat. Es ist recht wahrscheinlich, dass diese 32er-Versionen bereits einige Sicherheitslücken korrigiert haben, die in der 34er-Serie erst jetzt beseitigt wurden.

Kernel-Log-Staccato

Kernel

Einige der wichtigsten Entwickler des Netzwerk-Subsystems haben sich kürzlich zur "Netconf 2011" getroffen. Über die Programm-Seite finden sich einige der dort gezeigten Präsentationsfolien; Ben Hutchings hat die aus seiner Sicht wichtigsten Punkte der Vorträge und Diskussionen in einer Mail zusammengefasst.

Anlässlich des bald anstehenden 20. Geburtstag von Linux hat Linux.com eine Galerie mit Bildern von Linus Torvalds veröffentlicht; einige von ihnen stammen aus den Anfangstagen von Linux.

Dateisystem-Experte Eric Sandeen hat in einem Blog-Eintrag die Größenänderungen am Dateisystemcode von Btrfs, Ext4 und XFS analysiert. XFS sei das einzige, dessen Codeumfang schrumpft, dabei habe es in letzter Zeit einige Verbesserungen an dem Dateisystem gegeben, dessen Code größer ist als der von Btrfs und Ext4.

Unterstützung für Grafikhardware

Der in Linux-Next enthaltene Entwicklerzweig DRM-Next enthält seit einigen Tagen eine Firmware (u. a. 1) für GeForce-Grafikchips der Fermi-Generation. Sie dürfte in Linux 3.1 einziehen und macht die Beschleunigungsfunktionen der GeForce-Modellreihen 400 und 500 nutzbar; anfangs gelang das nur mit der Firmware der proprietären Nvidia-Treiber.

Die bisher "Xorg hosted mode" (kurz: "hosted") genannte Unterstützung zum Betrieb von X als Wayland Client heißt nun xwayland. Der die Umbenennung vorantreibende Entwickler hat zudem einen einen "xf86-video-wlshm" ("wayland shared memory") genannten und als "fake" eingestuften Grafiktreiber geschrieben, um diese bislang auf Intel-Grafikchips angewiesene Betriebsart einfacher testen zu können.

Der neuste Eintrag des Blogs "The Irregular Radeon Development Companion" beschäftigt sich mit der Einrichtung eines Systemd-Unit, welche die Stromsparunterstützung des KMS-Radeon-Treibers aktiviert.

Bereits Mitte des Monats und kurz nach dem letzten regulären Kernel-Log hat AMD die Version 11.6 seiner proprietären und als Catalyst oder Fglrx bekannten Grafiktreiber für Linux freigegeben. Die Release Notes liefern einige Hinweise zur Installation – Informationen zu den Neuerungen dieser Version fehlen allerdings.

Kernel-Umland ("Plumbing layer"), Userland-Treiber, Entwicklertools, ...


Lucas Meneghel Rodrigues hat Version 0.13.0 des Autotest-Frameworks veröffentlicht, dass sich unter anderem zum automatischen Testen von Kerneln eignet.

Mit der Version 003 der Usbutils funktioniert nun auch die Kompression der Datendatei.

James Hunt hat Upstart 1.3 freigegeben, das einige der bereits bei Ubuntu 11.04 integrierten Funktionen bringt.

LKML-Diskussionen

Stefan Assmann hat überarbeitete "Badram"-Patches zur Diskussion gestellt. Damit ausgestatteten Kerneln kann man bekanntermaßen kaputte Bereiche des Arbeitsspeichers über Kernel-Parameter mitteilen, damit die Kernel sie nicht nutzen. Google-Mitarbeiter Andrew Morton verglich diese mit einer umfassendere Lösung, die Google einsetzt – die wurde aber noch nicht zur Integration an den Kernel aufbereitet, was aber auf der ToDo-List sei.

Jonas Bonn arbeitet darauf hin, Unterstützung für die OpenRISC-1000-Architektur in den Kernel zu integrieren – einer im Rahmen von Opencores.org entwickelten Open-Source-Prozessorarchitektur mit RISC-Kernen.

In der Freigabe-Mail zur zweiten Version des "Native Linux KVM Tool" hat dessen Hauptentwickler Pekka Enberg einige Benchmark-Ergebnisse erwähnt, laut denen die Qemu-KVM-Alternative beim Lesen und Schreiben von QCOW2-Images schneller arbeitete als Qemu-Kvm. In einem LWN.net-Kommentar sagte Enberg, man sollte den Ergebnissen nicht zu viel Bedeutung beimessen. Später stellte sich dann raus, dass ein Fehler im Messaufbau am schlechten Abschneiden von Qemu-Kvm schuld war.

Theodore 'tytso' Ts'o beginnt mit den konkreten Planungen für den Kernel Summit 2011, der im Oktober in Prag stattfinden soll.

Quelle und Links : http://www.heise.de/open/artikel/Kernel-Log-Hoeherer-Stromverbrauch-durch-BIOS-Bugs-1268394.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline spoke1

  • Alle angenehmen Dinge des Lebens sind entweder illegal, unmoralisch, teuer oder machen dick!
  • Premium-Cubie
  • ****
  • Beiträge: 2718
  • kaffeine Fan
    • skynetR32 Mod HP
Linus Torvalds"Das größte Problem waren die Hardware-Hersteller"
« Antwort #204 am: 28 Juni, 2011, 21:22 »
Der Linux-Erfinder Linus Torvalds hat sich in einem Interview zu den größten Problemen der letzten zwanzig Jahre geäußert. Ihn habe immer verärgert, dass wenige Hardwarehersteller Hilfe bei der Treiberentwicklung angeboten haben.
Auf eine Frage aus dem Publikum, bei einer Podiumsdiskussion auf der Linuxcon 2011 in Japan, beschreibt Torvalds die mangelnde Unterstützung durch einige Hardwarehersteller als größtes Problem der Linux-Entwickler. Es habe die Programmierung von Treibern erheblich behindert. Das habe ihn oft sehr verärgert.

Mitgefühl für Anwender
Vor allem für die Anwender habe es ihm Leid getan, wenn die Linux-Entwickler ihnen sagen mussten, dass es keine Unterstützung für bestimmte Hardware-Geräte gebe, auch wenn die Geräte äußerst populär gewesen seien. Das habe sich in den letzten Jahren allerdings gebessert, sagte Torvalds. Inzwischen hätten die Hersteller erkannt, dass es ihnen selbst schade, wenn sie Linux nicht unterstützen.

Das zweite große Problem sei die Verwaltung eines großen Projekts mit tausenden Entwicklern aus hunderten von Firmen, die alle eine andere Vorstellung davon hätten, wohin das Projekt gehen sollte. Es sei vor allem dann schwierig gewesen, wenn die Kernel-Hacker sich über die Art und Weise beschwerten, wie der Kernel entwickelt wurde oder wenn jemand enttäuscht war, als sein Patch nicht angenommen wurde, der eines anderen Hackers jedoch schon.

Schlafraubende Diskussionen

Wenn es etwas gäbe, was ihm den Schlaf raube, dann die Politik und die Menschen hinter der Kernel-Entwicklung. Normalerweise werden Probleme gelöst, sagte Torvalds und das freue ihn. Aber einige Diskussionen hätten sich über mehrere Monate oder gar Jahre erstreckt und habe auch ihn zu unflätigen Bemerkungen in Beiträgen in Mailinglisten gebracht.

Große technische Probleme habe es in den letzten zwanzig Jahren nur wenige gegeben, so Torvalds. Alle Probleme haben die Entwickler sofort lösen oder rückgängig machen können.

Gepflegte Streitkultur

Der oft heftige Streit zwischen den Entwicklern auf der Kernel-Mailingliste sei berüchtigt, sagte der Interviewer Greg Kroah-Hartman. Sie werden in Firmen mit der gleiche Heftigkeit geführt. Dort fänden solche Diskussionen aber hinter verschlossenen Türen statt, während die Kernel-Entwickler sie in aller Öffentlichkeit führen.

Zu den Änderungen der Versionsnummer des Linux-Kernels auf 3.0 sagte Torvalds, dass es einfach an der Zeit war. Gerade sein Interviewpartner Kroah-Hartman habe erhebliche Probleme mit der bisherigen Nummerierung gehabt. Er habe seine Kernel-Updates mit vierstelligen Versionsnummern veröffentlichen müssen. Kroah-Hartman hielt dann auch sein vor Jahren gemachtes Versprechen ein und überreichte Torvalds eine Flasche Whiskey. Er hatte Torvalds die Flasche versprochen, sobald die Nummerierung vereinfacht werden würde.

Zukunftsweisende Kernelfunktionen

Zu den spannendsten Änderungen am Kernel in den letzten Monaten gehören für Torvalds die zugleich "langweiligsten" Funktionen, also jene, die die Anwender kaum wahrnehmen. Darunter ist die Namenssuche von Dateipfaden (RCU-based name lookup) in Kernel 2.6.38 gewesen, die ohne Sperren für einen Geschwindigkeitszuwachs von 30 bis 50 Prozent sorgen soll.

Manche Funktionen haben die Kernel-Entwickler bereits eingebaut, bevor sie überhaupt als relevant erachtet wurden, so Torvalds. Die Unterstützung für symmetrische Multiprozessorsysteme habe 1996 für Diskussionen unter Entwicklern und den Versionssprung von 1.x auf 2.x gesorgt, denn damals konnte sich kaum jemand vorstellen, dass normale Systeme mehr als einen Prozessor verwenden würden.

Linux-Weltherrschaft ist kein Witz mehr

Zu der Desktop-Problematik sagte Torvalds, dieser Markt sei schwer umkämpft und er sähe es gern, wenn Linux auf dem Desktop mehr Erfolg hätte. Die Anwendungen dafür gäbe es ja bereits. Er wüsste aber auch nicht, was die Kernel-Entwickler beitragen könnten, um den Linux-Desktop zu verbreiten.

Den Witz, Linux solle die Weltherrschaft übernehmen, mache er schon lange nicht mehr. Er sei dann komisch gewesen, als es unmöglich erschien, das Linux über eine kleine Fan-Gemeinde heraus populär werden würde. Heute sei der Witz eher zur ernsten Realität geworden.



Quelle: www.golem.de
Produktiv:
ASRock K8S8X, Athlon64 3000+, 1GB Infineon Ram, WinFast A340 8X AGP, Samsung HD160 GB SATA2,
Technisat SkyStar 2, Stab HH100 Rotor und 5° & 19,2° Ost fest
BS: Mandriva-Linux (mdv) 2010.2 PP, kde 3.5.12, kaffeine 0.8.8, skynetR32

Bastelsrechner:
ASRock N570 SLI, Athlon64 X2 6000+ 4GB Geil Ram, EVGA GeForce G 210 Passiv (1GB DDR3, VGA, DVI, HDMI), Samsung HD 500GB SATA2, TT-budget S2-3200 PCI
BS: immer nur Pinguin freundliche

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Torvalds: Userspace-Dateisysteme sind Spielzeuge
« Antwort #205 am: 30 Juni, 2011, 12:24 »
In einer Diskussion um die Aufnahme eines neuen Dateisystemtreibers in den Kernel bezog der Linux-Erfinder Linus Torvalds Stellung und bezeichnete die im Userspace arbeitende Dateisysteme als Spielzeuge, die zwar funktionieren, aber nie eine zufriedenstellende Geschwindigkeit erreichen werden.

Fuse (Filesystem in Userspace) stellt eine Erweiterung für den Kernel dar, die es ermöglicht, Dateisystemtreiber vom Kernel in Anwenderprozesse (Userland) zu verlagern. Aufgrund der Vereinfachung durch den User-Modus sind in deshalb der Vergangenheit eine Vielzahl von Treibern entstanden. Bindungen für zahlreiche Programmiersprachen ermöglichen einen relativ einfachen Zugriff auf die Funktionalität von Fuse. Der Treiber ist ein fester Bestandteil des Linux-Kernels seit Version 2.6.16 und steht auch für diverse Systeme außerhalb der Linux-Welt zur Verfügung.

Laut Aussage von Linux Torvalds funktioniert die Erweiterung allerdings eher zufriedenstellend als gut. Mit der Aussage, dass Leute, die denken, dass Userspace Dateisysteme eine Lösung für irgend etwas anderes als Spielzeuge sind, hat Torvalds die grundsätzliche Marschrichtung mancher Kernel-Entwickler in Frage gestellt. Denn bereits seit geraumer Zeit propagieren verschiedene Entwickler die Lösung, dass neue Dateisysteme nicht mehr im Kernel, sondern als Userland-Applikation erstellt werden sollen.

Wie Torvalds nun schreibt, funktionieren Fuse und damit auch Dateisysteme im Userland nur dann gut, wenn sie langsame Medien ansprechen müssen. Sofern es aber auf Geschwindigkeit ankommt, wie es beispielsweise bei einem Root-Dateisystem der Fall ist, sind sie komplett ungeeignet.

Grund für die Diskussion stellt die Bitte von Miklos Szeredi, den Treiber für OverlayFS in die kommende Kernel-Version aufzunehmen. Von Andrew Morton darauf angesprochen, warum der Treiber nicht im Userspace realisiert wurde, antwortete Szeredi, dass eine solche Implementierung außerhalb des Kernels nie so effizient sein könne wie im Kernel. Morton wollte daraufhin das Argument gelten lassen, wenn sich die Behauptung auch belegen lasse.

Widerspruch erntete Torvalds umgehend von Greg Kroah-Hartman, der als Gegenbeweis Tuxeras NTFS-Fuse-Treiber anführt. Laut Kroah-Hartman ist der Fuse-Treiber (fast) genauso schnell wie der Kernel-Treiber. Dem widersprach allerdings Tuxera. Laut Aussage von Anton Altaparmakov sei der Kernel-Treiber erheblich schneller als der FUSE-Treiber. Dieselbe Behauptung stellt Tuxera auch auf der eigenen Seite auf. Der Entwickler ließ sich gar zu der Aussage hinreißen, dass der Treiber allen anderen getesteten Dateisystemen den Rang in Sachen Geschwindigkeit abläuft.

Wer in der Diskussion Recht hat, ist nicht wirklich zu klären. Der Vergleich von zwei verschiedenen Produkten könnte zwar einen groben Anhaltspunkt über die Geschwindigkeit geben, ist aber in der Praxis wenig praktikabel. Denn neue, unabhängige Benchmarks gibt es offenbar nicht. Zudem scheint es auch teils zu gravierenden Geschwindigkeitsunterschieden zwischen den zwei unter Linux verfügbaren NTFS-Treibern und dem Original unter Windows zu geben. Erschwerend kommt noch hinzu, dass auch laut Aussagen der Entwickler die meisten Userspace-Dateisysteme wirklich Spielzeuge sind und nicht wirklich Wert auf Geschwindigkeit legen.

Quelle : www.pro-linux.de

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Sechs Jahre später als ursprünglich erwartet enthält der Kernel nun alles Wichtige zum Betrieb als Xen Dom0. Bei Linux 3.0 gehen die Entwickler einige Probleme im ARM-, Reboot- und UEFI-Code an. Das Optimieren auf kleinen Code per Compiler-Schalter gibt Torvalds etwas enttäuscht auf.

In der Nacht von Montag auf Dienstag hat Linus Torvalds eine weitere Vorabversion von Linux 3.0 veröffentlicht. In der Freigabe-Mail zum RC6 hebt er die Aufnahme des Isci-Treibers (u. a. 1) für den SAS-Controller in Intels Server- und Workstation-Chipsatz C600 hervor, der in den kommenden Monaten erscheinen soll. Da der Treiber vergleichsweise groß ist, war sich Torvalds unsicher, ob er so spät im Entwicklungszyklus noch aufgenommen werden soll. Da der Treiber-Code aber für sich alleine stehe, könne er keine Fehler auslösen, die frühere Kernel nicht gezeigt haben.

Von dem Treiber abgesehen hat es vorwiegend kleine Korrekturen an verschiedenen Stellen gegeben. Torvalds deutete an, dem Punkt näher zu kommen, wo er über eine Freigabe von Linux 3.0 nachdenkt, weil es ziemlich ruhig und die Änderungen nicht sonderlich aufregend seien. Das Kernel-Log will daher seine Berichterstattung über die Neuerungen von Linux 3.0 mit einer Beschreibung der Änderungen rund um Architektur, Infrastruktur und Virtualisierung fortsetzen. In den nächsten Tagen folgt der vierte und letzte Teil der "Was 3.0 bringt"-Mini-Serie, der sich Treibern widmen wird; der erste Teil hatte sich mit Netzwerk-Treibern und -Infrastruktur beschäftigt, der zweite mit Dateisystemen.

Virtualisierung

Unter den für Linux 3.0 aufgenommenen Änderungen findet sich das Storage-Backend für Xen (u. a. 1, 2, 3). Damit enthält der Kernel nun endlich alle essentielle Komponenten, um als Dom0 mit dem Xen-Hypervisor zusammen Gastsysteme zu hosten. Und nicht nur das: Auch der Entwicklerzweig von Qemu enthält seit Mitte Mai alles nötige, um die Hardware für Xen-Gäste zu emulieren, die mit Hilfe der Virtualisierungsfunktionen moderner Prozessoren laufen (HVM/Hardware-assisted Virtualization).

Hintergründe zu diesen beiden lange vorbereiteten Änderungen finden sich in einigen Blog-Einträgen (1, 2, 3, 4, 5, 6). Bei dem in Kernel und Qemu integrierten Code handelt es sich allerdings um eine erheblich zusammengestrichene und überarbeitete Variante des Codes, den kommerzielle Xen-Produkte wie Citrix XenServer derzeit einsetzen. Der Funktionsumfang ist daher kleiner; es lassen sich beispielsweise keine USB-Geräte an Gäste durchreichen und Suspend-to-RAM funktioniert nicht. Die Xen-Entwickler haben daher noch einige Arbeit vor sich, aber die Aufnahme der Hauptkomponenten jetzt endlich geschafft, nachdem die schon 2005 schon zum Greifen nahe schien.

Die Verzögerung bei Xen hat sicher auch zum Erfolg des von KVM (Kernel-based Virtual Machine) beigetragen (siehe auch: Die Woche: Xen hat KVM vorbeiziehen lassen). Der Kernel-eigene Hypervisor unterstützt mit Linux 3.0 nun VIA-Prozessoren und die virtuelle Time Stamp Counter (TSC) Rate neuerer AMD-Prozessoren. Ferner wollen die Kernel-Hacker die Genauigkeit des Emulators und die Performance verbessert haben, wie aus dem Haupt-Git-Pull-Request von KVM-Betreuer Avi Kivity hervor geht. Ferner soll die "Event Index"-Unterstützung in den häufig mit KVM genutzten Virtualisierungsschnittstellen Virtio und Vhost den Overhead beim Datenaustausch zwischen Gast und Host reduzieren.

Architektur-Code

Neu ist auch Unterstützung für die Supervisor Mode Execution Protection (SMEP) kommender Intel-Prozessoren. Sie versucht zu verhindern, dass Ring-0-Treiber direkt Usermode-Code anspringen können; einige Hintergründe dazu erläutert Dan Rosenberg in einem Blog-Eintrag.

Der Kernel 3.0 wird erstmals die 64-bittige Tilera-Architektur (TILE-Gx) unterstützen – ein Multi-Core-Design der Prozessorfirma Tilera. Der Code für Power-Prozessoren spricht nun die CPUs der Familie PowerEN (Power Edge of Network) an, die auch unter ihrem Codenamen "Wirespeed Pro" (wsp) bekannt sind; einige weitere Power-Neuerungen finden sich im Haupt-Git-Pull-Request für den PPC-Code. Die SMP- und Highmem-Unterstützung für ARM gilt nicht mehr als experimentell (1, 2).

Problemfelder

Am ARM-Code gab es erste Aufräumarbeiten, nachdem Torvalds in den vergangenen Monaten die Code-Qualität und die Arbeitsweise der zuständigen Entwickler ziemlich deutlich kritisiert hatte. Ein Kritikpunk waren Dopplungen – im Code für verschiedene SOCs (System-on-a-chip) mit ARM-Kern fand sich teilweise ganz ähnlicher oder eng verwandter Code (etwa Treiber für Funktionseinheiten, die sich in mehreren SOCs finden), zwischen denen kein oder kaum Austausch erfolgte – dadurch traten an einer Stelle korrigierte Fehler an anderen weiter auf. Einige Hintergründe zu diesen und anderen Schwierigkeiten mit dem ARM-Code sowie den teilweise bereits angegangenen Arbeiten zum Beseitigen dieser Probleme liefern einige LWN.net-Artikel, Blog-Einträge und LKML-Diskussionen (1, 2, 3, 4, 5, 6, 7, 8 ). Ein Baustein zur Verbesserungen ist die in Linux 3.0 eingezogene Unterstützung für Device Trees bei der ARM-Architektur (u. a. 1, 2), was die Portierung auf neue Plattformen und die Wartung des ARM-Codes vereinfachen soll; weitere Verbesserungen in dieser Richtung soll Linux 3.1 bringen.

Einige Änderungen gab es am Code zum Neustarten von PCs; durch sie löst Linux den Reboot nun ähnlich wie neuere Windows-Versionen aus (u. a. 1). Das soll Neustart-Probleme auf einigen Rechnern beseitigen, darunter einige Apple-Systeme und Thinkpad-Notebooks.

Viel mehr Systeme dürften einige Verbesserungen und Fehlerkorrekturen an der Unterstützung des (Universial) Extensible Firmware Interface (U)EFI betreffen, das bei neueren Mainboards BIOS-Funktionen übernimmt (u. a. 1). UEFI ist für die Windows-Welt wichtig, weil die aktuellen Microsoft-Systeme auf UEFI angewiesen sind, um von Datenträgern mit mehr als 2 Terabyte Speicherplatz zu booten. Zur sauberen Parallelinstallation von Linux muss dieses daher auch UEFI nutzen, was bei aktuellen Distributionen aber mehr schlecht als recht der Fall ist. Das könnte mit den jetzt integrierten Kernel-Änderungen etwas besser werden; es gibt im (U)EFI-Umfeld aber noch mehr Probleme, die gelöst werden wollen. Hintergründe dazu finden sich über zwei Kernel-Logs, von denen eines auch auf die Reboot-Probleme näher eingeht (1, 2).

Optimierungen

Die Option CC_OPTIMIZE_FOR_SIZE wird nun nicht mehr standardmäßig eingeschaltet. Sie weist den Compiler an, den Code auf Größe zu Optimieren (-Os) – das kann die Performance in bestimmten Situationen verbessern, weil der Prozessor-Cache für Instruktionen effizienter genutzt wird. Das ganze klappt aber nicht ganz so gut wie ursprünglich erhofft, wie Torvalds im Commit-Kommentar zu der von ihm vorgenommenen Änderung etwas enttäuscht anmerkt.

An einigen Stellen des Kernels haben die Kernel-Hacker das Prefetching entfernt (u. a. 1, 2, 3); also das explizite Anfordern von Daten, kurz bevor diese genutzt werden. Das soll eigentlich die Performance verbessern, weil die Daten so vor der Nutzung in den CPU-Cache wandern. Es stellte sich allerdings heraus, dass manche modernen Prozessoren das in bestimmten Situationen selber so gut beherrschen, dass Prefetching durch den Kernel die Performance verschlechtert. Details hierzu liefert LWN.net im Artikel "The problem with prefetch".

Memory Management

Neu ist Cleancache (u. a. Core, FS, Btrfs, Ext3, Ext4): Bei Speicherknappheit kann der Kernel diesem Cache Speicherseiten übergeben, die verzichtbar sind, weil sich der Inhalt durch Nachladen vom Datenträger wieder beschaffen lässt. Da das allerdings langsam ist, versucht Clearcache die Daten im Speicher zu halten – etwa mit Hilfe des bei 2.6.39 integrierten Zcache, das als Cleancache-Backend fungiert und die Daten komprimiert. Beim Zusammenspiel mit dem Xen-Hypervisor kann Cleancache auch den Xen Transcendent Memory als Backend zum Ablegen von Daten nutzen. Der steht auch anderen Gästen zur Verfügung und kann doppelt gespeicherte Daten zusammenführen – das kann die Performance verbessern, wie eine im Commit-Kommentar verlinkte Präsentation erläutert. Weitere Hintergründe liefern die gute Cleancache-Dokumentation und der schon etwas ältere LWN.net-Artikel "Cleancache and Frontswap"

Zum Memory-Management-Code stießen die lange vorbereiteten Patches, die Peter Zijlstra unter dem Schlagwort "MM preemptibility" entwickelt hat und die die Funktion mmu_gather unterbrechbar machen, was Skalierbarkeit, Performance und Echtzeit-Eigenschaften verbessern kann (u. a. 1, 2, 3, 4, 5).

Staccato

Der unter anderem beim Ein- und Ausschalten von Tracepoints oder Dynamic Debugging involvierte Code für Jump Label wurde umgebaut, um den Overhead durch solche Label zu verringern und diese einfacher nutzen zu können – Details liefert LWN.net im Artikel "Jump label reworked".

Verschiedene Anwender können beim Einsatz des Function Tracers (Ftrace) nun jeweils unterschiedliche Funktionen filtern.

Der Perf-Probe-Code zum Suchen nach Funktionsnamen bietet nun einen Fastpath; der kann diese Aufgabe erheblich beschleunigen, wie Messergebnisse im Commit-Kommentar zeigen.

Eine schon in einige Stable-Kernel eingezogene Änderung am Cpufreq-Code beseitigt einen Fehler, der auf manchen Systemen zu einer leicht höheren Leistungsaufnahme geführt hat.

Der Intel-IOMMU-Treiber unterstützt jetzt auch Super Pages mit Größen wie 2 MiB oder 1 GiB.

Sysfs legt für SELinux jetzt den Pfad /sys/fs/selinux/ an, der langfristig den bisher für SELinux genutzten Mount-Punkt /selinux/ ersetzen soll.

Durch einige Änderungen am Capabilites-Framework kann dieses nun Usermode-Helfern bestimmte Funktionen untersagen – etwa damit Anwender über die Capability CAP_NET_ADMIN keine Kernel-Module mehr laden können.

Der Kernel bietet nun eine Reihe von mit "kstrtol_" beginnende Funktionen, um von Userland angelieferte Strings in Zahlenwerte zu verwandeln; die neue Funktion "strtobool" verwandelt Zeichenketten aus dem Userland in Boolean-Werte.

Über den neuen Kbuild-Parameter "W=" lässt sich vorgeben, welche Art von Compiler-Warnungen beim Übersetzen ausgegeben werden. Es gibt drei Stufen; um alle zu aktivieren, muss man "W=123" angeben, was zu rund 90.000 Warnungen führen soll.

Der Kernel bietet nun "Alarm-Timers". Ähnlich wie Hrtimers stoßen sie zu einem bestimmten Zeitpunkt eine Aufgabe an; die Alarm-Timer sorgen aber zusätzlich dafür, dass das System nötigenfalls auch dem Bereitschaftsmodus aufwacht. Aus dem Userspace lassen sie sich über das POSIX-Time-Interface nutzen. Die Android-Entwickler hatten eine ähnliche, Android Alarm Driver genannte Lösung mit einem anderen Userspace-Interface schon vor längerer Zeit entwickelt, damit beispielsweise Smartphones aus dem Suspend aufwachen, um an Termine zu erinnern. Einige Hintergründe zum Konzept liefert der Hauptautor der Alarm-Timers in einem LWN.net-Artikel.

TREE_PREEMPT_RCU – eine von mehreren Kernel-Varianten für RCU (Read-copy-update), das den Datenzugriff auf Multi-Processor-Systemen synchronisiert – beherrscht jetzt das für den Echtzeiteinsatz wichtige Priority Boosting. Die Nutzung von RCU wurde weiter ausgebaut – auch die POSIX-Timer nutzen sie, wodurch laut Commit-Kommentar ein Micro-Benchmark erheblich flotter arbeitet. Der RCU-Code wurde zudem an vielen Stellen optimiert (siehe "Die kleinen Perlen"); eine der Änderungen führte zu einer größere Performance-Einbuße in einem Test, welche die Kernel-Hacker aber zum RC4 wieder aus der Welt geschafft haben.

Einige Änderungen am Module-Loader (u. a. 1, 2, 3, 4) sollen das Laden von Modulen ein wenig beschleunigen.

Die Dokumentation weist darauf hin, dass der Kernel alle Meldungen mit Zeitstempeln versieht, wenn man den Parameter "printk.time=1" übergibt.

Die kleinen Perlen: Infrastruktur

Viele kleinere, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den "offiziellen" Kernel-Quellen auf Kernel.org. Der über diese Links angezeigte Commit-Kommentar und der darunter ausgegebene Patch liefern nähere Informationen zur jeweiligen Änderungen.

Vor jedem Link finden sich in eckigen Klammern einige Buchstaben und Zahlen. Ein "C" kennzeichnet Patches mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten, die bei der Kernel-Konfiguration über "make menuconfig" oder "make xconfig" angezeigt werden. Ein "D" steht bei Patches, die die Dokumentation verändern, die im Kernel-Zweig unterhalb von Documentation/ liegt. Ein "N" weist Änderungen aus, die eine neue Datei anlegen. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: eine "1" kennzeichnet Änderungen, die inklusive Kommentar zwischen 10 und 20 KByte groß sind, eine "2" für solche, die zwischen 20 und 30 KByte Umfang haben; Änderungen ohne Zahl sind kleiner als 10 KByte, Patches mit einer "9" hingegen 90 KByte oder größer.

ACPI

   [    ] ACPICA: Update to version 20110413
    [    ] ACPI: EC: add another DMI check for ASUS hardware
    [    ] ACPI EC: enable MSI workaround for Quanta laptops
    [CD  ] ACPI: Split out custom_method functionality into an own driver

Crypto & Security

   [    ] audit: acquire creds selectively to reduce atomic op overhead
    [C   ] crypto: aesni-intel - Merge with fpu.ko
    [    ] crypto: caam - add support for sha512 variants of existing AEAD algorithms
    [CDN9] crypto: caam - Add support for the Freescale SEC4/CAAM
    [ D 1] crypto: caam - de-CHIP-ify device tree compatibles
    [ D 1] crypto: caam - standardize device tree naming convention to utilize '-vX.Y'
    [    ] crypto: omap-sham - enable driver for EMU chips
    [    ] crypto: padlock - Add SHA-1/256 module for VIA Nano
    [C  1] crypto: s390 - add System z hardware support for CTR mode
    [C N ] crypto: s390 - add System z hardware support for GHASH
    [C  1] crypto: s390 - add System z hardware support for XTS mode
    [C   ] crypto: s390 - cleanup s390 Kconfig options
    [C N2] crypto: s5p-sss - add S5PV210 advanced crypto engine support
    [    ] crypto: testmgr - add support for aes ofb mode
    [C   ] hwrng: amd - enable AMD hw rnd driver for Maple PPC boards
    [   1] KEYS: Improve /proc/keys
    [    ] SELinux: introduce path_has_perm

MM

   [ D  ] memcg: add documentation for the memory.numastat API
    [ D  ] memsw: remove noswapaccount kernel parameter
    [    ] mm: avoid anon_vma_chain allocation under anon_vma lock
    [    ] mm: avoid repeated anon_vma lock/unlock sequences in anon_vma_clone()
    [    ] mm: batch activate_page() to reduce lock contention
    [ D  ] mm: convert mm->cpu_vm_cpumask into cpumask_var_t
    [    ] mm: delete non-atomic mm counter implementation
    [    ] mm: increase RECLAIM_DISTANCE to 30
    [    ] mm: per-node vmstat: show proper vmstats
    [    ] vmscan: implement swap token priority aging
    [    ] vmscan: implement swap token trace

PCI

   [    ] PCI: add ID-based ordering enable/disable support
    [    ] PCI: Add interfaces to store and load the device saved state
    [    ] PCI: add latency tolerance reporting enable/disable support
    [    ] PCI: add OBFF enable/disable support
    [    ] PCI: Add quirk for setting valid class for TI816X Endpoint
    [ D  ] PCI: add rescan to /sys/.../pci_bus/.../
    [    ] PCI/PM: Add kerneldoc description of pci_pm_reset()
    [    ] x86/PCI: irq and pci_ids patch for Intel Panther Point DeviceIDs

Power Management

   [C  1] [CPUFREQ] Move x86 drivers to drivers/cpufreq/
    [C  9] [CPUFREQ] use dynamic debug instead of custom infrastructure
    [ D  ] PM / ACPI: Remove acpi_sleep=s4_nonvs
    [ D 1] PM: Allow drivers to allocate memory from .prepare() callbacks safely
    [ D  ] PM: Documentation: fix typo: pm_runtime_idle_sync() doesn't exist.
    [ D  ] PM / Domains: Update documentation
    [ D  ] PM / Hibernate: Add sysfs knob to control size of memory for drivers
    [    ] PM: Introduce generic prepare and complete callbacks for subsystems
    [    ] PM: Print a warning if firmware is requested when tasks are frozen
    [C   ] PM: Remove CONFIG_PM_VERBOSE
    [C  1] PM: Remove sysdev suspend, resume and shutdown operations
    [C N1] PM / Runtime: Generic clock manipulation rountines for runtime PM (v6)
    [    ] PM / Runtime: Rework runtime PM handling during driver removal
    [ D  ] PM / Runtime: Update doc: usage count no longer incremented across system PM
    [ D  ] PM / Runtime: Update documentation regarding driver removal
    [ D  ] PM: Update documentation regarding sysdevs
    [    ] Revert "PM / Hibernate: Reduce autotuned default image size"
    [    ] x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM demands it

Scheduler

   [   2] sched: Dynamically allocate sched_domain/sched_group data-structures
    [    ] sched: Fix and optimise calculation of the weight-inverse
    [ D  ] sched: Get rid of lock_depth
    [    ] sched: Increase SCHED_LOAD_SCALE resolution
    [    ] sched: Introduce SCHED_POWER_SCALE to scale cpu_power calculations
    [C   ] sched: Move the second half of ttwu() to the remote cpu
    [    ] sched: Next buddy hint on sleep and preempt path

Tracing

   [C N ] jump label: Add s390 support
    [    ] perf events: Add generic front-end and back-end stalled cycle event definitions
    [    ] perf events: Add stalled cycles generic event - PERF_COUNT_HW_STALLED_CYCLES
    [    ] perf events, x86: Add SandyBridge stalled-cycles-frontend/backend events
    [    ] perf events, x86: Add Westmere stalled-cycles-frontend/backend events
    [    ] perf script: Add more documentation about the -f/--fields parameters
    [   1] perf stat: Add -d -d and -d -d -d options to show more CPU events
    [    ] perf stat: Add -d/--detailed flag to run with a lot of events
    [    ] perf stat: Add more cache-miss percentage printouts
    [    ] perf stat: Add stalled cycles accounting, prettify the resulting output
    [    ] perf stat: Add stalled cycles to the default output
    [    ] perf stat: Add --sync/-S option
    [    ] perf stat: Analyze front-end and back-end stall counts
    [    ] perf stat: Make all displayed event names parseable as well
    [    ] perf stat: Print cache misses as percentage
    [    ] perf stat: Print out miss/hit ratio for L1 data-cache events
    [    ] perf stat: Print stalled cycles percentage
    [    ] perf stat: Print stalled cycles warning colors
    [    ] perf tools: Add front-end and back-end stalled cycles support
    [  N1] perf tools: Makefile: PYTHON{,_CONFIG} to bandage Python 3 incompatibility
    [    ] perf, x86: Add new stalled cycles events for Intel and AMD CPUs

Virtualization

   [    ] KVM: 16-byte mmio support
    [ D  ] KVM: Add documentation for KVM_CAP_NR_VCPUS
    [    ] KVM: MMU: Optimize guest page table walk
    [ D 2] KVM: PPC: booke: add sregs support
    [    ] KVM: SVM: Add checks for IO instructions
    [    ] KVM: SVM: Add intercept check for accessing dr registers
    [    ] KVM: SVM: Add intercept check for emulated cr accesses
    [    ] KVM: SVM: Add intercept checks for descriptor table accesses
    [    ] KVM: SVM: Add intercept checks for one-byte instructions
    [    ] KVM: SVM: Add intercept checks for remaining group7 instructions
    [    ] KVM: SVM: Add intercept checks for remaining twobyte instructions
    [    ] KVM: SVM: Add intercept checks for SVM instructions
    [    ] KVM: VMX: Optimize vmx_get_cpl()
    [    ] KVM: VMX: Optimize vmx_get_rflags()
    [    ] KVM: x86: Add x86 callback for intercept check
    [    ] KVM: x86 emulator: add framework for instruction intercepts
    [    ] KVM: x86 emulator: add SVM intercepts
    [    ] KVM: x86 emulator: implement movdqu instruction (f3 0f 6f, f3 0f 7f)
    [    ] KVM: x86 emulator: Re-add VendorSpecific tag to VMMCALL insn
    [    ] KVM: x86 emulator: SSE support
    [ D  ] KVM: X86: Implement userspace interface to set virtual_tsc_khz
    [ D  ] lguest: remove support for VIRTIO_F_NOTIFY_ON_EMPTY.
    [    ] Move kvm, uml, and lguest subdirectories under a common "virtual" directory, I.E:
    [   1] virtio: add full three-clause BSD text to headers.
    [    ] virtio_test: support event index
    [  N1] xen: cleancache shim to Xen Transcendent Memory
    [    ] xen/irq: Add support to check if IRQ line is shared with other domains.
    [    ] xen: support CONFIG_MAXSMP

Various

   [    ] Add a strtobool function matching semantics of existing in kernel equivalents
    [ D 1] bitmap, irq: add smp_affinity_list interface to /proc/irq
    [CD 1] cgroup: remove the ns_cgroup
    [ D 1] cgroups: add per-thread subsystem callbacks
    [ D 1] cgroups: make procs file writable
    [ D  ] coredump: add support for exe_file in core name
    [ DN1] Create Documentation/security/,
    [ D  ] Documentation: Add statistics about nested locks
    [ D  ] Documentation/atomic_ops.txt: avoid volatile in sample code
    [ D  ] Documentation/feature-removal-schedule.txt: remove ns_cgroup from feature-removal-schedule.txt
    [ D  ] Documentation: fix cgroup typos and formatting
    [ D 2] Documentation: update cgroupfs mount point
    [ D  ] Documentation: update dontdiff file
    [ D  ] Documentation: update kmemleak supported archs
    [ D  ] Documentation: update printk-formats.txt
    [    ] gconfig: Hide unused left treeview when start up the interface
    [    ] genirq: Support per-IRQ thread disabling.
    [ D  ] genirq: Update DocBook comments
    [ D  ] getdelays: show average CPU/IO/SWAP/RECLAIM delays
    [ D  ] initramfs: Use KBUILD_BUILD_TIMESTAMP for generated entries
    [    ] job control: Allow access to job control events through ptracees
    [    ] kbuild: Allow to combine multiple W= levels
    [ D  ] kbuild: Allow to override LINUX_COMPILE_BY and LINUX_COMPILE_HOST macros
    [ DN ] kbuild: asm-generic support
    [ D  ] kbuild: Fix build with binutils <= 2.19
    [    ] kbuild: Fix <linux/version.h> for empty SUBLEVEL or PATCHLEVEL
    [ D  ] kbuild: Fix passing -Wno-* options to gcc 4.4+
    [    ] kbuild: Hack for depmod not handling X.Y versions
    [C   ] kbuild: move KALLSYMS_EXTRA_PASS from Kconfig to Makefile
    [ D  ] kbuild: move scripts/basic/docproc.c to scripts/docproc.c
    [    ] kconfig: allow multiple inclusion of the same file
    [ D  ] kconfig: Document the new "visible if" syntax
    [C   ] Kconfig: improve KALLSYMS_ALL documentation
    [ D  ] kconfig-language: add to hints
    [    ] kconfig: quiet commands when V=0
    [    ] ktest: Create variables for the ktest config files
    [    ] ktest: Reboot after each patchcheck run
    [    ] ktest: Reboot to good kernel after every bisect run
    [C   ] lib: consolidate DEBUG_PER_CPU_MAPS
    [C  1] lib: consolidate DEBUG_STACK_USAGE option
    [    ] MAINTAINERS: Saying goodbye to David Brownell
    [    ] module: undo module RONX protection correctly.
    [CDN5] ptp: Added a brand new class driver for ptp clocks.
    [    ] rcu: Add boosting to TREE_PREEMPT_RCU tracing
    [ D  ] rcu: add callback-queue information to rcudata output
    [ D  ] rcu: Add forward-progress diagnostic for per-CPU kthreads
    [ D  ] rcu: add grace-period age and more kthread state to tracing
    [    ] rcu: Add memory barriers
    [    ] rcu: add tracing for RCU's kthread run states.
    [ D 1] rcu: Decrease memory-barrier usage based on semi-formal proof
    [    ] rcu: introduce kfree_rcu()
    [ D 1] rcu: merge TREE_PREEPT_RCU blocked_tasks[] lists
    [ D 1] rcu: move TREE_RCU from softirq to kthread
    [    ] rcu: optimize rcutiny
    [CD 1] rcu: Remove conditional compilation for RCU CPU stall warnings
    [ D  ] rcu: Update RCU's trace.txt documentation for new format
    [ D 1] rcu: update tracing documentation for new rcutorture and rcuboost
    [   1] rcu: use softirq instead of kthreads except when RCU_BOOST=y
    [   1] timerfd: Allow timers to be cancelled when clock was set
    [   1] timerfd: Manage cancelable timers in timerfd
    [    ] timers: Improve alarmtimer comments and minor fixes
    [C   ] uts: make default hostname configurable, rather than always using "(none)"

Die kleinen Perlen: Architektur-Code

x86

   [    ] x86-64: Add time to vDSO
    [    ] x86-64: Optimize vDSO time()
    [    ] x86, alternative, doc: Add comment for applying alternatives order
    [    ] x86, amd: Do not enable ARAT feature on AMD processors below family 0x12
    [    ] x86/amd-iommu: Add ATS enable/disable code
    [    ] x86/amd-iommu: Add extended feature detection
    [    ] x86/amd-iommu: Add flag to indicate IOTLB support
    [    ] x86/amd-iommu: Add support for invalidate_all command
    [C   ] x86/amd-iommu: Select PCI_IOV with AMD IOMMU driver
    [    ] x86, cpu: Change NOP selection for certain Intel CPUs
    [    ] x86, cpufeature: Add CPU feature bit for enhanced REP MOVSB/STOSB
    [    ] x86, cpu: Fix detection of Celeron Covington stepping A1 and B0
    [C   ] x86, cpu: Move AMD Elan Kconfig under "Processor family"
    [ D  ] x86 idle APM: deprecate CONFIG_APM_CPU_IDLE
    [ D  ] x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param
    [ D  ] x86 idle: deprecate "no-hlt" cmdline param
    [ D  ] x86 idle floppy: deprecate disable_hlt()
    [  N ] x86: Introduce pci_map_biosrom()
    [    ] x86, MAINTAINERS: Add x86 MCE people
    [    ] x86, mem: clear_page_64.S: Support clear_page() with enhanced REP MOVSB/STOSB
    [    ] x86, mem, intel: Initialize Enhanced REP MOVSB/STOSB
    [    ] x86, mem: memcpy_64.S: Optimize memcpy by enhanced REP MOVSB/STOSB
    [    ] x86, mem: memmove_64.S: Optimize memmove by enhanced REP MOVSB/STOSB
    [    ] x86, mem: memset_64.S: Optimize memset by enhanced REP MOVSB/STOSB
    [C   ] x86, mm: Allow ZONE_DMA to be configurable
    [    ] x86, NUMA: Enable build of generic NUMA init code on 32bit
    [C   ] x86, olpc: Use device tree for platform identification [   8] x86, UV: Add support for SGI UV2 hub chip

ARM

   [    ] ARM: 6859/1: Add writethrough dcache support for ARM926EJS processor
    [C   ] ARM: 6863/1: allow hotplug on msm
    [C  7] ARM: 6888/1: remove ns9xxx port
    [C   ] ARM: 6893/1: Allow for kernel command line concatenation
    [C   ] ARM: 6913/1: sparsemem: allow pfn_valid to be overridden when using SPARSEMEM
    [C   ] ARM: 6931/1: SPEAr3xx: Rework KConfig to allow all boards to be compiled in
    [    ] ARM: add sendmmsg syscall
    [  N ] ARM: configs: add defconfig for mach-mxs
    [   1] ARM: consolidate SMP cross call implementation
    [C   ] ARM: EXYNOS4: Add Atmel mXT touchscreen device to the NURI board
    [  N1] ARM: EXYNOS4: Add usb host phy control
    [  N ] ARM: EXYNOS4: CPUIDLE Support
    [C N5] ARM: imx: move mx3 support to mach-imx
    [C N ] ARM: mach-mxs: add stmp378x-devb
    [    ] ARM: mach-shmobile: Add SDHI support for AG5EVM and sh73a0
    [  N ] ARM: mach-shmobile: CPUIdle support
    [    ] ARM: mach-shmobile: Enable DMAEngine for MMCIF on AG5EVM
    [    ] ARM: mach-shmobile: Enable DMAEngine for SDHI on AG5EVM
    [  N1] ARM: mach-shmobile: sh7372 Core Standby Suspend-to-RAM
    [   1] ARM: mach-shmobile: sh73a0 DMA Engine support for SY-DMAC
    [  N ] ARM: mach-shmobile: Suspend-to-RAM support
    [C  9] ARM: mach-stmp378x: remove mach
    [C  9] ARM: mach-stmp37xx: remove mach
    [C   ] ARM: Moving Marvell Dove platform defaults to ARMv7
    [C N3] ARM: mx3: dynamically allocate "ipu-core" devices
    [C   ] ARM: mx5/mx53_smd: Add esdhc support
    [   3] ARM: orion: Consolidate ethernet platform data
    [  N2] ARM: orion: Consolidate the creation of the uart platform data.
    [   2] ARM: orion: Consolidate the XOR platform setup code.
    [   1] ARM: orion: Consolidate USB platform setup code.
    [C  9] ARM: plat-stmp: remove plat
    [C  8] ARM: remove support for mxc91231
    [    ] ARM: S3C2416: Add support for USB 2.0 High-Speed gadget controller
    [    ] ARM: S3C2416: Add USB Phy register definitions
    [    ] ARM: S3C24XX: Add plaform device definition for USB High-Speed gadget controller.
    [CD 7] ARM: S5P6442: Removing ARCH_S5P6442
    [    ] ARM: tegra: irq: Remove PM support
    [C  7] at91: drop at572d940hf support
    [C N ] MX1: Add ARMadeus Systems APF9328 board support
    [    ] OMAP2+ / PM: move runtime PM implementation to use device power domains
    [    ] OMAP4: DSS2: HDMI: Implement ASoC Codec driver for HDMI audio
    [  N2] omap: consolidate touch screen initialization among different boards
    [C  1] omap: drop board-igep0030.c
    [   1] OMAP: DSS2: Add support for NV12 format
    [    ] OMAP: DSS2: Support for Powertip PH480272T
    [    ] OMAP: DSS2: Support for Seiko 70WVW1TZ3
    [    ] omap: igep0020: add support for IGEP3
    [   1] omap: musb: introduce default board config
    [C  1] omap: Remove support for omap2evm

PPC

   [C N1] powerpc/4xx: Adding PCIe MSI support
    [  N ] powerpc/85xx: Create dts of each core in CAMP mode for P1020RDB
    [    ] powerpc/a2: Add some #defines for A2 specific instructions
    [C N1] powerpc: Add A2 cpu support
    [C   ] powerpc: Add early debug for WSP platforms
    [ DN ] powerpc: Add fsl mpic timer binding
    [ DN ] powerpc: Adding bindings for flexcan controller
    [C  1] powerpc: Add Initiate Coprocessor Store Word (icswx) support
    [    ] powerpc: Add ioremap_wc
    [C   ] powerpc: Add kconfig for muxed smp ipi support
    [    ] powerpc: Add more Power7 specific definitions
    [    ] powerpc: Add MSR_64BIT
    [C N ] powerpc: Add NAP mode support on Power7 in HV mode
    [C N1] powerpc: Add SCOM infrastructure
    [    ] powerpc: Add TLB size detection for TYPE_3E MMUs
    [   1] powerpc: Base support for exceptions using HSRR0/1
    [C N ] powerpc/boot: Add an ePAPR compliant boot wrapper
    [   2] powerpc: Consolidate ipi message mux and demux
    [  N ] powerpc: Define CPU feature for Architected 2.06 HV mode
    [    ] powerpc/eeh: Add support for ibm,configure-pe RTAS call
    [C   ] powerpc/ftrace: Implement raw syscall tracepoints on PowerPC
    [    ] powerpc: Improve scheduling of system call entry instructions
    [ DN ] powerpc: Integrated Flash controller device tree bindings
    [    ] powerpc: More work to support HV exceptions
    [    ] powerpc/mpic: parse 4-cell intspec types other than zero
    [    ] powerpc: Per process DSCR + some fixes (try#4)
    [   1] powerpc/pseries: Add page coalescing support
    [C N1] powerpc/pseries: Add support for IO event interrupts
    [    ] powerpc/pseries: Enable Emulex and Qlogic 10Gbit cards
    [    ] powerpc/pseries: Enable iSCSI support for a number of cards
    [    ] powerpc: Save Come-From Address Register (CFAR) in exception frame
    [C N6] powerpc/xics: Rewrite XICS driver

Various

   [C  1] arch/tile: improve support for PCI hotplug
    [C N1] arch/tile: more /proc and /sys file support
    [   1] arch/tile: support signal "exception-trace" hook
    [   1] arch/tile: support TIF_NOTIFY_RESUME
    [  N ] asm-generic/ptrace.h: start a common low level ptrace helper
    [    ] asm-generic/unistd.h: support sendmmsg syscall
    [   1] Blackfin: boards: update ASoC resources after machine driver overhaul
    [C N4] Blackfin: first pass at debug mmr support
    [C N1] Blackfin: initial perf_event support
    [  N2] Blackfin: unify core IRQ definitions
    [C   ] m68knommu: create config options for CPU classes
    [  N1] MIPS: Add default configuration for XLR/XLS processors
    [C   ] MIPS: Enable kmemleak for MIPS
    [C N ] MIPS: Kconfig and Makefile update for Netlogic XLR/XLS
    [  N1] MIPS: Lantiq: Add DMA support
    [C N2] MIPS: Lantiq: Add ethernet driver
    [    ] MIPS: Lantiq: Add etop board support
    [C N2] MIPS: Lantiq: Add initial support for Lantiq SoCs
    [C N ] MIPS: Lantiq: Add machtypes for lantiq eval kits
    [C N ] MIPS: Lantiq: Add mips_machine support
    [  N ] MIPS: Lantiq: Add more gpio drivers
    [C N ] MIPS: Lantiq: Add NOR flash support
    [  N1] MIPS: Lantiq: Add PCI controller support.
    [  N ] MIPS: Lantiq: Add platform device support
    [C N3] MIPS: Lantiq: add SoC specific code for XWAY family
    [C N ] MIPS: Lantiq: Add watchdog support
    [    ] MIPS: Netlogic: Cache, TLB support and feature overrides for XLR
    [  N ] MIPS: Netlogic: mach-netlogic include files
    [    ] MIPS: Netlogic XLR/XLS processor IDs.
    [  N5] MIPS: Platform files for XLR/XLS processor support
    [  N1] MIPS: XLR, XLS: Add PCI support.
    [C   ] S390: ap: skip device registration on type probe failure
    [C  2] S390: Remove data execution protection
    [C  1] S390: Remove tape block device driver.
    [    ] sh: ecovec: Add renesas_usbhs support
    [    ] sh: sh7724: Add USBHS DMAEngine support
    [C   ] sparc32: added CONFIG_PCIC_PCI Kconfig setting
    [C  6] sparc32: genirq support
    [C N1] sparc32,leon: added LEON-common low-level PCI routines
    [C N2] sparc32,leon: add GRPCI2 PCI Host driver
    [    ] sparc32,leon: SMP power down implementation
    [C N ] tile: add an RTC driver for the Tilera hypervisor
    [C N ] um: add earlyprintk support
    [ DN2] um: add ucast ethernet transport

Quelle und Links : http://www.heise.de/open/artikel/Kernel-Log-Was-3-0-bringt-3-Architektur-Infrastruktur-und-Virtualisierung-1274204.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log – Was 3.0 bringt (4): Treiber
« Antwort #207 am: 14 Juli, 2011, 09:07 »
Bessere Unterstützung für neue Chipsätze und Grafikkerne von AMD und Intel sowie Treiber für Microsofts Kinect und den DVB-T-Nachfolger DVB-T2. Wie so häufig gab es auch bei Linux 3.0 wieder eine Reihe von Workarounds für verschiedenste Hardware-Probleme.

Abermals in der Nacht von Montag auf Dienstag hat Linus Torvalds eine Vorabversion von Linux 3.0 veröffentlicht. In der Freigabe-Mail zum RC7 schreibt er, es sei ziemlich ruhig gewesen, aber es habe doch noch einige Neuerungen gegeben, daher hielt er einen weiteren RC für angebracht. Bei der sechsten Vorabversion hatte er bereits angedeutet, das vielleicht schon der RC6 der letzte sein würde.

Wenn Torvalds nicht noch einen weiteren RC einschiebt, dürfte Linux 3.0 vermutlich Ende dieser oder Anfang nächster Woche erscheinen. Das Kernel-Log will daher seine Mini-Serie "Was 3.0 bringt" zum Abschluss bringen und widmet sich im vierten Teil den Neuerungen bei Treibern – darunter jene für Audio-, Grafik-, Multimedia- und Storage-Hardware. Der erste Teil der Artikel-Reihe beschäftigte sich mit den Änderungen an Netzwerk-Treibern und -Infrastruktur, der darauf folgende drehte sich um Dateisysteme; im dritten Teil ging es um plattformspezifischen Code, Virtualisierung und Infrastruktur des Kernels.

Grafik

Der in Linux 3.0 enthaltene i915-DRM/KMS-Treiber für Intel-Grafikchips in Prozessoren und Chipsätzen für Notebooks und Desktop-PCs soll bereits den Grafikern der Ivy-Bridge-Prozessoren ansteuern können, die Intel vermutlich erst Anfang nächsten Jahres einführen wird (u. a. 1, 2, 3, 4, 5, 6, 7). Der Treiber soll in Zukunft die Stromspartechnik RC6 wieder standardmäßig nutzen. Da störende Wechselwirkungen mit der weniger effizienten Frame Buffer Compression (FBC) bekannt waren, haben die Entwickler FBC zunächst standardmäßig deaktiviert. Kurz vor der Freigabe von Linux 3.0 haben die Entwickler die RC6-Technik dann aber auch deaktiviert , da Probleme aufgetaucht waren. Der Commit-Kommentar deutet aber darauf hin, dass sie demnächst einen weiteren Anlauf nehmen wollen.

Der Radeon-DRM/KMS-Treiber erhält einige Verbesserungen zur Ausgabe via DisplayPort (u. a. 1, 2, 3, 4, 5, 6). Der Treiber spricht jetzt auch den Grafikkern der Llano-Prozessoren an, die AMD kürzlich für Notebooks und Desktop-PCs eingeführt hat (u. a. 1, 2). Um Probleme wie dunkle Bildschirme zu vermeiden, ist die Audio-Ausgabe via HDMI für erste standardmäßig deaktiviert; sie lässt sich über den Kernel-Parameter radeon.audio=1 einschalten. Zudem gab es eine Änderung am Hilfetext zum Radeon-DRM/KMS-Treiber, die klarstellt, dass er jetzt jegliche Radeon-Grafikhardware unterstützt.

Der Nouveau-DRM/KMS-Treiber beherrscht bei den GeForce-Grafikchip-Generationen nv40 und nv84 nun die Pmpeg genannte Technik, mit der sich das Dekodieren von MPEG-Material an den Grafikchip delegieren lässt; es gibt aber bislang kein Userspace-Interface, um Pmpeg zu nutzen. Einige andere Änderungen legen Grundlagen zur Unterstützung verschiedener Techniken, die beim Umschalten zwischen Prozessor-/Chipsatz-Grafik und GeForce-Grafikchips involviert sind (u. a. 1, 2, 3); bei neueren Notebooks nennt Nvidia das "Optimus".

Der DRM-Code unterstützt ab Linux 3.0 zudem eine Farbtiefe von 30-Bit. Zur Aufnahme bei 3.1 ist bereits ein Patch vorgesehen, durch den der Nouveau-Treiber die Firmware selbst erzeugen kann, die zur Nutzung der Beschleunigungsfunktionen von Nvidias Grafikkarten der Serien 400 und 500 (Fermi-GPUs) erforderlich ist; bisher muss man die Firmware mit komplizierten Tricks den proprietären Nvidia-Treibern entlocken. Bald soll es auch eine Reihe von Verbesserungen am Treiber für die virtuelle Grafikhardware mancher VMware-Virtualisierungslösungen geben, der genau wie Nouveau ein Staging-Treiber ist.

Staging

Auch der Grafiktreiber gma500 ist ein Staging-Treiber, der den Qualitätsansprüchen seiner Entwickler oder der Kernel-Hacker nicht genügt. Er erhielt einige Erweiterungen, um neben dem GMA500-Grafikkern im Chipsatz US15W (Poulsbo) auch jene in den MID-Plattformen Oaktrail und Moorestown anzusprechen (1, 2). Ferner haben die Kernel-Hacker das TTM-Interface verworfen und ein GEM-Interface zur Speicherverwaltung eingebaut. Unterstützung für den noch in diesem Jahr erwarteten Cedarview ist für Linux 3.1 in Vorbereitung (1, 2). Hauptentwickler Alan Cox ist der Ansicht, die Treiberteile zur Unterstützung von Poulsbo und Cedarview können den Staging-Bereich jetzt verlassen. Die Unterstützung für Chipsätze für Mobile Internet Devices (MID) brauche aber noch einige Aufräumarbeiten, daher soll der Treiber modularisiert werden. Zudem bietet der HDMI-Support bislang nur Grundfunktionen und beherrscht kein HDMI-Audio.

Zum Staging-Bereich stieß ferner der Userspace-Teil des im USB/IP-Projekt entwickelten Frameworks usbip, das USB-Geräte über eine Netzwerkverbindung an andere Systeme weiterreicht. Client- und Host-Treiber von usbip sind bereits seit 2.6.28 Bestandteil von Linux; sie erhielten mit 3.0 einige Änderungen, nachdem es mit ihnen lange nicht vorangegangen war. Eine ganze Reihe von Verbesserungen gab es auch an den Treibern für Microsofts Virtualisierungsschnittstelle Hyper-V, für die Staging-Betreuer Greg Kroah-Hartman die Microsoft-Entwickler in seinem Haupt-Git-Pull-Request lobt.

Neu im Staging-Bereich ist ein Treiber für die Intel Management Engine (Intel ME), die eine Reihe verbreiteter Notebook- und Desktop-PC-Chipsätze von Intel bieten (u. a. 1, ToDo-List). Die Konfigurationsoption "STAGING_EXCLUDE_BUILD" haben die Kernel-Hacker entfernt, damit die Treiber beim Testen jetzt typischerweise kompiliert werden; dadurch verschwindet auch der zugehörige Hilfetext, der klarstellte, dass Staging-Treiber "vielleicht losgehen und den Hund treten, wenn man gerade nicht acht gibt".

Fehlgeleitet

Wie mit jeder Kernel-Version gab es auch für Linux 3.0 haufenweise Änderungen, um Probleme mit Hardware zu beseitigen, die fehlerhafte Daten liefert oder sich nicht spezifikationskonform verhält. Exemplarisch sei an dieser Stelle ein Quirk am i915-DRM/KMS-Treiber für Intel-Chips erwähnt. Durch den Patch soll die zu Gnome 3 gehörenden Gnome-Shell auf dem Asus EeeBox PC EB1007 arbeiten; laut dem Autor des Patches lief sie vorher nicht, weil der Asus-PC dem Betriebssystem gegenüber behauptet, wie ein Notebook ein "internes", via LVDS angebundenen Display zu haben.

Ein anderes Beispiel für eine Sonderbehandlung ist ein Commit, der Fehler beim Zusammenspiel mit dem USB-Stick Corsair Padlock v2 und dem Feiya SD/SDHC-Kartenleser umgeht. Besonders häufig sind diese "Quirk" genannten Sonderbehandlungen für die korrekte Funktion von AC97- und HD-Audio-Codecs nötig, die bei PCs für die Audio-Ausgabe zuständig sind. Eine Reihe solcher Patches findet sich im Abschnitt "Die kleinen Perlen" am Ende des Artikels. Die in der Kernel- und Alsa-Dokumentation erläuterten Modul-Parameter der Audio-Treiber können solche Sonderbehandlungen individuell aktivieren. Wenn Ihre Hardware nur durch Angabe solcher Parameter korrekt arbeitet, dann sollten Sie die Informationen zum eigenen System und den benötigten Parametern an die Kernel-/Alsa-Entwickler übermitteln – die können dann einen Quirk erstellen und in den Kernel integrieren, damit die Hardware bei Ihnen und allen anderen Anwendern in Zukunft ohne manuelle Konfiguration korrekt arbeitet.

Storage

Erst zur sechsten Vorabversion integrierten die Kernel-Hackern die größte Neuerung im Storage-Bereich: Den Isci genannten Treiber für den SAS-Controller in Intels Server- und Workstation-Chipsatz C600, der in den kommenden Monaten erscheinen soll (u. a. 1). Torvalds war sich erst unsicher, ob er den Treiber so spät im Entwicklungszyklus noch aufgenommen wollte. Er tat es dann aber doch – unter anderem, weil der Treiber-Code für sich alleine steht, daher kann er keine Fehler auslösen, die frühere Kernel nicht gezeigt haben. Neu ist auch der FC-FC4-Provider tcm_fc, der Zusammen mit andere Komponenten den Betrieb als FCoE (Fibre Channel over Ethernet) Target ermöglichen.

Der Treiber mvsas unterstützt nun die Marvell-Chips 88SE9445 und 88SE9485, der Treiber pata_marvell die Bausteine 88SE91A0 und 88SE91A4. Nicht genutzte SATA-Ports lassen sich jetzt komplett abschalten, um den Stromverbrauch zu reduzieren. Der Emulex LightPulse Fibre Channel SCSI driver (lpfc) bietet nun Funktionen zur Kontrolle des für Virtualisierung genutzten SR-IOV (Single-Root I/O Virtualization). Zur Kernel-Dokumentation stießen Erklärungen zu den Sysfs-Dateien, über die sich Informationen rund um das für SSDs oder Netzspeicher mit Thin Provisioning wichtige Discard auslesen lassen.

Staccato

Der XHCI-Treiber für USB 3.0 soll bereits jetzt die EHCI/XHCI-Port-Switching-Funktion der Panther-Point-Chipsätze unterstützen, die zu den Ivy-Bridge-Prozessoren gehören, die Intel vermutlich Anfang nächsten Jahres einführen wird (1, 2).

Der Treiber k10temp kann mit Linux 3.0 auch AMD-Prozessoren der Familie 15H (Codename "Bulldozer") ansprechen, die im Spätsommer oder Herbst auf den Markt kommen dürften. Der neue Treiber fam15h_power stellt Schnittstellen bereit, über die sich Informationen zum Stromverbrauch von Bulldozer-CPUs auslesen lassen.

Die Kernel-Hacker haben die bislang vom Treiber pkgtemp gebotenen Funktionen zum Auslesen der Temperatursensoren neuerer Intel-CPUs in den Treber coretemp verlagert (1, 2).

Das Media-Subsystemen bietet nun Grundfunktionen für DVB-T2-Hardware (1, 2) und bringt einen Treiber für den Sonys DVB-T2-Chip CXD2820R mit. In das Media-Subsystem fließt ein Treiber für den von verschiedenen Herstellern eingesetzten DVB-T-Tuner Micronas DRXD ein (u. a. 1, 2). Neu ist auch ein Treiber für Microsofts Kinect. Einige weitere Neuerungen im Media-Subsystem nennt dessen Betreuer Mauro Carvalho Chehab in seinen beiden Haupt-Git-Pull-Requests (1, 2).

Unter den im Rahmen des Alsa-Projekts entwickelten Audio-Treibern des Kernels findet sich jetzt einer für die PCIe-Soundkarte Digigram Lola und einer für das iSight-Mikrofon von Apple. Einige weitere Änderungen nennt Alsa-Entwickler Takashi Iwai in seinem Haupt-Git-Pull-Request.

Der Treiber Hid-Multitouch unterstützt jetzt über ein Dutzend weitere Touchscreens; Details finden sich im Abschnitt "Die kleinen Perlen".

Die kleinen Perlen: Audio, Grafik, I2C

Viele kleinere, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den "offiziellen" Kernel-Quellen auf Kernel.org. Der über diese Links angezeigten Commit-Kommentar und der darunter ausgegebene Patch liefern zahlreiche weitere Informationen zur jeweiligen Änderung.

Vor jedem Link finden sich in eckigen Klammern einige Buchstaben und Zahlen. Ein "C" kennzeichnet Patches mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten, die bei der Kernel-Konfiguration über "make menuconfig" oder "make xconfig" angezeigt werden. Ein "D" steht bei Patches, die die Dokumentation verändern, die im Kernel-Zweig unterhalb von Documentation/ liegt. Ein "N" weist Änderungen aus, die eine neue Datei anlegen. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: eine "1" kennzeichnet Änderungen, die inklusive Kommentar zwischen 10 und 20 KByte groß sind, eine "2" für solche, die zwischen 20 und 30 KByte Umfang haben; Änderungen ohne Zahl sind kleiner als 10 KByte, Patches mit einer "9" hingegen 90 KByte oder größer.

Audio

    [    ] ALSA: 6fire - Add support for S32_LE format
    [   1] ALSA: 6fire - Add support of digital-thru mixer
    [C   ] ALSA: 6fire - Update kernel configuration
    [    ] ALSA: emu10k1 - Add dB range to Bass and Treble for SB Live!
    [    ] ALSA: emu10k1: Add details for E-mu 0404 PCIe version
    [C   ] ALSA: es1968: add radio (tea575x tuner) support
    [    ] ALSA: fix hda AZX_DCAPS_NO_TCSEL quirk check in driver_caps
    [C   ] ALSA: fm801: clean-up radio-related Kconfig
    [    ] ALSA: fm801: implement TEA575x tuner autodetection
    [    ] ALSA: HDA: Add a new Conexant codec ID (506c)
    [    ] ALSA: hda - Add Auto-Mute Mode enum for two-output cases
    [   1] ALSA: hda - Add automute-mode enum to Conexant auto-parser
    [    ] ALSA: hda - Add auto-parser support to cxt5045 / CX20549 Venice
    [   1] ALSA: hda - Add auto-parser support to cxt5051 / CX20561 Hermosa
    [   1] ALSA: hda - Add channel-mode support to Realtek auto-parser
    [   3] ALSA: hda - Add common automute support for mxier-amp on/off for Reatek
    [    ] ALSA: hda - Add dock-mic detection support to Realtek auto-parser
    [    ] ALSA: hda - add Intel Panther Point HDMI codec id
    [    ] ALSA: HDA: Add jack detection for HDMI
    [    ] ALSA: hda - Add missing Front/Surround/CLFE as slaves for Cxt auto-parser
    [    ] ALSA: HDA: Add model=auto quirk for Acer Aspire 3830TG
    [    ] ALSA: HDA: Add quirk for Lenovo U350
    [    ] ALSA: hda - Add support for Line-Out automute to Realtek auto-parser
    [    ] ALSA: hda - Add support of ALC221 / ALC276 codecs
    [    ] ALSA: hda - Add support of ALC898/899 codec
    [    ] ALSA: hda - Add support of auto-parser to cxt5047 / CX20551 Waikiki
    [    ] ALSA: hda - Add support of auto-parser to cxt5066 codecs
    [    ] ALSA: hda - Add support of dock-mic detection to Conexant auto-parser
    [   1] ALSA: hda - Add support of line-out automute for Realtek
    [   3] ALSA: hda - Consolidate default automute functions for Realtek
    [    ] ALSA: hda - Correct initial dac_nids for some ALC272-quirks
    [    ] ALSA: hda - Enable Realtek ALC269 codec input layer beep
    [    ] ALSA: hda - Enable snoop bit for AMD controllers
    [ D  ] ALSA: hda - Fix alc662_dac_nid and change "6stack-dig" to "5stack-dig"
    [    ] ALSA: hda: Fix inaudible internal speakers on CyberpowerPC Gamer Xplorer N57001 laptop
    [    ] ALSA: hda - Fix invalid unsol tag for some alc262 model quirks
    [    ] ALSA: hda: Fix quirk for Dell Inspiron 910
    [    ] ALSA: hda - More line-out auto-mute support for Realtek
    [    ] ALSA: HDA: Pinfix quirk for HP Z200 Workstation
    [    ] ALSA: HDA: Remove quirk for an HP device
    [   1] ALSA: hda - Reorganize controller quriks with bit flags
    [   1] ALSA: HDA: Unify HDMI hotplug handling.
    [    ] ALSA: hda - Use model=auto for Lenovo G555
    [   3] ALSA: hda - VIA: Add new power management function.
    [    ] ALSA: hda - VIA: Add support for VT1705
    [   1] ALSA: hda - VIA: Add support for VT1802
    [    ] ALSA: hdspm - Add firmware revision ID for RME MADI PCI version
    [    ] ALSA: intel8x0m: enable AMD8111 modem
    [C   ] ALSA: isight: remove experimental status
    [    ] ALSA: lola - Add Lola-specific module options
    [    ] ALSA: lola - Add sync in loop implementation
    [    ] ALSA: powermac - Correct lineout detection on PowerMac G4 DA
    [    ] ALSA: tea575x-tuner: various improvements
    [    ] ALSA: usb-audio: add new quirk type QUIRK_AUDIO_STANDARD_MIXER
    [    ] ALSA: usb-audio: Add quirk for KORG PANDORA PX5D MIDI interface
    [    ] ALSA: usb-audio: Add quirks for Audio Kontrol 6
    [    ] ALSA: usb-audio: add quirks for Roland GR-55
    [    ] ALSA: usb-audio - Add support for USB X-Fi S51 Pro
    [    ] ALSA: usb-audio: more control quirks for M-Audio FastTrack devices
    [    ] ASoC: Add basic widgets for WM8915 Speyside
    [   1] ASoC: Add EQ and filter to max98095 CODEC driver
    [C N ] ASoC: Add initial WM1250-EV1 Springbank audio I/O module driver
    [C N ] ASoC: add iPAQ hx4700 machine driver
    [C N7] ASoC: Add max98095 CODEC driver
    [    ] ASoC: Add Speyside headset jack detection support
    [C N9] ASoC: Add WM8915 CODEC driver
    [   1] ASoC: Add WM8958 enhanced EQ support
    [   1] ASoC: Add WM8958 VSS support
    [C N2] ASoC: Asahi Kasei AK4641 codec driver
    [    ] ASoC: Implement WM8962 DMIC support
    [C N ] ASoC: Initial audio support for Speyside on Cragganmore 6410
    [    ] ASoC: Name jack GPIOs based on jack not codec
    [    ] ASoC: Optimise clock management for WM8915 Speyside
    [C   ] ASoC: Remove to support sound for S5P6442
    [C N ] ASoC: SAMSUNG: Add WM8580 PCM Machine driver
    [    ] ASoC: soc-cache: Introduce raw bulk write support
    [C   ] ASoC: SSM2602: add SPI support
    [   1] ASoC: SSM2602: Add SSM2604 support
    [    ] ASoC: Support 24.576MHz MCLKs in WM8915
    [    ] ASoC: Support download of WM8958 MBC firmware
    [    ] ASoC: Support FLL lock interrupt on WM8962
    [C   ] ASoC: Support the sub speaker driver on Speyside
    [C  1] ASoC: Tegra: Support more boards
    [C N ] ASoC: tegra: TrimSlice machine support
    [    ] ASoC: WM8903: Implement DMIC support
    [    ] MAINTAINERS: Add entry for Native Instruments sound driver
    [    ] MAINTAINERS: add FireWire audio maintainer
    [C  9] SOUND: OSS: Remove Au1550 driver.

Grafik

    [CDN3] backlight: new driver for the ADP8870 backlight devices
    [    ] drm: add bit depth parsing
    [    ] drm/dp: add some new DP regs for DP 1.2
    [   1] drm: Export the command-line mode parser
    [  N3] drm/nva3: implement support for copy engine
    [  N1] drm/nvc0: implement support for copy engines
    [    ] drm/radeon/kms: add some dp encoder/connector helper funcs
    [    ] drm/radeon/kms: add support for thermal chips on combios asics
    [    ] drm/radeon/kms: be more pedantic about the g5 quirk (v2)
    [    ] drm/radeon/kms: bump kms version number
    [    ] drm/radeon/kms: fix mac g5 quirk
    [    ] efifb: Enable write-combining
    [    ] MAINTAINERS: Switch maintainer for drm/i915 to Keith Packard
    [    ] Revert "drm/nvc0: recognise 0xdX chipsets as NV_C0"
    [C   ] viafb: add X server compatibility mode
    [C N ] video: mb862xx: add support for controller's I2C bus adapter

I2C, Hwmon, Watchdog, ...

    [CDN1] hwmon: Add support for MAX6642
    [    ] hwmon: (coretemp) Add comments describing the handling of HT CPUs
    [CDN2] hwmon: Driver for MAX16065 System Manager and compatibles
    [CD  ] hwmon: (f71882fg) Add support for F71808A
    [CD  ] hwmon: (f71882fg) Add support for the F71869A
    [ D  ] hwmon: (k10temp) Update documentation for Fam12h
    [ D  ] hwmon: (max6650) Drop device detection
    [ D  ] hwmon: (max6650) Properly support the MAX6650
    [CDN2] hwmon: New driver for the SMSC EMC6W201
    [CDN ] hwmon: (pmbus) Add support for Analog Devices ADM1275
    [CDN1] hwmon: (pmbus) Add support for TI UCD9200 series of PWM System Controllers
    [   2] hwmon: (pmbus) Introduce infrastructure to detect sensors and limit registers
    [CDN1] hwmon: (pmbus) Support for TI UCD90xxx series Sequencer and System Health Controllers
    [ D 1] hwmon: (sht15) add support for CRC validation
    [ D 1] hwmon: (sht15) add support for the status register
    [ DN2] hwmon: (sht15) general code clean-up
    [C   ] i2c-eg20t: Support new device ML7223 IOH
    [  N ] i2c: i2c-sh_mobile bus speed platform data V2
    [CD  ] i2c-i801: SMBus patch for Intel Panther Point DeviceIDs
    [    ] i2c-nomadik: add regulator support
    [    ] i2c: tegra: Enable new slave mode.
    [ D  ] i2c/writing-clients: Fix foo_driver.id_table
    [C   ] i8k: Integrate with the hwmon subsystem
    [C   ] Move ACPI power meter driver to hwmon
    [C   ] watchdog, hung_task_timeout: Add Kconfig configurable default

Input/HID

    [    ] HID: add quirk for HyperPen 10000U
    [    ] HID: add support for barcode scanners from Symbol Technologies
    [    ] HID: add support for Logitech G27 wheel
    [    ] HID: add support for Sony Navigation Controller
    [CDN1] HID: Documentation for hidraw
    [C   ] HID: hid-multitouch: add support for ActionStar panels
    [    ] HID: hid-multitouch: add support for a new Lumio dual-touch panel
    [C   ] HID: hid-multitouch: add support for Chunghwa multi-touch panel
    [C   ] HID: hid-multitouch: add support for CVTouch panels
    [C   ] HID: hid-multitouch: add support for Elo TouchSystems 2515 IntelliTouch Plus
    [C   ] HID: hid-multitouch: add support for GoodTouch panels
    [C   ] HID: hid-multitouch: add support for Ilitek dual-touch panel
    [C   ] HID: hid-multitouch: Add support for Lumio panels
    [C   ] HID: hid-multitouch: add support for PenMount dual-touch panel
    [C   ] HID: hid-multitouch: add support for Touch International panels
    [C   ] HID: hid-multitouch: add support for Unitec panels
    [    ] HID: hid-multitouch: Auto detection of maxcontacts
    [C  1] HID: hid-multitouch: merge hid-mosart into hid-multitouch
    [C  1] HID: hid-multitouch: migrate 3M PCT touch screens to hid-multitouch
    [C  1] HID: hid-multitouch: migrate Cando dual touch panels to hid-multitouch
    [C  1] HID: hid-multitouch: migrate support for Stantum panels to the unified driver.
    [ DN1] HID: roccat: fix actual/startup profile sysfs attribute in koneplus
    [C N1] IIO: GYRO: IIO driver for Analog Devices Digital Output Gyroscope ADXRS450
    [C N1] Input: add driver for Maxim max11801 touchscreen controller
    [C N1] Input: add driver FSL MPR121 capacitive touch sensor
    [C N2] input: Add Qualcomm pm8xxx keypad controller driver
    [C N ] input: Add support for Qualcomm PMIC8XXX power key
    [C N2] Input: ADP5589 - new driver for I2C Keypad Decoder and I/O Expander
    [    ] Input: ads7846 - add possibility to use external vref on ads7846
    [    ] Input: atmel_mxt_ts - support 12bit resolution
    [ D  ] Input: elantech - describe further the protocol
    [    ] Input: elantech - export pressure and width when supported
    [    ] Input: elantech - remove support for proprietary X driver
    [    ] Input: gpio_keys - add support for EV_ABS
    [    ] Input: gpio-keys - add support for setting device name
    [    ] Input: qt1070 - add MODULE_DEVICE_TABLE
    [ D  ] Input: rotary-encoder - add support for half-period encoders
    [    ] Input: sh_keysc - implement runtime PM support
    [    ] Input: tegra-kbc - add ghost key filter


Media

    [ D 1] DocBook/dvb: Improve description of the DVB API v5
    [C N6] [media] Add support for M-5MOLS 8 Mega Pixel camera ISP
    [C   ] [media] Add support for PCTV nanoStick T2 290e [2013:024f]
    [ D  ] [media] add V4L2-PIX-FMT-SRGGB12 & friends to docbook
    [ DN ] [media] Add Y10B, a 10 bpp bit-packed greyscale format
    [    ] [media] anysee: add more info about known board configs
    [C   ] [media] anysee: add support for Anysee E30 S2 Plus
    [C   ] [media] anysee: add support for Anysee E7 S2
    [    ] [media] anysee: add support for Anysee E7 TC
    [C   ] [media] anysee: add support for TDA18212 based E30 Combo Plus
    [    ] [media] anysee: add support for two byte I2C address
    [C N ] [media] budget-ci: Add support for TT S-1500 with BSBE1-D01A tuner
    [    ] [media] cx18: Bump driver version, since a new class of HVR-1600 is properly supported
    [    ] [media] cx18: Bump driver version to 1.5.0
    [C   ] [media] cx18: Make RF analog TV work for newer HVR-1600 models with silicon tuners
    [    ] [media] cx231xx: Add support for Iconbit U100
    [    ] [media] cx231xx: add support for Kworld
    [    ] [media] cx24116.c - fix for wrong parameter description
    [    ] [media] cxd2820r: switch automatically between DVB-T and DVB-T2
    [    ] [media] DM04/QQBOX v1.84 added PID filter
    [   9] [media] drxd: move firmware to binary blob
    [    ] [media] em28xx: add digital support for PCTV 330e
    [    ] [media] em28xx: add remote control support for PCTV 330e
    [    ] [media] em28xx: add support for EM28174 chip
    [    ] [media] em28xx: enable support for the drx-d on the HVR-900 R2
    [ D  ] [media] em28xx: include model number for PCTV 330e
    [    ] [media] em28xx: Multi Frontend (MFE) support
    [C N2] [media] fintek-cir: new driver for Fintek LPC SuperIO CIR function
    [    ] [media] gspca - jeilinj: add 640*480 resolution support
    [ D  ] [media] gspca - jeilinj: Add SPORTSCAM_DV15 camera support
    [    ] [media] gspca - jeilinj: add SPORTSCAM specific controls
    [    ] [media] gspca - main: Version change to 2.13
    [    ] [media] mantis: trivial module parameter documentation fix
    [C N1] [media] NXP TDA18212HN silicon tuner driver
    [  N ] [media] rc: add tivo/nero liquidtv keymap
    [   1] [media] rc-core: add TX support to the winbond-cir driver
    [    ] [media] rc/nuvoton-cir: enable CIR on w83667hg chip variant
    [C N4] [media] redrat3: new rc-core IR transceiver device driver
    [C  1] [media] remove radio-maestro
    [C  3] [media] Remove the now obsolete drx397xD
    [    ] [media] s2255drv: adding MJPEG format
    [    ] [media] s2255drv: jpeg enable module parameter
    [    ] [media] saa7134 add new TV cards
    [    ] [media] saa7134: enable IR support for Hauppauge HVR-1150/1120
    [    ] [media] saa7134: support MagicPro ProHDTV Pro2 Hybrid DMB-TH PCI card
    [    ] [media] support for medion dvb stick 1660:1921
    [    ] [media] tda18271: add DVB-C support
    [  N ] [media] tm6000: add CARDLIST
    [    ] [media] tm6000: add detection based on eeprom name
    [    ] [media] tm6000: add radio capabilities
    [    ] [media] tm6000: add tm6010 audio mode setup
    [   1] [media] usbvision: add Nogatech USB MicroCam
    [ DN1] [media] uvcvideo: Add driver documentation
    [    ] [media] uvcvideo: Add M420 format support
    [    ] [media] uvcvideo: Add support for JMicron USB2.0 XGA WebCam
    [    ] [media] uvcvideo: Add support for NOMMU arch
    [    ] [media] uvcvideo: Add support for V4L2_PIX_FMT_RGB565
    [ D  ] [media] uvcvideo: Deprecate UVCIOC_CTRL_{ADD,MAP_OLD,GET,SET}
    [ DN ] [media] uvcvideo: Make the API public
    [  N ] [media] uvcvideo: Register subdevices for each entity
    [ DN ] [media] v4l: Add M420 format definition
    [C N2] [media] v4l: Add mt9v032 sensor driver
    [ D  ] [media] v4l: Add V4L2_MBUS_FMT_JPEG_1X8 media bus format
    [C N2] [media] v4l: Add v4l2 subdev driver for S5P/EXYNOS4 MIPI-CSI receivers
    [    ] [media] V4L: soc-camera: add a livecrop host operation
    [    ] [media] V4L: soc-camera: add a new packing for YUV 4:2:0 type formats
    [    ] [media] V4L: soc-camera: add JPEG support
    [    ] [media] V4L: soc-camera: add MIPI bus flags
    [    ] [media] V4L: soc-camera: add more format look-up entries
    [ D  ] [media] zoran: Drop unused module parameters encoder and decoder
    [ D  ] [media] feature-removal-schedule: change in how radio device nodes are handled
    [    ] [media] imon: support for 0x46 0xffdc imon vfd
    [    ] [media] mceusb: support I-O Data GV-MC7/RCKIT

Die kleinen Perlen: Storage, Staging, USB, ...

Platform

    [    ] acer-wmi: support to set communication device state by new wmid method
    [C N1] platform/oaktrail: ACPI EC Extra driver for Oaktrail
    [    ] support wlan hotkey on Acer Travelmate 5735Z
    [    ] wmi: Orphan ACPI-WMI driver
    [ D  ] thinkpad-acpi: handle HKEY 0x4010, 0x4011 events
    [ D  ] thinkpad-acpi: handle some new HKEY 0x60xx events

Storage

    [C   ] Allow setting of number of raw devices as a module parameter
    [    ] blkdev: Submit discard bio in batches in blkdev_issue_discard()
    [   1] blk-throttle: Make dispatch stats per cpu
    [    ] block: add a non-queueable flush flag
    [    ] block: hold queue if flush is running for non-queueable flush drive
    [    ] block: Remove extra discard_alignment from hd_struct.
    [    ] brd: export module parameters
    [ D  ] cciss: add cciss_tape_cmds module paramter
    [    ] dm table: allow targets to support discards internally
    [    ] libata-pmp: add support for Thermaltake BlackX Duet esata drive dock
    [    ] loop: export module parameters
    [    ] MAINTAINERS: Add patterns for pmic 8921 files to MSM subsystem
    [    ] MD: support initial bitmap creation in-kernel
    [    ] mfd: Add ASIC3 LED support
    [C N2] mfd: add DB5500 PRCMU driver
    [    ] mfd: Add omap-usbhs runtime PM support
    [   1] mfd: Add phoenix lite (twl6025) support to twl6030
    [C N1] mfd: Add pm8xxx irq support
    [C N ] mfd: Add Qualcomm PMIC 8921 core driver
    [C N1] mfd: Add rtc support to 88pm860x
    [C   ] mfd: Group NXP PCF50633* drivers together
    [C   ] mfd: Group TPSxxxxx power management chips together
    [C N3] MFD: TPS65910: Add new mfd device for TPS65910
    [    ] MFD: TPS65910: Add support for TPS65911 device
    [   9] mfd: update DB8500 PRCMU driver
    [    ] mmc: add MMC_QUIRK_DISABLE_CD
    [    ] mmc: add MMC_QUIRK_NONSTD_FUNC_IF
    [C N7] mmc: Add new VUB300 USB-to-SD/SDIO/MMC driver
    [    ] mmc: Add PCI fixup quirks for Ricoh 1180:e823 reader
    [    ] mmc: add runtime and system power-management support to the MMCIF driver
    [    ] mmc: Add runtime and system-wide PM to the TMIO MMC driver
    [ DN1] mmc: core: Add mmc CMD+ACMD passthrough ioctl
    [    ] mmc: core: Block CMD23 support for UHS104/SDXC cards.
    [ DN1] mmc: MMC boot partitions support.
    [    ] mmc: quirks: Add/remove quirks conditional support.
    [    ] mmc: quirks: Extends card quirks with MMC/SD quirks matching the CID.
    [    ] mmc: quirks: Support for block quirks.
    [    ] mmc: Reliable write support.
    [   1] mmc: sd: add support for driver type selection
    [   1] mmc: sd: add support for signal voltage switch procedure
    [   1] mmc: sd: add support for tuning during uhs initialization
    [    ] mmc: sd: add support for uhs bus speed mode selection
    [    ] mmc: sdhci: Add pre and post reset processing for chip specific reset
    [    ] mmc: sdhci: add support for programmable clock mode
    [    ] mmc: sdhci: add support for retuning mode 1
    [    ] mmc: sdhci: Auto-CMD23 support.
    [    ] mmc: sdhci: Fix read-only detection with JMicron 388 chip
    [    ] mmc: sdhci: Implement MMC_CAP_CMD23 for SDHCI.
    [C   ] mtd: always build partitioning support
    [    ] mtd: cmdset_0002: add CFI 1.5 support for S29GL-S
    [CD  ] mtd: kill CONFIG_MTD_PARTITIONS
    [    ] mtd: m25p80: Add Numonyx m25px32 family
    [    ] mtd: m25p80: Add Spansion S25FL256S
    [    ] mtd: m25p80: Add Spansion S25FL512S, S70FL01GS
    [    ] mtd: m25p80: add support for the MX25L1606E chip
    [    ] mtd: mxc_nand: add support for multiple chips on V21 devices
    [   1] pata_at91: SMC settings calculation bugfixes, support for t6z and IORDY
    [C N1] RDMA: Add netlink infrastructure
    [    ] SATA: enable non-queueable flush flag
    [    ] SCSI: be2iscsi: update version
    [    ] SCSI: bnx2i: Optimized the iSCSI offload performance
    [    ] SCSI: hpsa: add P2000 to list of shared SAS devices
    [    ] SCSI: ipr: Driver version 2.5.2
    [    ] SCSI: ipr: improve interrupt service routine performance
    [    ] SCSI: iterate over devices individually for /proc/scsi/scsi
    [    ] SCSI: libsas: Add option for SATA soft reset
    [   1] SCSI: lpfc 8.3.23: BSG additions and fixes
    [   4] SCSI: lpfc 8.3.23: Debugfs enhancements
    [    ] SCSI: lpfc 8.3.23: Update driver version to 8.3.23
    [   1] SCSI: lpfc 8.3.24: Add request-firmware support
    [   9] SCSI: lpfc 8.3.24: Add resource extent support
    [   9] SCSI: lpfc 8.3.24: Extend BSG infrastructure and add link diagnostics
    [    ] SCSI: lpfc 8.3.24: Extended hardware support and support dump images
    [   2] SCSI: lpfc 8.3.24: Miscellaneous Fixes and Corrections
    [    ] SCSI: MAINTAINERS: Add drivers/target/ entry
    [    ] SCSI: MAINTAINERS update for SCSI (new email address)
    [    ] SCSI: megaraid_sas: Add 1078 OCR support
    [ D  ] SCSI: megaraid_sas: Version and Changelog update
    [    ] SCSI: mpt2sas: Driver version upgrade 08.100.00.02
    [   4] SCSI: mpt2sas : WarpDrive New product SSS6200 support added
    [    ] SCSI: mptfusion: Bump version 3.4.19
    [C  2] SCSI: mvsas: add support for Task collector mode and fixed relative bugs
    [    ] SCSI: qla2xxx: Add the ql2xdontresethba module_param.
    [    ] SCSI: qla2xxx: Allow an override of the registered maximum LUN.
    [    ] SCSI: qla2xxx: Update version number to 8.03.07.03-k.
    [  N1] SCSI: qla4xxx: Added vendor specific sysfs attributes
    [    ] SCSI: qla4xxx: Update driver version to 5.02.00-k7
    [    ] SCSI: Retrieve the Caching mode page (version 2)
    [    ] SCSI: scsi_dh_alua: Attach to UNAVAILABLE/OFFLINE AAS devices
    [  N ] TPS65911: Comparator: Add comparator driver
    [    ] UBI: switch to dynamic printks

Staging

    [   2] ath6kl: add support for AR6003 v2.1.1
    [    ] comedi vmk80xx: support comedi auto-configuration
    [   1] gma500: Add a gtt allocator
    [   4] gma500: Add support for inserting and removing pages from the GART
    [C   ] IIO: DAC: AD5791: Add support for the AD5760/AD5780 High Resolution DACs
    [C   ] IIO: DDS: AD9834: Add support for AD9837 and AD9838 DDS devices
    [    ] IIO: Documentation: Add ABI documentatio for gyro quadrature correction
    [    ] intel_sst: add Master Volume
    [    ] intel_sst: Headphone Automute support
    [   2] intel_sst: Line out support
    [    ] intel_sst: move jack detection related configs to init time
    [   1] intel_sst: MSIC codec power optimisation
    [    ] intel_sst: parameter tuning ioctl
    [  N5] intel_sst: rework jack implementation
    [   1] intel_sst: Save audio state across D3 on Medfield
    [    ] staging: brcm80211: Added support to change roaming parameters from brcmfmac driver
    [    ] staging: brcm80211: Added support to change scan times from brcmfmac driver
    [    ] staging: brcm80211: cleaned up TODO file
    [    ] staging: brcm80211: moved several README items to website
    [    ] staging: brcm80211: revised README
    [    ] staging: brcm80211: unified README files
    [    ] staging: gma500: add framebuffer setup
    [    ] staging: gma500: Add Moorestown backlight support
    [    ] staging: gma500: Add moorestown config structures
    [  N3] staging: gma500: Add moorestown lvds driver code
    [    ] staging: gma500: Add moorestown specific data to the device structure
    [    ] staging: gma500: begin adding Moorestown support
    [    ] staging: gma500: enable Moorestown CRTC handling
    [    ] staging: gma500: enable the 2D op stuff
    [C N1] staging: IIO: ADC: New driver for the AD7780 / AD7781 24-bit Sigma-Delta ADC
    [   3] staging:iio: Add ability to allocate private data space to iio_allocate_device
    [C  1] staging:iio: Add infrastructure for irq_chip based triggers
    [C N1] staging: IIO: DAC: New driver for AD5791/AD5781 High Resolution Voltage Output DACs
    [C N1] staging: IIO: DAC: New driver for the AD5504 and AD55041 High Voltage DACs
    [   1] staging:iio:documenation partial update.
    [    ] staging:iio:documentation make read_size signed to allow for errors.
    [C  1] staging:iio:imu:adis16350 etc support into adis16400 driver.
    [C   ] staging:iio:imu:adis16400 add support for adis16300
    [C  3] staging:iio:imu remove adis16300 driver.
    [C  3] staging:iio:imu remove old adis16350. Support now in adis16400 driver.
    [C   ] staging:iio:max1363 add new 2 channels parts form maxim, 11644-7
    [    ] Staging: iio: oaktrail AK8975 support via IIO
    [C N3] staging: iio: TAOS tsl258x: Device driver
    [C N3] Staging: initial version of the nvec driver
    [  N ] staging/mei: AMT Watchdog
    [  N ] staging/mei: Hardware and MEI driver internal struct definition
    [  N4] staging/mei: Interrupt handling.
    [  N ] staging/mei: MEI Driver documentations
    [  N2] staging/mei: MEI driver init flow.
    [  N ] staging/mei: mei.h defining user space interface
    [  N1] staging/mei: MEI link layer
    [    ] staging: sm7xx: minor cleanup
    [    ] staging: sm7xx: Use kernel framebuffer mode setting
    [C   ] staging: usbip: edit Kconfig and rename CONFIG options
    [    ] staging: usbip: userspace: update module name references

USB

    [C   ] ARM: EXYNOS4: Add usb ehci device to the NURI board
    [C N ] ARM: S5P: Add usb ehci device
    [    ] ehci: workaround for pci quirk timeout on ExoPC
    [   1] Intel xhci: Limit number of active endpoints to 64.
    [    ] option: add Alcatel X200 to sendsetup blacklist
    [    ] option: add Prolink PH300 modem IDs
    [    ] option: add Zoom 4597 modem USB IDs
    [C N5] USB: add Freescale USB OTG Transceiver driver
    [C N ] USB: Add initial S5P EHCI driver
    [    ] USB: cdc-acm: Adding second ACM channel support for Nokia E7 and C7
    [    ] USB: CP210x Add 4 Device IDs for AC-Services Devices
    [ D  ] USB: documentation update for the pre_reset method
    [    ] USB: don't let the hub driver prevent system sleep
    [C N ] USB: EHCI: Add bus glue for GRLIB GRUSBHC controller
    [C N ] USB: ehci: add bus glue for the Atheros AR71XX/AR724X/AR91XX SoCs
    [   1] USB: EHCI: Support controllers with big endian capability regs
    [ D  ] USB: Fix up URB error codes to reflect implementation.
    [   1] USB: fsl_udc_core: support device mode of MPC5121E DR USB Controller
    [C N4] USB: Gadget: Add Samsung S3C24XX USB High-Speed controller driver
    [   1] USB: ldusb: add several new devices
    [    ] USB: moto_modem: Add USB identifier for the Motorola VE240.
    [C   ] usb: musb: allow musb and glue layers to be modules
    [C   ] usb: musb: ux500: add configuration and build options for ux500 dma
    [  N1] usb: musb: ux500: add dma glue layer for ux500
    [C N ] USB: ohci: add bus glue for the Atheros AR71XX/AR7240 SoCs
    [    ] USB: option Add blacklist for ZTE K3765-Z (19d2:2002)
    [    ] USB: option: add support for Huawei E353 device
    [    ] USB: OTG: msm: Add PHY suspend support for MSM8960
    [   1] USB: OTG: msm: Implement charger detection
    [C   ] usb: plusb: Add support for PL-25A1
    [    ] usb: renesas_usbhs: add autonomy mode
    [C N5] usb: renesas_usbhs: Add Renesas USBHS common code
    [C N3] usb: renesas_usbhs: Add Renesas USBHS Gadget
    [    ] USB: serial: add another 4N-GALAXY.DE PID to ftdi_sio driver
    [C   ] USB: sl811: add Kconfig option for ISOCHRONOUS mode
    [ D  ] usb-storage: Correct adjust_quirks to include latest flags
    [C  3] USB: UHCI: Add support for big endian descriptors
    [C   ] USB: UHCI: Add support for big endian mmio
    [C N ] USB: UHCI: Add support for GRLIB GRUSBHC controller
    [C   ] USB: UHCI: Support big endian GRUSBHC HC
    [C   ] USB: UHCI: Support non-PCI host controllers
    [    ] xHCI 1.0: Block Interrupts for Isoch transfer
    [   6] xhci: Make xHCI driver endian-safe
    [    ] xHCI: Set link state support
    [    ] xHCI: warm reset support

Various

    [    ] 8250_pci: Add support for the Digi/IBM PCIe 2-port Adapter
    [C   ] ARM: bcmring: convert to sp804 clocksource
    [C  1] basic_mmio_gpio: split into a gpio library and platform device
    [C N ] clocksource: add common i8253 PIT clocksource
    [C N ] clocksource: add common mmio clocksource
    [C   ] clocksource: convert ARM 32-bit down counting clocksources
    [C  1] clocksource: convert ARM 32-bit up counting clocksources
    [C N ] clocksource: convert footbridge to generic i8253 clocksource
    [C   ] clocksource: convert Integrator/AP 16-bit down counting clocksource
    [C   ] clocksource: convert mips to generic i8253 clocksource
    [C   ] clocksource: convert MXS timrotv2 to 32-bit down counting clocksource
    [C   ] clocksource: convert OMAP1 to 32-bit down counting clocksource
    [C   ] clocksource: convert SPEAr platforms 16-bit up counting clocksource
    [C   ] clocksource: convert W90x900 24-bit down counting clocksource
    [C   ] clocksource: convert x86 to generic i8253 clocksource
    [ D  ] dmaengine: Add API documentation for slave dma usage
    [  N ] dmaengine: add TODO items for future work on dma drivers
    [   1] dmaengine: at_hdmac: add cyclic DMA operation support
    [    ] dmaengine: at_hdmac: specialize AHB interfaces to optimize transfers
    [ D 1] driver core: Add the device driver-model structures to kerneldoc
    [ D  ] driver core: remove the driver-model structures from the documentation
    [CDN3] driver: Google EFI SMI
    [CDN ] driver: Google Memory Console
    [C   ] drivers/leds/leds-pca9532.c: add gpio capability
    [    ] drivers/rtc/rtc-ds1307.c: add support for RTC device pt7c4338
    [    ] firewire: sbp2: parallelize login, reconnect, logout
    [  N ] gpio: add trace events for setting direction and value
    [C   ] gpio: move Nomadik GPIO driver to drivers/gpio
    [C   ] gpio: Move the exynos4 GPIO to drivers/gpio
    [C   ] gpio: Move the s5pc100 GPIO to drivers/gpio
    [C   ] gpio: Move the s5pv210 GPIO to drivers/gpio
    [C   ] gpio: Move to Samsung common GPIO library to drivers/gpio
    [   1] gpio/pca953x: Add support for pca9574 and pca9575 devices
    [C   ] gpio/pch_gpio: Support new device ML7223
    [C   ] GPIO: TPS65910: Move driver to drivers/gpio/
    [C N3] Intel PTI implementaiton of MIPI 1149.7.
    [C   ] Introduce CONFIG_GOOGLE_FIRMWARE
    [  N ] isp1704_charger: Allow board specific powering routine
    [ DN ] Kernel documentation for the PTI feature.
    [    ] langwell_gpio: add runtime pm support
    [C N ] leds: Add ASIC3 LED support
    [C   ] leds: remove the leds-h1940 driver
    [C N2] mach-ux500: voltage domain regulators for DB8500
    [    ] memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION
    [C N4] misc: Add CARMA DATA-FPGA Access Driver
    [C N3] misc: Add CARMA DATA-FPGA Programmer support
    [C N2] n_tracerouter and n_tracesink ldisc additions.
    [C   ] pch_dma: Support new device ML7223 IOH
    [C  1] pch_phub: Support new device ML7223
    [C   ] pch_uart: Support new device ML7223 IOH
    [C N1] power_supply: Add driver for MAX8903 charger
    [C N2] ptp: Added a clock driver for the IXP46x.
    [CDN2] ptp: Added a clock that uses the eTSEC found on the MPC85xx.
    [   1] regulator: tps65911: Add new chip version
    [C N ] rtc: add basic support for ST M41T93 SPI RTC
    [C N ] rtc: add EM3027 rtc driver
    [C N1] rtc: add rv3029c2 RTC support
    [C N1] rtc: add support for spear rtc
    [C N1] rtc: add support for the RTC in VIA VT8500 and compatibles
    [C   ] RTC: Disable CONFIG_RTC_CLASS from being built as a module
    [    ] serial: 8250_pci: add support for Cronyx Omega PCI multiserial board.
    [C N2] SERIAL: Lantiq: Add driver for MIPS Lantiq SOCs.
    [C   ] spi/pl022: mark driver non-experimental
    [C N2] spi/spi_bfin_sport: new driver for a SPI bus via the Blackfin SPORT peripheral
    [C N1] TPS65910: Add tps65910 regulator driver
    [  N ] TPS65910: GPIO: Add GPIO driver
    [  N ] TPS65910: IRQ: Add interrupt controller
    [    ] TPS65911: Add support for added GPIO lines
    [C   ] tty: Remove to support serial for S5P6442
    [C N3] tty/serial: add support for Xilinx PS UART
    [    ] uio_netx: Add support for netPLC cards
    [C N1] w1: add 1-wire (w1) DS2408 8-Channel Addressable Switch support
    [C N3] w1: add Maxim/Dallas DS2780 Stand-Alone Fuel Gauge IC support
    [C  1] w1: complete the 1-wire (w1) ds1wm driver search algorithm

Nachzügler

Die Kernel-Entwickler pflegen das Gros der Änderungen für eine neue Kernel-Version in der Merge Window genannten Phase am Anfang des Entwicklungszyklus in das Quellcodeverwaltungssystem ein. Dadurch stehen die wesentlichen Neuerungen einer neuen Kernel-Version bereits Wochen vor deren Freigabe fest. Gelegentlich nehmen die Kernel-Entwickler in der zweiten Phase des Entwicklungszyklus aber noch einige kleinere, zumeist nicht ganz so wichtige Änderungen der Kategorie "Die kleineren Perlen" in den Linux-Kernel auf – teilweise, nachdem das Kernel-Log über die entsprechenden Subsysteme des Kernels bereits berichtet hat.

Einige solcher Nachzügler gab es diesmal bei den Netzwerktreibern und Dateisystemen:

    [    ] ath5k: Disable fast channel switching by default
    [C   ] cifs: mark CONFIG_CIFS_NFSD_EXPORT as BROKEN
    [ D  ] Documentation/Changes: remove some really obsolete text
    [ D  ] Documentation: fix cgroup blkio throttle filenames
    [ D  ] Documentation/spinlocks.txt: Remove reference to sti()/cli()
    [ D  ] Documentation: update CodingStyle memory allocators
    [    ] drbd: fix limit define, we support 1 PiByte now
    [ D  ] FS-Cache: Add a helper to bulk uncache pages on an inode
    [    ] iwlagn: use cts-to-self protection on 5000 adapters series
    [C N1] net/usb: Add Samsung Kalmia driver for Samsung GT-B3730
    [ D  ] PCI: conditional resource-reallocation through kernel parameter pci=realloc
    [    ] proc: restrict access to /proc/PID/io
    [    ] x86: Don't use the EFI reboot method by default
    [    ] x86, reboot: Acer Aspire One A110 reboot quirk

Quelle und Links : http://www.heise.de/open/artikel/Kernel-Log-Was-3-0-bringt-4-Treiber-1275477.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Microsoft trägt viele Änderungen zum Linux-Kernel 3.0 bei
« Antwort #208 am: 16 Juli, 2011, 13:48 »
Mit 343 Änderungen führt der Microsoft-Entwickler K. Y. Srinivasan eine von LWN.net erstellte Liste der Entwickler an, die im aktuellen, Linux 3.0 vorbereitenden Entwicklungszyklus die meisten Änderungen beigesteuert haben. Zusammen mit einigen anderen "Changesets" kommt Microsoft so auf 361 Änderungen und erreicht damit den siebten Platz beim Vergleich der Firmen und Gruppen, die zum Linux-Kernel beitragen. Zum Vergleich: Unabhängig arbeitende Entwickler haben zu Linux 3.0 1085 Changesets beigesteuert, die von Red Hat 1000 und jene von Intel 839.

Diese Zahlen nennt eine am Donnerstag bei LWN.net veröffentlichter Artikel, auf den bis zum nächsten Donnerstag allerdings nur Abonnenten der angesehenen Webseite Zugriff haben; in Blog-Einträgen werden die Zahlen allerdings schon kommentiert. Ähnliche Analysen hat LWN.net zu allen jüngst veröffentlichten Kernel vorgenommen; etwa zu 2.6.39 und 2.6.38. Autor, Kernel-Entwickler und LWN.net-Gründer Jonathan Corbet hat solche Erhebungen auch schon zusammen mit der Linux Foundation durchgeführt und zu Studien aufbereitet. Schon in dem Rahmen wies heise open darauf hin, dass bei der Interpretation der Zahlen Umsicht angebracht ist. Ein Kritikpunkt: In die Analysen gehen auch Änderungen am Staging-Bereich ein, der Code enthält, der die Qualitätsstandards seiner Entwickler oder der Kernel-Entwickler nicht erfüllt – diese auszuräumen zieht besonders viele Änderungen nach sich.

Um Staging-Code geht es auch hier, denn Srinivasan hat den Treiber für Microsofts Virtualisierungsschnittstelle HyperV verbessert, den das Unternehmen vor zwei Jahren freigegeben hat. Mit dem ging es lange nicht sonderlich voran; zweimal hatte Staging-Betreuer Greg Kroah-Hartman sogar schon gedroht, die Treiber wieder aus dem Staging-Bereich des Kernels herauszunehmen. Vor einigen Monaten stieg allerdings plötzlich die Aktivität der Microsoft-Entwickler erheblich: Sie begannen, die bekannten Qualitätsmängel zu beseitigen, damit der Treiber den Staging-Bereich irgendwann verlassen kann; dafür lobte Staging-Betreuer Kroh-Hartman das Unternehmen sogar kürzlich im Rahmen der Entwicklung des Linux-Kernels 3.0, der in den nächsten Tagen erscheinen dürfte.

Srinivasan schneidet in den eingangs erwähnten Aufstellungen zudem besonders gut ab, weil er viele kleine Änderungen vorgenommen hat. Genau so wünschen es sich die Kernel-Entwickler auch; eine Änderung, die nur eine Zeile modifiziert, zählt dann jedoch genauso viel wie eine riesige Änderung, die einen Megabyte groß ist. Bei den von LWN.net ebenfalls vorgekommenen Auswertungen zur Zahl der geänderten Zeilen Code liegen Srinivasan und Microsoft daher weiter hinten. Microsoft-Entwickler etwa haben laut LWN.net 11.564 Zeilen Code verändert (1,3 Prozent) – vorne liegt Intel mit 163.232 (18,1 Prozent). Auch Intels Wert gibt Anlass zu Kritik, denn zu der hohen Zahl trägt der bei 3.0 neue Treiber isci bei, der in einer unsauberen Form aufgenommen wurde und in den folgenden Commits erheblich umgebaut wurde (etwa 1). Damit sollte die Änderungs-Historie erhalten bleiben – nebenbei scheint das aber auch zu einem besseren Abschneiden in der LWN.net-Auswertung zu führen.

Quelle : www.heise.de

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )

Offline SiLæncer

  • Cheff-Cubie
  • *****
  • Beiträge: 191383
  • Ohne Input kein Output
    • DVB-Cube
Kernel-Log: Noch mehr UEFI-Probleme
« Antwort #209 am: 18 Juli, 2011, 18:14 »
Einige mit Windows ausgelieferte UEFI-Systeme nutzen eine als Fallback gedachte Zweitinstallation des Bootloaders, wodurch ein korrekt installiertes UEFI-Linux nicht startet. Außerdem: Google hat seine BadRAM-Patches nun doch veröffentlicht, bei Google+ ist ein Linus Torvalds aufgetaucht und Lennart Poettering hat weitere Blog-Einträge zu Systemd verfasst.

Matthew Garrett wühlt sich weiter durch das Dickicht um das (U)EFI/(Unified) Extensible Firmware Interface, das Funktionen des BIOS ersetzt und in den vergangenen Wochen schon mehrfach Thema im Kernel-Log war (u. a. 1, 2). So hat er Patches ausgearbeitet, welche die x86- und IA64-EFI-Implementationen des Kernels zusammenlegen, um Code-Dopplungen zu beseitigen und eine Architektur-unabhängige Lösung zu schaffen, die auch für ARM- und MIPS-Plattformen geeignet ist.

In seinem Blog beschreibt er ein weiteres großes Probleme mit (U)EFI. Dort lobt er, dass EFI Mechanismen vorsieht, damit sich der Start-Code unterschiedlicher Betriebssysteme nicht ins Gehege kommt: Jeder Betriebssystemhersteller muss seinen Bootloader in einem eigenen, den Hersteller zugeordneten Bereich der EFI-Systempartition ablegen (beispielsweise unter EFI/microsoft) und ihn anschließend in den "EFI Boot Variables" im NVRAM registrieren. Der UEFI-Bootcode der Hardware kann dem Anwender so ein Menü zeigen, wo er zwischen den installierten Systemen wählen kann.

Die UEFI-Spezifikation erlaubt ab Version 2.3 allerdings, dass der UEFI-Bootcode wie bei Wechseldatenträger an einer bestimmten Stelle der EFI-Systempartition (etwa EFI/boot/bootx64.efi bei x86-64-Systemen) nach einem Boot-Loader sehen darf, wenn im NVRAM keine Systeme spezifiziert sind. Aktuelle Windows-Version installieren ihren Boot-Loader als Fallback dorthin, sofern dort noch kein Boot-Loader liegt. Dadurch sollte Windows auch noch starten, wenn die EFI-Boot-Einträge im NVRAM verloren gegangen sind.

Nun testen Hardware-Hersteller aber häufig nur mit Windows, wie Garrett schon in diversen Blog-Einträgen zu anderen Problemen angemerkt hat. Es sei daher nicht überraschend, dass einige Systeme die Einträge in den EFI-Boot-Variablen ignorieren und das Betriebssystem immer über den Fallback-Bootloader aufrufen. Bei mit Windows ausgelieferten Systemen dürfte das dessen Boot-Loader sein; ein korrekt installiertes Linux ist daher über die in UEFI vorgesehenen Mechanismen schlicht nicht startbar.

Als Lösung ist Garrett bislang nur ein bei der Linux-Installation eingerichteter "stub bootloader" eingefallen, der die Hersteller-spezifischen Verzeichnisse auf der EFI-Systempartition nach deren Bootloadern absucht und diese beim Start zur Auswahl anbietet.

Kernel-Versionsstatus

Bereits vor einer Woche hat Greg Kroah-Hartman die Longterm-Kernel 2.6.32.43 und 2.6.33.16 sowie die Stable-Kernel 2.6.39.3 veröffentlicht. Bei zwei davon findet sich der üblichen Text "All users of the [...] kernel series must upgrade", der zum Wechsel auf die neue Version rät, ohne klarzustellen, ob die neuen Versionen Sicherheitslücken beseitigt.

Kernel-Log-Staccato

Kernel

Beim kürzlich gestarteten Google Plus ist ein Linus Torvalds aufgetaucht. Viels spricht für die Authentizität des Accounts, aber mit hundertprozentiger Sicherheit lässt sich natürlich nicht sagen, ob er es wirklich selbst ist…

Christoph Hellwig hat das "XFS Status Update" für Juni 2011 veröffentlicht.

Suse-Entwickler Michal Marek beschreibt in einem Blog-Eintrag einige Verbesserungen für libzypp, über die sich ab OpenSuse 12.1 festlegen lassen soll, ob oder welche alten Kernel nach einem Kernel-Update entfernt werden.

Unterstützung für Grafikhardware

Nvidia hat die Version 275.19 seiner proprietären Linux-Grafiktreiber freigegeben (x86-32, x86-64); sie beseitigt einige Fehler und bringt Unterstützung für die GeForce GT 540M. Nvidia hat zudem die Beta-Treiber 280.04 veröffentlicht, die eine als "preliminary" eingestufte Unterstützung für den X-Server 1.11 bieten, der sich noch in Entwicklung befindet.

Jeremy Huddleston hat den X-Server 1.10.3 veröffentlicht, der einige Fehlerkorrekturen bringt.

Kernel-Umland ("Plumbing layer"), Userland-Treiber, Entwicklertools, ...

Hand de Goede hat die erste "offizielle" Version von usbredir freigegeben, mit dem sich einzelne USB-Geräte an andere Systeme – etwa virtuelle Maschinen – weitergeben lassen. Die aktuelle API des USB Redirection Protocol gilt mit dieser als 0.3 bezeichneten Version als eingefroren, Erweiterungen sind aber weiterhin möglich.

Lennart Poettering hat Patches zur Diskussion gestellt, welche die Multiseat-Unterstützung im X-Server ausbauen; diese Verbesserungen greifen auf Funktionen zurück, die Systemd ab Version 30 für Systeme mit mehren parallel aktiven Anwendern bietet.

Im neunten Teil der Blog-Reihe "systemd for Administrators" beschreibt Poettering die Probleme, welche die Konfiguration über Dateien in den Verzeichnissen /etc/sysconfig (Red Hat, Suse, ...) und /etc/default (Debian-Welt) mit sich bringen; in dem Rahmen beschreibt er, wie bessere Lösungen aussehen. Der zweite Teil der Serie "systemd for Developers" erläutert die Socket Activation am Beispiel von Cups.

David Zeuthen hat in seinem Blog eine fünfteilige Artikelserie "Writing a C library" veröffentlicht (1, 2, 3, 4, 5).

Die Libvirt-Entwickler haben die Version 0.9.3 ihrer Bibliothek zum Zugriff auf verschiedenen Virtualisierungslösungen freigegeben.

Die unter anderem von GnuPG verwendete Libgcrypt kann seit der kürzlich freigegeben Version 1.5.0 die AES-NI-Instruktuinen neuerer Intel-Prozessoren nutzen.
Stephen Hemminger hat die Version 2.6.39 der Netzwerkwerkzeug-Sammlung iproute2 freigegeben.

Die GCC ist in Version 4.6.1 erscheinen.

Das KVM-Blog beschreibt einige Eigenschaften des noch in Entwicklung befindlichen Dateisystems QED (Qemu Enhanced Disk Format).

LKML-Diskussionen

Nao Nishijima hat einen überarbeitete Version seiner Patches zur Diskussion gestellt, mit denen man Datenträgern Alias-Namen zuweisen kann, die sich auch nach einem Neustart oder Umbau der Hardware nicht ändern. Der Ansatz ist weiter umstritten; LWN.net hatte die Probleme einer früheren Patch-Serie in einem Artikel erläutert.

Nancy Yuen hat einige von Google genutzte BadRAM-Implementation zur Begutachtung an die LKML geschickt. An diesen Patches hatten mehrere Entwickler Interesse bekundet, nachdem einige Google-Entwickler die im letzten Kernel-Log erwähnten BadRAM-Patches von Stefan Assmann als zu unflexibel für Googles Zwecke kritisiert hatten.

Quelle und Links : http://www.heise.de/open/artikel/Kernel-Log-Noch-mehr-UEFI-Probleme-1281100.html

Arbeits.- Testrechner :

Intel® Core™ i7-6700 (4 x 3.40 GHz / 4.00 GHz)
16 GB (2 x 8 GB) DDR4 SDRAM 2133 MHz
250 GB SSD Samsung 750 EVO / 1 TB HDD
ZOTAC Geforce GTX 1080TI AMPExtreme Core Edition 11GB GDDR5
MSI Z170A PC Mate Mainboard
DVD-Brenner Laufwerk
Microsoft Windows 10 Home 64Bit

TT S2 3200 ( BDA Treiber 5.0.1.8 ) + Terratec Cinergy 1200 C ( BDA Treiber 4.8.3.1.8 )