CVE-2026-98386 in Linux
Zusammenfassung
von VulDB • 14.10.2026
Im Linux-Kernel wurde die folgende Schwachstelle behoben:
scsi: qla2xxx: Verwenden von memset_io() zum Löschen des QLAFX00-Anforderungsring-Slots
Für den QLAFX00 ist der Anforderungsring als ioremapped Device-I/O-Speicher (ha->iobase + req_que_off) abgebildet, nicht als DMA-kohärenter RAM. Daher wird der Rest des FX00-Pfads über memcpy_toio() und die wrt_reg_*-Hilfsfunktionen darauf zugegriffen. __qla2x00_alloc_iocbs() hat den Producer-Slot jedoch mit einem einfachen memset() gelöscht. Auf Architekturen wie ARM64 kann ein reguläres memset() nicht ausgerichtete oder blockweise löschende Anweisungen (z. B. DC ZVA) generieren, die auf Device Memory ungültig sind und zu einem synchronen externen Abort führen können.
Verwenden Sie memset_io(), um den Slot für QLAFX00 zu löschen, was mit den an anderer Stelle in diesem Ring verwendeten I/O-Zugriffsfunktionen übereinstimmt. Andere Adapter behalten das einfache memset() bei ihren DMA-kohärenten Rings bei. Die Nullfüllung wird für FX00 beibehalten, da seine IOCB-Ersteller (z. B. qlafx00_fxdisc_iocb()) nur einen Teil des Eintrags kopieren und darauf vertrauen, dass der ungenutzte Rest vorab auf null gesetzt ist.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.