Intel Xeon

Kernel Linux recebe patch para corrigir bug no MWAIT em servidores Intel Ice Lake

Kernel Linux recebe patch para corrigir bug no MWAIT em servidores Intel Ice Lake

Um problema de longa data com a instrução MWAIT está finalmente recebendo correção no kernel Linux para os servidores Intel Xeon Ice Lake. Embora o bug tenha sido documentado oficialmente pela Intel desde 2022, apenas agora o Linux está se preparando para mitigar o comportamento anômalo com um patch que será incluído nas próximas versões do kernel.

Bug do MWAIT pode causar travamentos em servidores Ice Lake

A falha afeta especificamente o funcionamento das instruções MONITOR/MWAIT, que são utilizadas para economizar energia ao colocar o processador em modo de espera até que uma determinada região de memória seja alterada. No entanto, nos Xeon Scalable de 3ª geração (“Ice Lake”), a instrução MONITOR pode não ser corretamente acionada após um MWAIT, levando a congelamentos do sistema.

Essa mesma falha já havia sido observada em outros processadores Intel, como os Goldmont Atom e os recém-lançados Lunar Lake para laptops. Em todos os casos, o kernel Linux precisou de salvaguardas específicas para evitar o uso inseguro do MWAIT.

Detecção do problema e aplicação do patch

O problema voltou a chamar atenção após Andrew Cooper, desenvolvedor do Xen Project, relatar falhas na inicialização de servidores Ice Lake ao rodar Xen. A investigação apontou que os processadores não estavam saindo corretamente do modo de espera, devido à falha do MWAIT.

Com isso, foi enviado um patch ao LKML adicionando os Ice Lake à lista de CPUs com “implementações instáveis” da instrução MONITOR. O patch também menciona que, até o momento, nenhum caso foi relatado no Linux, mas o ideal é prevenir, já que o problema é conhecido e documentado pela própria Intel no erratum ICX143.

“Considere os processadores Ice Lake como bugados, já que existe errata publicada. […] Adicione Ice Lake à lista de implementações MONITOR instáveis sem solução alternativa.” — diz o commit.

Correção prevista para o kernel 6.15 com backport

O patch deve ser incluído nos próximos dias no ramo de correções do kernel Linux 6.15 e possivelmente será retroportado para versões anteriores mantidas pela comunidade. A expectativa é que futuras gerações de CPUs Intel não repitam esse problema de confiabilidade com MONITOR/MWAIT, que afeta principalmente ambientes virtualizados e uso de recursos de economia de energia.

Emanuel Negromonte Autor
Autor
Jornalista especialista em Linux a mais de 20 anos. Fundador do SempreUpdate e entusiasta do software livre.