Odebrany

CVE-2026-99268

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

W jądrze Linuksa usunięto następującą lukę:

io_uring: budzik odpytujący dla lokalnego zadania_zadań

W przypadku IORING_SETUP_DEFER_TASKRUN uzupełnienia są umieszczane w kolejce jako praca lokalna i
stają się CQE tylko wtedy, gdy podmiot przesyłający wchodzi do jądra, aby czekać na zdarzenia.
Dla aplikacji, która dowiaduje się poprzez poll() lub epoll na pierścieniu fd kiedy
nadszedł czas, aby to zrobić, io_uring_poll() zgłasza EPOLLIN, jeśli jest to praca lokalna
w toku.

Pomaga to tylko wtedy, gdy w momencie połączenia jest praca. Kiedy
Dodano DEFER_TASKRUN, io_req_local_work_add() zrobił io_cqring_wake(),
który zajął się również zadaniami śpiącymi w poll(). Następnie sondaż uzyskał
poczekaj na własną kolejkę, ->poll_wq i obudź się
io_req_local_work_add() została zastąpiona przez bezpośrednie budzenie osoby przesyłającej.
Od tego czasu ->poll_wq jest budzony tylko wtedy, gdy zatwierdzono CQE, co dla
taki pierścień wykonuje właśnie zadanie, które czeka na polecenie:

uzupełnienie zgłaszającego
ankieta(ring_fd)
io_uring_poll() // jeszcze nic
harmonogram()
io_req_local_work_add()
// ->cq_wait_nr: nikt nie czeka
//śpi dalej

Obudź ->poll_wq, gdy pierwszy wpis zostanie umieszczony na liście zadań. Podobnie jak dla
eventfd, nie można tego zrobić od razu, jeśli praca jest w kolejce z pliku a
osoba zajmująca się pobudkami, ponieważ łańcuch wybudzeń może wrócić do oczekiwania
kolejka, której zamek jest utrzymywany. W takim przypadku użyj wywołania zwrotnego RCU z a
nawiązanie do pierścienia.

>_ 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