O desenvolvedor Ben Horgan enviou a quarta revisão (v4) de uma série massiva de 41 patches que implementam o “elo perdido” para a tecnologia MPAM (Memory Partitioning and Monitoring) em sistemas ARM64. Esta atualização é fundamental para servidores e infraestruturas de nuvem, pois permite que o kernel Linux utilize o sistema de arquivos resctrl — originalmente criado para processadores Intel — para gerenciar recursos de hardware em chips ARM modernos.
A série foca em criar o código de “cola” (glue code) entre a arquitetura ARM, o hipervisor KVM e a interface de usuário, garantindo que limites de largura de banda e fatias de cache possam ser atribuídos a processos ou máquinas virtuais de forma isolada.
Para o iniciante: o que é MPAM e por que você deveria se importar?
Imagine que o processador do seu servidor é uma cozinha compartilhada. Vários processos (as “tarefas”) estão tentando cozinhar ao mesmo tempo. Sem o MPAM, um processo muito guloso pode ocupar todo o balcão (o cache L3) ou gastar toda a água da torneira (a largura de banda da memória), deixando os outros processos lentos ou travados. Isso é conhecido como o problema do “vizinho barulhento”.
O MPAM funciona como um gerente de cozinha. Ele permite que o administrador do sistema diga: “O processo A só pode usar 25% do balcão e não pode gastar mais que 10 litros de água por minuto”. Com esses patches, o Linux ganha as ferramentas para impor essas regras em processadores ARM, garantindo que aplicações críticas tenham performance estável, independentemente do que outros processos estejam fazendo.
O que muda com a v4: estabilidade e suporte a nuvem
A nova versão dos patches refina como o kernel identifica as capacidades do hardware e como ele lida com a virtualização.
Comparativo de capacidades
Detalhes técnicos e correções de hardware (quirks)
A v4 introduz heurísticas mais rígidas para decidir quais recursos expor ao usuário, evitando o “overcommitting” (prometer mais recursos do que o hardware pode entregar). Um ponto técnico importante é a inicialização e troca de contexto do registrador MPAMSM_EL1, essencial para unidades de computação em modo streaming (smcu).
Além disso, os patches incluem um framework de “quirks” para lidar com falhas de design em chips específicos (errata de silício). Por exemplo:
- Nvidia t241 (grace): correções para garantir que as configurações de largura de banda sejam aplicadas corretamente nos registros de “sombra” do hardware.
- ARM cmn-650: um contorno para um bug onde o bit de “não pronto” (nrdy) dos monitores de cache nunca limpava, o que travava leituras de estatísticas.
Integração com KVM
Para provedores de nuvem, a parte de KVM é a mais crítica. O código agora preserva a configuração de MPAM do host ao entrar e sair de máquinas virtuais. Isso garante que a telemetria do sistema principal não seja corrompida por uma VM convidada e vice-versa, tratando acessos não autorizados a esses registros como exceções indefinidas (undef).
Status de lançamento e disponibilidade
Os patches foram submetidos em 03 de fevereiro de 2026 e estão sob revisão intensa pelos mantenedores de ARM64 (catalin.marinas e will) e KVM.
- Status atual: revisão de patches (v4).
- Previsão: dada a maturidade da série, espera-se que o código seja mesclado no ciclo do kernel linux 7.0 ou 7.1.
- Onde encontrar: o suporte será visível para usuários através do diretório /sys/fs/resctrl, permitindo ferramentas como intel-cmt-cat funcionarem em ecossistemas ARM.