Katalog CVE

CVE-2026-98386

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux w sterowniku scsi: qla2xxx funkcja __qla2x00_alloc_iocbs() zeruje slot pierścienia żądań QLAFX00 za pomocą zwykłego memset(), mimo że jest to pamięć I/O zmapowana przez ioremap, a nie pamięć DMA. Na architekturach takich jak ARM64 memset() może generować nieprawidłowe instrukcje (np. DC ZVA) na pamięci Device, powodując synchroniczny abort. Poprawka używa memset_io() dla QLAFX00.

Ocena ryzyka

Może prowadzić do synchronicznego abortu i awarii systemu na architekturach takich jak ARM64 z kartami QLAFX00. Dotyczy systemów z adapterami Fibre Channel QLogic.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę. Jeśli używasz adapterów QLAFX00 na ARM64, priorytetowo zaplanuj aktualizację.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: scsi: qla2xxx: Use memset_io() to clear QLAFX00 request ring slot For QLAFX00 the request ring is ioremapped device I/O memory (ha->iobase + req_que_off), not DMA-coherent RAM, which is why the rest of the FX00 path accesses it through memcpy_toio() and the wrt_reg_* helpers. __qla2x00_alloc_iocbs() however zeroed the producer slot with a plain memset(). On architectures such as ARM64 a regular memset() may emit unaligned or block-zeroing instructions (e.g. DC ZVA) that are invalid on Device memory, leading to a synchronous external abort. Use memset_io() to clear the slot for QLAFX00, matching the I/O accessors used elsewhere on this ring. Other adapters keep the plain memset() on their DMA-coherent rings. The zero-fill is retained for FX00 because its IOCB builders (e.g. qlafx00_fxdisc_iocb()) copy only part of the entry and rely on the unused tail being pre-zeroed.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS