Katalog CVE

CVE-2026-90095

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linuxa naprawiono warunek umożliwiający użycie over-io-uring w FUSE. Funkcja fuse_uring_cmd() wymaga teraz ustawienia flagi FUSE_OVER_IO_URING w odpowiedzi FUSE_INIT, aby zaakceptować polecenie IORING_OP_URING_CMD. Bez tej flagi istnieje ryzyko zakleszczenia (deadlock) w przypadku próby użycia io-uring. Zmiana jest trywialna, ale zmienia zachowanie: serwery FUSE muszą ustawić tę flagę, aby obsługiwać io-uring.

Ocena ryzyka

Brak odpowiedniej flagi może prowadzić do zakleszczeń systemu, a tym samym do odmowy usługi (DoS) lub zawieszenia systemu. Administratorzy powinni upewnić się, że używane serwery FUSE (np. libfuse) wspierają wymagany atrybut.

Rekomendacja

Zaleca się zaktualizowanie jądra Linuxa do wersji zawierającej tę poprawkę oraz sprawdzenie, czy serwery FUSE w środowisku ustawiają flagę FUSE_OVER_IO_URING w odpowiedzi na FUSE_INIT.

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: fuse: Fix the condition to enable over-io-uring The existing condition in fuse_uring_cmd() is there only to avoid disabling io-uring for connections that already run with it, missing was a condition to refuse any IORING_OP_URING_CMD if the connection/channel didn't get enabled because of missing FUSE_INIT reply flag FUSE_OVER_IO_URING. Without the reply flag the barrier in fuse_uring_ready() doesn't work and IO could already be going on and cause deadlock states (at a minimum one between fch->bg_lock and queue->lock). The change itself is trivial, but brings behavior change, FUSE_OVER_IO_URING has to be set in the FUSE_INIT_REPLY by fuse servers to accept any IORING_OP_URING_CMD. Libfuse does that and the only non-libfuse implementation I found (fractal-fuse) also does it. Qemu patches for fuse-io-uring are not merged yet, as far as I know. Moved up is the smp_load_acquire(&fch->initialized) check, as a fuse-server implementation might try to setup io-uring before FUSE_INIT is processed and might have gotten -EOPNOTSUPP instead of -EAGAIN. Also fixed is a stale comment that explains the handling of the FUSE_OVER_IO_URING flag in early RFC versions. If there should be a report from any library or application we probably need to revert this commit.

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