Biblioteca de tradução de endereços AMD "ATL" vem com Linux 6.8

Linus Torvalds anuncia mais testes ARM64 Linux
AMD prepara novidades para driver gráfico Linux 6.6 e AMDGPU DC para RISC-V

A AMD Address Translation Library (ATL) está limpando e centralizando o código existente no kernel Linux para sistemas baseados em Zen. Depois de ser revisado na lista de discussão do kernel, o AMD ATL está definido para ser introduzido como parte do próximo ciclo do kernel Linux 6.8.

A Biblioteca de Tradução de Endereços AMD agora pode ser usada em drivers para tradução de endereços, principalmente para cenários de tratamento de erros, como erros de ECC de memória. Este patch que adiciona a biblioteca AMD ATL foi colocado na fila do TIP.git antes da janela de mesclagem do Linux 6.8 da próxima semana. O commit resume bem as coisas:

“Os sistemas baseados em AMD Zen relatam erros de memória por meio de bancos de verificação de máquina que representam controladores de memória unificados (UMCs). O valor do endereço relatado para erros DRAM ECC é um “endereço normalizado” relativo ao UMC. Este endereço normalizado deve ser convertido em um endereço físico do sistema para ser utilizado pelo sistema operacional.

A biblioteca de tradução de endereços AMD em si não é um recurso totalmente novo, mas uma evolução do código de tradução de endereços AMD Zen existente que já está no kernel Linux há anos. À medida que os recursos de hardware do servidor AMD se expandem e novas inovações surgem como CXL, esse código anteriormente isolado que reside no driver AMD EDAC (Detecção e Correção de Erros) agora está sendo desmembrado em sua própria “biblioteca” de kernel comum que pode ser melhor aproveitada em vários drivers de hardware AMD.

Biblioteca de tradução de endereços AMD “ATL” vem com Linux 6.8

Biblioteca de tradução de endereços AMD "ATL" vem com Linux 6.8

O suporte para esta tradução de endereço foi introduzido no subsistema MCA com sistemas Zen1. O código foi posteriormente movido para o módulo AMD64 EDAC, já que este era o único usuário do código na época.

No entanto, há usos para essa tradução fora do EDAC. O endereço físico do sistema pode ser usado no MCA para off-line preemptivo de página, como feito em algumas funções do notificador do MCA. Além disso, essa tradução é necessária como base de funcionalidade semelhante necessária para algumas configurações CXL em Sistemas AMD.

Introduzir uma biblioteca de tradução de endereços comum que pode ser usada para vários subsistemas, incluindo MCA, EDAC e CXL.

Incluir suporte para UMC normalizado para tradução de endereços físicos do sistema para sistemas de CPU atuais.

Os deslocamentos de acesso indireto ao registro do Data Fabric e um dos campos do registro foram alterados. Padrão para os deslocamentos atuais e definição de campo de registro. E retorne aos valores mais antigos se estiver executando em um sistema “legado”.

Junto com a adição da Biblioteca de Tradução de Endereços AMD, outro patch no TIP.git descarta o antigo código de tradução de endereço específico do amd64_edac e passa a usar esta nova biblioteca para Linux 6.8.

Acesse a versão completa
Sair da versão mobile