Kernel Linux de longa data O engenheiro Peter Zijlstra da Intel enviou seus últimos patches de”Rastreamento de Profundidade de Chamadas”como uma mitigação para o Retbleed que visa ser menos dispendioso no desempenho do sistema do que a abordagem de mitigação atual. Com esta última série de patches, ele indica que espera obter em breve esse código.

O Rastreamento de Profundidade de Chamadas para mitigação do Retbleed visa evitar o”show de horror de desempenho”do IBRS atualmente afetando as CPUs Intel afetadas. Os desenvolvedores reconheceram anteriormente a”sobrecarga insana”que vem com o uso da especulação restrita de ramificação indireta (IBRS) à luz do Retbleed. Quanto à abordagem de rastreamento de profundidade de chamada:

O rastreamento de profundidade de chamada é projetado para quebrar esse caminho de especulação ao inserir chamadas de armadilha de especulação no RSB que nunca estão obtendo um retorno correspondente executado. Isso paralisa o caminho de previsão até que ele seja restabelecido.

A suposição é que o preenchimento no 12º retorno é suficiente para quebrar a especulação antes que ela atinja o underflow e o fallback para os outros preditores. Os testes confirmam que funciona. Johannes, um dos pesquisadores de ressangramento. tentou atacar essa abordagem e confirmou que ela traz a relação sinal-ruído para o nível da bola de cristal.

Obviamente, não há prova científica de que isso resistirá ao progresso de pesquisas futuras, mas tudo o que podemos fazer agora é especular sobre isso.

O rastreamento de profundidade de chamadas foi atualizado no início de setembro e na quinta-feira marcou uma terceira iteração dos patches. Esta é uma boa notícia, particularmente com os impactos de desempenho pesados ​​sendo assumidos pela atual mitigação Retbleed baseada em IBRS nos servidores da era Skylake.

Com a série de patches v3 enviada na quinta-feira, Peter observou:

Mudanças desde a v2 são mínimas; Eu reformulei a coisa de alinhamento por solicitação de Linus (patch #8) e coletei algumas tags.

Exceto grandes objeções, espero mesclar isso em breve para que todos possamos continuar com outras coisas.

Então, se tudo correr bem, é possível que vejamos isso mesclado para o ciclo do Linux 6.1 chegando no início de outubro. Como é um item de segurança/mitigação, é possível que ele tente pousar no ciclo 6.0 atual ainda, mas como é um conjunto de 59 patches e já existe a mitigação Retbleed existente, presumivelmente Linus Torvalds gostaria de esperar até a v6.1 janela de mesclagem que será aberta em breve.

Para os processadores afetados pelo Retbleed e atualmente usando o IBRS, as”coisas”de rastreamento de profundidade de chamada (veja o nome da opção abaixo) levam a muito menos sobrecarga, mantendo o sistema seguro:

Com nesses patches, em processadores afetados, a mitigação de rastreamento de profundidade de chamada não é usada por padrão, mas pelo menos por enquanto só é ativada usando a opção de kernel”retbleed=stuff“.

Categories: IT Info