CVE-2026-93168
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
W jądrze Linuksa usunięto następującą lukę:
dmaengine: xilinx_dma: Napraw blokowanie procesora w xilinx_dma_poll_timeout
Obecnie podczas wywoływania xilinx_dma_poll_timeout z opóźnieniem_us=0 i a
warunek, który nigdy nie jest spełniony, procesor jest zajęty i czeka przez dłuższy czas
a przekroczenie limitu czasu jest wyzwalane tylko z ogromnym opóźnieniem powodującym zatrzymanie procesora.
Dzieje się tak z powodu ogromnego niedoszacowania czasu zegara ściennego
poll_timeout_us_atomic. Zatwierdź 7349a69cf312 („iopoll: nie używaj
mierzenie czasu w read_poll_timeout_atomic()") zmieniło zachowanie na nie
dłużej używaj ktime_get kosztem niedoceniania zegara ściennego
czas, który wydaje się być bardzo duży dla opóźnienia_us=0. Zamiast czasu
kończy się po około XILINX_DMA_LOOP_COUNT mikrosekundach, czyli przekroczeniu limitu czasu
zajmuje XILINX_DMA_LOOP_COUNT * 1000 * (czas, w którym obciążenie for
pętla w trwach poll_timeout_us_atomic), która mieści się w zakresie kilku
minuty dla XILINX_DMA_LOOP_COUNT=1000000. Napraw to, używając wartości niezerowej
wartość dla opóźnienia_us. Użyj opóźnienia_us=10, aby zachować opóźnienie w gorącej ścieżce
początkowe transfery DMA są minimalne, ale nadal pozwalają uniknąć przestojów procesora w przypadku
nieoczekiwane awarie sprzętu.
Jednorazowy pomiar z opóźnieniem_us=0 powoduje, że procesor jest zajęty i czeka około 7
minut w przypadku przekroczenia limitu czasu. Po zastosowaniu tej poprawki z opóźnieniem_us=10
zmierzony limit czasu wyniósł mniej więcej 1053428 mikrosekund
równoważny oczekiwanym 1000000 mikrosekund określonym w
XILINX_DMA_LOOP_COUNT.
Dodaj stałą XILINX_DMA_POLL_DELAY_US dla wartości opóźnienia_us.
>_ Referencje
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org