Arnd Bergmann, der für die Kernel-Pakete bei SUSE verantwortlich ist, hat einen weiteren Versuch unternommen, den Linux-Kernel von Code zur Unterstützung veralteter ARM-Plattformen zu befreien, die kaum noch verwendet werden und die Pflege aktueller Subsysteme erschweren. Der erste Versuch fand im August 2024 statt, scheiterte jedoch trotz der Zustimmung der Kernel-Entwickler, die Bereinigung in den Jahren 2025 oder 2026 nach Bildung entsprechender LTS-Zweige des Kernels durchzuführen. Im zweiten Patch-Set hat Arnd die Informationen aktualisiert und Warnhinweise in die Konfigurationsdateien hinzugefügt, die auf die Einstufung der Plattformen als veraltet hinweisen. Tatsächlich wird vorgeschlagen, die gekennzeichneten Plattformen im Kernel 7.4 zu entfernen, der Anfang 2027 erwartet wird.
Geplante Löschungen:
- Alle Unterstützungdateien für Plattformen, die nicht auf die Verwendung der Device-Tree-Struktur umgestellt wurden. Ausnahmen werden nur für die OMAP1- und S3C-Plattformen (ARCH_S3C64XX) gemacht, da der Code zur Unterstützung von OMAP1 derzeit auf Device Tree umgestellt wird und S3C-Boards weiterhin aktiv genutzt werden. Darüber hinaus wird standardmäßig die Unterstützung der ATAGS-Struktur (ARM Tag-Area) deaktiviert, die zur Übertragung von Konfigurationsinformationen vor der Einführung des Device Tree verwendet wurde.
- Unterstützung für die erweiterte iWMMXt-Befehlssatzarchitektur, die ab GCC 14 als veraltet gilt.
- Die ARMv6/ARM1136r0-Architektur, die in SoCs wie ARM1136r0p (NXP i.MX31) und OMAP24xx (Nokia N8xx) verwendet wird. Die Entfernung betrifft nicht die ARMv6K-Architektur (ARM1136r1/ARM1176).
- Mikrocontroller auf Basis der Cortex-M3/M4/M7-Prozessoren (stm32, imxrt, lpc18xx, samv7) – die letzten Chips, die im Kernel ohne Speicherverwaltungseinheit (MMU) unterstützt werden.
- RiscPC – die älteste unterstützte Plattform im Kernel.
- LSI Axxia-Plattformen.
- Emulator für Gleitkommaoperationen NWFPE (No Floating Point Emulator), OABI und OABI-Kompatibilitätsmodus (OABI_COMPAT), der das Ausführen von Executables ermöglicht, die für OABI kompiliert wurden, unter Verwendung eines Kernels mit EABI. Diese Subsysteme kommen nur auf Geräten mit StrongARM-Prozessoren der ARMv4-Architektur zum Einsatz und werden bis zur Entfernung der Unterstützung für StrongARM im Kernel verbleiben.
- Die param_struct-Struktur, die bis zu ATAGS (ARM Tag-Area) verwendet wurde, wurde 2001 als veraltet erklärt und war bereits 2006 zur Entfernung angekündigt.
- Als veraltet und funktionsuntüchtig (broken) markiert, wird die Unterstützung des BE8-Modus (big-endian ARMv7) nicht entfernt, da sie für die Testung von Komponenten im Benutzerraum auf big-endian-Systemen weiterhin von Interesse ist. Die Unterstützung des big-endian ARMv5-Formats bleibt erhalten, da es in den verbreiteten ixp4xx-Prozessoren verwendet wird.
Darüber hinaus wird im Linux-Kernel 7.3 das EFS-Dateisystem entfernt, das in frühen Versionen des IRIX-Betriebssystems verwendet wurde, vor etwa 30 Jahren nicht mehr genutzt wurde und seit über 20 Jahren nicht mehr gepflegt wird. Für diejenigen, die Zugang zu Informationen auf EFS-Partitionen benötigen, stehen im Benutzerraum arbeitende Tools zur Verfügung.
Es wurde außerdem begonnen, die Verwendung des 32-Bit-Interfaces rdmsr() im Kernel für den Zugriff auf die MSR-Register (Model Specific Register) im CPU zu beenden. Dieses erlaubte bisher das separate Auslesen der oberen und unteren 32-Bit-Werte aus 64-Bit-MSR-Registern. Geplant ist die vollständige Entfernung des Codes für das 32-Bit-Interface und die Umstellung des Kernels auf das 64-Bit-Interface rdmsrq(), wodurch alle hochgradigen Makros, die auf MSR zugreifen, durch Inline-Funktionen ersetzt werden können.
Quelle: opennet.ru
