PT-2026-86180 · Linux · Linux
CVE-2026-80889
·
Publicado
2026-09-04
·
Atualizado
2026-09-04
Nenhuma
Não há classificações de severidade ou métricas disponíveis. Quando houver, atualizaremos as informações correspondentes na página.
In the Linux kernel, the following vulnerability has been resolved:
can: isotp: fix timer drain order, wakeup handling and tx gen ordering
This patch is a follow-up to commit cf070fe33bfb ("can: isotp: serialize
TX state transitions under so->rx lock") which addresses following
sashiko-bot findings:
-
isotp sendmsg(): drain so->txfrtimer first so a stale callback can't re-arm echotimer after the claim
-
isotp release(): wake so->wait after forcing ISOTP SHUTDOWN so a sleeping sendmsg() claim isn't stranded
-
isotp sendmsg(): have both wait event interruptible() calls in isotp sendmsg() also wake on ISOTP SHUTDOWN and do not return claim to IDLE to avoid corrupting a concurrent isotp release() process.
-
isotp sendmsg(): handle potential claim of a new transfer when the wait event interruptible() call returns in CAN ISOTP WAIT TX DONE mode. Don't touch timers and states of the new transfer if a new thread incremented so->tx gen before getting the lock at err event drop.
-
isotp sendmsg(): handle a stuck can send() and omit timer and state changes if a new transfer was claimed. wait tx done() returns the error recorded in so->tx result[], tagged with the caller's own generation.
-
isotp tx timeout(): on a claimed timeout, record the ECOMM error for the timed-out transfer's own generation in so->tx result[]; sk->sk err is raised unconditionally, same as every other error path here.
-
isotp tx gen done()/isotp tx timeout(): always read tx.state (acquire) before tx gen - the reverse order let a weakly ordered CPU pair a fresh tx.state with a stale tx gen/tx result slot.
-
isotp sendmsg(): wait tx done: drain sk err via sock error() once we have read the result from so->tx result[], so an already-reported error doesn't stay latched for a later poll()/SO ERROR.
Also align the remaining lock-free so->tx.state/rx.state/cfecho accesses
and use skb->hash as unique loopback echo frame indicator.
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Identificadores relacionados
Produtos afetados
Linux