[Remoção] Suporte a TCP ULP para SMC é descartado por falhas críticas; mudança deve refletir no Linux 6.20

O desenvolvedor D. Wythe (Alibaba) oficializou a remoção do suporte a TCP ULP para o protocolo SMC na árvore net-next. A decisão, motivada por um alerta de segurança de Al Viro, visa eliminar riscos de corrupção de memória e instabilidade no subsistema de rede do Linux Kernel 6.20.

Por
Emanuel Negromonte
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre...
3 min
Destaques
  • O Recurso: Remoção do suporte TCP ULP (Upper Layer Protocol) no SMC.
  • O Motivo: Falha grave de design que violava a segurança do sistema de arquivos (VFS).
  • O Autor: D. Wythe (Alibaba), após report de Al Viro.
  • Versão Alvo: Linux 6.19 (correção) ou 6.20 (limpeza final).

O desenvolvedor D. Wythe (Alibaba) enviou um patch de emergência para a árvore net-next revogando o suporte a TCP ULP (Upper Layer Protocol) para o protocolo SMC (Shared Memory Communications). A mudança ocorre no auge do ciclo do Linux 6.19-rc8 e visa proteger a estabilidade do sistema contra um design de código considerado perigoso.

A decisão de remover o recurso foi motivada por um alerta de Al Viro. O veterano do kernel identificou que a implementação tentava converter sockets TCP em SMC modificando estruturas do VFS (Virtual File System) “em pleno voo”, o que viola as regras de imutabilidade do kernel e cria riscos reais de corrupção de memória.

O que isso significa na prática:

Imagine que o kernel tentou criar um “atalho” para acelerar conexões de rede antigas sem mudar o código dos apps. O problema é que esse atalho era como tentar trocar os pneus de um carro a 100km/h: o risco de o sistema “capotar” (travar) era alto demais. Os mantenedores decidiram que é melhor remover essa funcionalidade instável agora do que lidar com travamentos aleatórios em servidores de alta performance no futuro.

Detalhes da Implementação

A falha técnica reside no subsistema net/smc. O patch original tentava converter um socket TCP ativo em um socket SMC alterando os campos struct file, dentry e inode diretamente.

Por que a reversão é necessária?

ProblemaImpacto TécnicoSolução
Violação do VFSModifica estruturas que deveriam ser imutáveis.Reverter o suporte a ULP.
Risco de MemóriaErros de use-after-free (UAF) iminentes.Usar alternativas como BPF.
InstabilidadeKernel Panics em cargas de rede intensas.Limpar o código do subsistema net/smc.

O “revert” remove cerca de 90 linhas de código complexo que tentavam fazer esse malabarismo entre sockets, voltando para uma implementação mais conservadora e segura.

Quando isso chega no meu PC?

Com o Linux 6.19 prestes a ser lançado (estamos no rc8), este patch está posicionado para a próxima grande janela:

  • Ciclo de Integração: O patch está na net-next. Se não for incluído como um “salvamento de última hora” no 6.19, ele será um dos primeiros commits do Linux 6.20.
  • Lançamento Estável: Esperado para Abril de 2026.
  • Nas Distros: Usuários de Arch Linux e Fedora (versão 44) devem ver essa limpeza em seus kernels logo no segundo trimestre de 2026.
Compartilhe este artigo
Sair da versão mobile