Katalog CVE

CVE-2026-93057

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux w sterowniku scsi: ufs: core istnieje możliwość zakleszczenia podczas odzyskiwania pamięci w kontekście TX EQTR. Funkcje ufshcd_tx_eqtr(), __ufshcd_tx_eqtr() i ufs_qcom_get_rx_fom() alokują pamięć z GFP_KERNEL, co może wywołać bezpośrednie odzyskiwanie, które zależy od I/O do urządzenia UFS, a kolejka jest wstrzymana, co prowadzi do zakleszczenia. Poprawka używa memalloc_noio_save/restore() w ufshcd_tx_eqtr(), aby pokryć wszystkie alokacje w drzewie wywołań.

Ocena ryzyka

Zakleszczenie może spowodować zawieszenie systemu lub awarię, szczególnie podczas skalowania częstotliwości, co wpływa na dostępność usług.

Rekomendacja

Zaleca się aktualizację jądra Linux do wersji zawierającej poprawkę stosującą memalloc_noio_save/restore() w ufshcd_tx_eqtr().

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: ufs: core: Avoid possible memory reclaim deadlock in TX EQTR context TX EQTR may run while devfreq gear scaling has quiesced the UFS tagset. In that context, functions ufshcd_tx_eqtr(), __ufshcd_tx_eqtr() and ufs_qcom_get_rx_fom() allocate memory with GFP_KERNEL. If direct reclaim is triggered, reclaim/writeback can depend on I/O to UFS device. Because the queue is quiesced, this can cause deadlock. Use memalloc_noio_save/restore() in ufshcd_tx_eqtr() to cover all allocations in the TX EQTR call tree, including: - params->eqtr_record in ufshcd_tx_eqtr() - eqtr_data in __ufshcd_tx_eqtr() - params in ufs_qcom_get_rx_fom() This is preferred over tagging individual call sites with GFP_NOIO, as it automatically covers any future allocations added anywhere in the call tree without requiring each caller to be aware of this constraint. [mkp: fix label as suggested by Bart]

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