CVE-2026-63883 in Linuxinfo

Zusammenfassung

von VulDB • 20.07.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

serial: qcom_geni: Behebung eines kfifo-Underflows bei vorzeitiger DMA-Abschluss-IRQ-Behandlung durch Flush

Wenn uart_flush_buffer() ausgeführt wird, bevor die IRQ für den DMA-Abschluss ausgeliefert wird, kann folgender Race Condition auftreten (alle Schritte sind durch uart_port_lock serialisiert):

1. DMA startet: tx_remaining = N, kfifo enthält N Bytes 2. Hardware-DMA ist abgeschlossen; IRQ steht aus, wurde aber noch nicht zugestellt 3. uart_flush_buffer() erwirbt die Port-Sperre und ruft kfifo_reset() auf, wodurch kfifo_len() = 0 gesetzt wird, während tx_remaining weiterhin N beträgt 4. uart_flush_buffer() gibt die Port-Sperre frei 5. DMA-IRQ tritt ein; handle_tx_dma() erwirbt die Port-Sperre und ruft uart_xmit_advance(uport, tx_remaining) für einen leeren kfifo auf

uart_xmit_advance() erhöht kfifo->out um tx_remaining. Da kfifo_reset() sowohl in als auch out bereits auf 0 gesetzt hat, überläuft out den Wert von in (wrap-around), wodurch kfifo_len() UART_XMIT_SIZE - tx_remaining zurückgibt. Der nächste Aufruf von start_tx_dma() übermittelt dann eine DMA-Übertragung mit veralteten Pufferdaten.

Behebung dieses Problems durch Erfassen des Werts von kfifo_len() zu Beginn von handle_tx_dma() und Überspringen von uart_xmit_advance(), wenn fifo_len < tx_remaining ist, was darauf hinweist, dass der kfifo zuvor durch einen Flush zurückgesetzt wurde.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Zuständig

Linux

Reservieren

19.07.2026

Veröffentlichung

19.07.2026

Moderieren

akzeptiert

Eintrag

VDB-380322

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

low

Quellen

Interested in the pricing of exploits?

See the underground prices here!