Sasha Levin da Google, encarregado do suporte às versões LTS do núcleo Linux e membro do conselho consultivo da Linux Foundation, anunciou a criação de uma nova versão do núcleo Linux — "linus-next", que, assim como a versão "linux-next", é destinada a testar as mudanças propostas para inclusão no núcleo futuro, mas se diferencia por focar em modificações prontas para aceitação na versão principal, oferecendo uma base mais estável e adequada para testes.
A versão "linux-next" anteriormente utilizada é excelente para verificar a integração das alterações no núcleo, avaliar a existência de conflitos entre os ramais de diferentes mantenedores e identificar erros e avisos relacionados à construção, mas é problemático usá-la para testar a funcionalidade das alterações propostas. A versão "linux-next" inclui uma mistura de alterações prontas para serem incorporadas ao núcleo e complementos experimentais que podem levar muito tempo para serem finalizados e, possivelmente, nem serão aceitos na versão principal do núcleo.
A presença de código experimental instável impede o uso do núcleo "linux-next" para testes operacionais completos, já que o código experimental pode afetar negativamente outros subsistemas do núcleo. Na nova versão "linus-next", os critérios para aceitação de alterações serão mais rigorosos — serão incluídos apenas pull requests endereçados a Linus Torvalds, que os desenvolvedores acreditam que Linus aceitará na versão principal do núcleo.
O surgimento da versão "linus-next" permitirá não apenas testar a compatibilidade das alterações propostas ao nível da construção do núcleo, mas também avaliar diretamente a funcionalidade, o que levará a uma melhoria na qualidade dos testes das alterações em fase de revisão dos pull requests já enviados mas ainda não analisados por Linus. A nova versão também incentivará o envio de pull requests o mais cedo possível, ainda antes do início da janela de aceitação de alterações, para permitir que sejam testados em operação. Além disso, a versão "linus-next" será desenvolvida de acordo com um modelo de integração contínua, em vez de atualizações diárias com a criação de uma nova tag, o que simplificará a análise de problemas emergentes e a identificação de mudanças específicas que causaram falhas.
Além disso, pode-se notar a insatisfação de Linus Torvalds com o processo de bloqueio a nível de núcleo das vulnerabilidades de hardware, expressa durante a discussão sobre problemas e regressões no código para combater ataques que exploram vulnerabilidades no mecanismo de execução especulativa de instruções na CPU. As alterações necessárias para bloquear vulnerabilidades de hardware complicam o desenvolvimento, levam ao surgimento de regressões e impactam negativamente o desempenho, sendo que a maioria dos ataques que utilizam tais vulnerabilidades são puramente teóricos e nunca são aplicados na prática, fora de condições laboratoriais.
Ao considerar a proposta de alterar o núcleo para contornar problemas potenciais ao enfrentar vulnerabilidades de hardware, Linus sugeriu responsabilizar os fabricantes de equipamentos, como os culpados pela criação de vulnerabilidades de hardware, deixando claro que eles devem resolver seus próprios problemas. A alteração discutida foi proposta como uma medida de precaução, já que devido à incerteza no comportamento da CPU, a proteção poderia potencialmente deixar de funcionar em algumas novas CPUs Intel.
Fonte: opennet.ru
