FERRAMENTAS LINUX: O L1d Cache Flushing On Context Switch Está tentando novamente, mas ele será mais conservador em 2021

sábado, 9 de janeiro de 2021

O L1d Cache Flushing On Context Switch Está tentando novamente, mas ele será mais conservador em 2021

 

Confira !!


No início de 2020, foram lançados patches de um engenheiro da Amazon para implementar a limpeza do cache de dados L1 na troca de contexto em nome da segurança, dadas as várias vulnerabilidades de amostragem de dados. Esse trabalho até agora foi rejeitado do kernel da linha principal, mas hoje foi atualizado e torna-se mais difícil de habilitar e, portanto, avançar pode ter chances de finalmente ver a funcionalidade opt-in mesclada com a linha principal.

Este opcional L1d que foi liberando na troca de contexto tentou chegar para o kernel Linux 5.8, mas na época foi rejeitado por Linus Torvalds como "além de estúpido" , grandes implicações de desempenho e não necessariamente funcionando como desejado. Esse trabalho de lavagem L1d foi revisadomas ainda não entrou no kernel da linha principal do Linux 5.11.

Começando o novo ano e em meio à esperança renovada de ter a funcionalidade normalizada, Balbir Singh da Amazon enviou os novos patches que tornam o comportamento mais conservador quanto a quando habilitar esse comportamento caro.

Os patches atualizados agora lidam melhor com a situação em que alguns núcleos da CPU podem ter SMT / HT desabilitado, mas não todos eles e o mais significativo é a funcionalidade desabilitada por padrão. Além de precisar ainda optar por ele em uma base PRCTL, a funcionalidade não funcionará a menos que o kernel tenha sido inicializado com l1d_flush = on. Portanto, sem que as distribuições definam essa opção, caberia aos usuários / administradores definir se eles gostariam de usar esse recurso, em vez de permitir que qualquer aplicativo o aceite por padrão por meio da interface PRCTL, se desejado.

Além de agora precisar de "l1d_flush = on", a funcionalidade também será desabilitada se o processador em execução não for afetado pela vulnerabilidade L1 Terminal Fault (L1TF). L1 Terminal Fault "Foreshadow" afeta a maioria dos processadores Intel da 8ª Geração Core e Xeon E3 v6 e anteriores. A tarefa em questão também deve ser executada em um núcleo com SMT habilitado.

Os patches de liberação de cache L1d atualizados podem ser encontrados na lista de discussão do kernelpara revisão. Com este comportamento mais conservador e sem arriscar o desempenho do sistema fora da caixa, ele aborda amplamente as preocupações levantadas por Linus Torvalds no ano passado, então veremos chegando para o Linux 5.12 se este recurso de segurança conseguir ir para a linha principal.

Outra abordagem que ainda está sendo buscada por várias organizações para tornar o HT / SMT mais seguro em CPUs Intel é o agendamento de núcleo para garantir que tarefas não privilegiadas / privilegiadas não compartilhem o mesmo núcleo e casos como VMs diferentes não compartilhando o mesmo núcleo ou usando um thread irmão.


Fonte

Até a próxima !!

Nenhum comentário:

Postar um comentário