Arnd Bergmann, responsável pelos pacotes do núcleo na SUSE, fez uma nova tentativa de limpeza do núcleo Linux de código para suporte a plataformas ARM obsoletas, que estão quase não sendo utilizadas e dificultam a manutenção de subsistemas atuais. A primeira tentativa foi realizada em agosto de 2024, mas não obteve sucesso, apesar do consentimento dos desenvolvedores do núcleo para fazer a limpeza em 2025 ou 2026, após a formação das respectivas ramificações LTS do núcleo. No segundo conjunto de patches, Arnd atualizou as informações e adicionou avisos nos arquivos de configuração sobre a transição das plataformas para a classe obsoleta. A remoção efetiva das plataformas marcadas está prevista para o núcleo 7.4, que deve ser lançado no início de 2027.
Estão planejadas para remoção:
- Todos os arquivos de suporte a plataformas que não foram convertidos para usar a estrutura Device Tree. A exceção será feita apenas para as plataformas OMAP1 e S3C (ARCH_S3C64XX), uma vez que o código para suporte ao OMAP1 está sendo convertido para Device Tree, enquanto as placas S3C ainda estão sendo ativamente utilizadas. Além disso, o suporte à estrutura ATAGS (ARM Tag-Area), que era utilizada para transmitir informações de configuração antes do Device Tree, será desabilitado por padrão.
- Suporte ao conjunto expandido de instruções iWMMXt, que foi declarado obsoleto a partir do GCC 14.
- A arquitetura ARMv6/ARM1136r0, que é utilizada em SoCs como ARM1136r0p (NXP i.MX31) e OMAP24xx (Nokia N8xx). A remoção não afeta a arquitetura ARMv6K (ARM1136r1/ARM1176).
- Microcontroladores baseados em processadores Cortex-M3/M4/M7 (stm32, imxrt, lpc18xx, samv7) — os últimos chips suportados no núcleo sem unidade de gerenciamento de memória (MMU).
- RiscPC — a mais antiga das plataformas suportadas no núcleo.
- Plataformas LSI Axxia.
- Emulador para operações de ponto flutuante NWFPE (No Floating Point Emulator), OABI e modo de compatibilidade com OABI (OABI_COMPAT), permitindo a execução de arquivos binários compilados para OABI, usando um núcleo com EABI. Esses subsistemas são utilizados somente em dispositivos com processadores StrongARM baseados na arquitetura ARMv4 e serão removidos até que o suporte ao StrongARM seja eliminado.
- A estrutura param_struct, utilizada antes do ATAGS (ARM Tag-Area), foi declarada obsoleta em 2001 e programada para remoção já em 2006.
- Marcado como obsoleto e com suporte não funcional (broken) para o modo BE8 (big-endian ARMv7), que ainda não está previsto para remoção, pois é interessante para testar componentes do espaço do usuário em sistemas big-endian. O suporte para a variante big-endian do ARMv5 é mantido, pois é utilizado em processadores ixp4xx que ainda estão em uso.
Além disso, no kernel Linux 7.3, pretende-se remover o sistema de arquivos EFS, que foi utilizado em versões anteriores do sistema operacional IRIX, deixou de ser usado há cerca de 30 anos e não recebeu suporte por mais de 20 anos. Para aqueles que precisam acessar informações em partições com EFS, existem utilitários que funcionam no espaço do usuário.
Também começou o trabalho para interromper o uso, no núcleo, da interface de 32 bits rdmsr() para acessar registros MSR (Model Specific Register) na CPU, permitindo ler separadamente o conteúdo dos valores de 32 bits superiores e inferiores de registros MSR de 64 bits. Está previsto remover completamente o código da interface de 32 bits e migrar o kernel para a interface de 64 bits rdmsrq(), o que permitirá substituir todas as macros de alto nível que acessam MSR por funções inline.
Fonte: opennet.ru
