Aumentar o número da versão principal para 5 não significa grandes mudanças ou falhas de compatibilidade. Simplesmente ajuda nosso querido Linus Torvalds a manter a paz de espírito. Abaixo está uma lista de algumas mudanças e inovações.
Núcleo principal:
- O agendador de processos CFS em processadores assimétricos como ARM funciona de maneira diferente - primeiro ele carrega núcleos de baixo consumo de energia e com baixo consumo de energia.
- Por meio da API de rastreamento de eventos de arquivo fanotify, você pode receber notificações quando um arquivo é aberto para execução.
- Foi integrado o controlador cpuset, que pode ser usado para limitar grupos de processos com base no uso de CPU e nós NUMA.
- Está incluído suporte para os seguintes dispositivos ARM: Qualcomm QCS404, Allwinner T3, NXP/Freescale i.MX7ULP, NXP LS1028A, i.MX8, RDA Micro RDA8810PL, Rockchip Gru Scarlet, Allwinner Emlid Neutis N5 e muitos outros.
- Melhorias no subsistema ARM: memória hot-plug, proteção Meltdown e Spectre, endereçamento de memória de 52 bits, etc.
- Suporte para instrução WBNOINVD para x86-64.
Subsistema de memória:
- A substituição de tags de teste com baixo consumo de memória está disponível para a ferramenta KASAN em plataformas ARM64.
- A fragmentação da memória foi drasticamente reduzida (até 90%), resultando no melhor funcionamento do mecanismo Transparent HugePage.
- O desempenho do mremap(2) em grandes áreas de memória foi aumentado em até 20 vezes.
- No mecanismo KSM, jhash2 foi substituído por xxhash, devido ao qual a velocidade do KSM em sistemas de 64 bits aumentou 5 vezes.
- Melhorias no ZRam e OOM.
Bloquear dispositivos e sistemas de arquivos:
- O mecanismo blk-mq com um sistema multinível de filas de solicitações tornou-se o principal para dispositivos de bloco. Todo o código não-mq foi removido.
- Melhorias no suporte NVMe, especialmente em termos de operação de dispositivos na rede.
- Para Btrfs, é implementado suporte completo para arquivos de troca, bem como alteração do FSID sem reescrever metadados.
- Uma chamada ioctl foi adicionada ao F2FS para verificação adiada do FS via fsck.
- BinderFS integrado - um pseudo-FS para comunicação entre processos. Permite executar várias instâncias do Android no mesmo ambiente.
- Várias melhorias no CIFS: cache DFS, atributos estendidos, protocolo smb3.1.1.
- ZRam funciona de forma mais otimizada com dispositivos de troca não utilizados, economizando memória.
Segurança e virtualização:
- Adicionada a função hash Streebog (GOST 34.11-2012), desenvolvida pelo FSB da Federação Russa.
- Suporte para o algoritmo de criptografia Adiantum desenvolvido pelo Google para dispositivos de baixo consumo de energia.
- Algoritmos XChaCha12, XChaCha20 e NHPoly1305 incluídos.
- O tratamento de chamadas seccomp agora pode ser movido para o espaço do usuário.
- Para sistemas convidados KVM, o suporte para extensões Intel Processor Trace é implementado com degradação mínima de desempenho.
- Melhorias no subsistema KVM/Hyper-V.
- O driver virtio-gpu agora suporta simulação EDID para monitores virtuais.
- O driver virtio_blk implementa a chamada de descarte.
- Recursos de segurança implementados para memória NV com base nas especificações Intel DSM 1.8.
Drivers de dispositivo:
- Mudanças na API DRM para oferecer suporte total à sincronização adaptativa (parte do padrão DisplayPort) e taxas de atualização variáveis (parte do padrão HDMI).
- O padrão Display Stream Compression está incluído para compactação sem perdas de fluxos de vídeo endereçados a telas de alta resolução.
- O driver AMDGPU agora suporta FreeSync 2 HDR e redefinição de GPU para CI, VI, SOC15.
- O driver de vídeo Intel agora suporta chips Amber Lake, formatos YCBCR 4:2:0 e YCBCR 4:4:4.
- O driver Nouveau inclui trabalho com modos de vídeo para placas de vídeo da família Turing TU104/TU106.
- Drivers integrados para tela sensível ao toque Raspberry Pi, painéis CDTech, Banana Pi, DLC1010GIG, etc.
- O driver HDA suporta o botão “jack”, indicadores LED, dispositivos Tegra186 e Tegra194.
- O subsistema de entrada aprendeu a funcionar com rolagem de alta precisão em alguns mouses Microsoft e Logitech.
- Muitas mudanças em drivers para webcams, sintonizadores de TV, USB, IIO, etc.
Subsistema de rede:
- A pilha UDP suporta um mecanismo de cópia zero para transmitir dados através de um soquete sem buffer intermediário.
- O mecanismo Generic Receive Offload também foi adicionado lá.
- Melhor desempenho de pesquisa em políticas xfrm quando há um grande número delas.
- A capacidade de descarregar túneis foi adicionada ao driver VLAN.
- Uma série de melhorias no suporte para redes Infiniband e sem fio.
Fonte: linux.org.ru