Principais inovações
- O mecanismo pidfd, que permite vincular um PID específico a um processo. O vínculo permanece ativo mesmo após a finalização do processo, para que o PID possa ser atribuído a ele em um reinício. Detalhes.
- Restrições de faixas de frequência no planejador de processos. Por exemplo, processos críticos podem ser iniciados com um limite mínimo de frequência (digamos, não inferior a 3 GHz), enquanto processos de baixa prioridade podem ser executados com um limite superior de frequência (por exemplo, não superior a 2 GHz). Detalhes.
- Suporte a GPUs da família AMD Navi (RX5700) no driver amdgpu. Toda a funcionalidade necessária foi implementada, incluindo codificação/decodificação de vídeo e gerenciamento de energia.
- Funcionamento completo em processadores compatíveis com x86 Zhaoxin, desenvolvidos em colaboração entre a VIA e o governo de Xangai.
- Subsistema de gerenciamento de energia através da tecnologia Intel Speed Select, característica de alguns processadores da família Xeon. A tecnologia é notável pela possibilidade de ajustes detalhados de desempenho para cada núcleo da CPU.
- Mecanismo energeticamente eficiente para o modo de espera de processos no espaço do usuário, utilizando instruções umwait para processadores Intel Tremont. Detalhes.
- O intervalo 0.0.0.0/8 foi autorizado para uso, proporcionando 16 milhões de novos endereços IPv4. Detalhes.
- Hiper-vetor flexível e leve ACRN, adequado para gerenciamento de sistemas IoT (Internet das Coisas). Detalhes.
A seguir, são listadas algumas outras alterações.
Parte principal do núcleo
- Suporte para compressão de firmware no formato xz, reduzindo o diretório /lib/firmware de ~420 MB para ~130 MB.
- Uma nova variante da chamada de sistema clone() com a capacidade de especificar um maior número de flags. Detalhes.
- Seleção automática de uma fonte maior para altas resoluções no console.
- Opção CONFIG_PREEMPT_RT, sinalizando a próxima integração do conjunto de patches RT na ramificação principal do núcleo.
Subsistema de arquivos
- Chamadas de sistema BULKSTAT e INUMBERS para XFS v5, além do início do trabalho na implementação de uma passagem em múltiplas threads pelos inodes.
- Btrfs agora utiliza somas de verificação rápidas (crc32c) em todas as arquiteturas.
- O sinal de imutabilidade é agora rigorosamente aplicado em arquivos abertos no Ext4. O suporte a buracos em diretórios foi implementado.
- O CEPH aprendeu a trabalhar com SELinux.
- O mecanismo smbdirect no CIFS não é mais considerado experimental. Foram adicionados algoritmos criptográficos para SMB3.1.1 GCM. A velocidade de abertura de arquivos foi aumentada.
- É possível armazenar arquivos de swap no F2FS, que funcionam em modo de acesso direto. A opção de desabilitar o coletor de lixo está disponível com checkpoint=disable.
- Clientes NFS podem estabelecer várias conexões TCP com o servidor usando a opção de montagem nconnect=X.
Subsistema de memória
- Cada dma-buf recebe um inode completo. A partir dos diretórios /proc/*/fd e /proc/*/map_files, é possível obter muitos detalhes sobre o uso de buffers shmem.
- O mecanismo smaps exibe informações individuais sobre memória anônima e compartilhada, bem como sobre o cache de arquivos no arquivo proc smaps_rollup.
- O uso de rbtree para swap_extent melhorou o desempenho em situações de uso intensivo de swap por múltiplos processos.
- /proc/meminfo exibe o número de páginas vmalloc.
- As capacidades da tools/vm/slabinfo foram ampliadas em termos de classificação de caches por grau de fragmentação.
Virtualização e segurança
- O driver virtio-iommu permite que dispositivos paravirtualizados enviem solicitações IOMMU sem a emulação de tabelas de endereços.
- O driver virtio-pmem fornece acesso a dispositivos de armazenamento através do espaço físico de endereços.
- Aceleração do acesso aos metadados para vhost. Para testes TX PPS, houve um aumento de 24% na velocidade.
- Para vhost_net, zerocopy está desabilitado por padrão.
- Chaves de criptografia podem ser anexadas a namespaces.
- Suporte ao xxhash — um algoritmo de hash extremamente rápido não criptográfico, cuja velocidade é limitada apenas pelo desempenho da memória.
Subsistema de Rede
- Suporte inicial a objetos nexthop, criados para melhorar a escalabilidade das rotas IPv4 e IPv6.
- O Netfilter aprendeu a descarregar a filtragem para dispositivos de aceleração de hardware. Suporte interno à rastreabilidade de conexões para pontes foi adicionado.
- Novo módulo de controle de tráfego, permitindo manipular cabeçalhos MPLS de pacotes.
- O subsistema isdn4linux foi removido.
- Ping LE disponível para Bluetooth.
Arquiteturas de hardware
- Novas plataformas e dispositivos ARM: Mediatek mt8183, Amlogic G12B, Kontron SMARC SoM, Google Cheza, devkit para Purism Librem5, Qualcomm Dragonboard 845c, Hugsun X99 TV Box, entre outros.
- Para x86, foi adicionado o mecanismo /proc//arch_status para exibir informações específicas da arquitetura, como o tempo da última utilização do AVX512.
- Melhorada a performance do VMX para KVM, com uma aceleração de 12% na velocidade do vmexit.
- Incluídas e atualizadas várias informações sobre os processadores Intel KabyLake, AmberLake, WhiskeyLake e Ice Lake.
- Compressão lzma e lzo para uImage no PowerPC.
- Virtualização virtio protegida para S390.
- Suporte a grandes páginas de memória para RISCV.
- Modo de viagem no tempo para Linux em modo de usuário (aceleração e desaceleração do tempo).
Drivers de dispositivos
- Reconhecimento de metadados HDR para drivers amdgpu e i915.
- Extensões de funcionalidade para os chips de vídeo Vega12 e Vega20 no amdgpu.
- Correção de gama multissegmentar para i915, bem como desligamento assíncrono da tela e uma série de novos firmwares.
- O driver Nouveau aprendeu a reconhecer chips da família TU116.
- Novos protocolos Bluetooth MediaTek MT7663U e MediaTek MT7668U.
- Descarregamento de TLS TX HW para Infiniband, além de expansão do monitoramento de hardware e temperatura.
- Reconhecimento de Elkhart Lake no driver HD Audio.
- Novos dispositivos de áudio e codecs: Conexant CX2072X, Cirrus Logic CS47L35/85/90, Cirrus Logic Madera, RT1011/1308.
- Driver Apple SPI para teclado e trackpad.
- No subsistema watchdog, é possível definir um limite de tempo para abrir /dev/watchdogN.
- O mecanismo de controle de frequência cpufreq agora suporta imx-cpufreq-dt e Raspberry Pi.
Fonte: linux.org.ru
