Priority: P1: Critical
Affects Version/s: 5.15.7, 6.2.4, 6.3.0
Component/s: Core: Threads
Commits:830b1550de (qt/qtbase/dev) 830b1550de (qt/tqtc-qtbase/dev) a210635b6d (qt/qtbase/6.3) a210635b6d (qt/tqtc-qtbase/6.3) 6c4c3d8a48 (qt/tqtc-qtbase/5.15) 5371db4675 (qt/qtbase/6.2) 5371db4675 (qt/tqtc-qtbase/6.2)
- N threads are releasing 1 on the semaphore
- One thread acquiring N , and then deleting the semaphore
- Two threads are releasing at once. One releasing N-1, and the other N.
- N-1 releasing thread wakes the acquiring thread, N releasing thread increases the count to N, but doesn't wake waiting threads yet
- The acquiring thread sees N, acquires it and exits and deletes the se
- The N releasing thread now tries to wake waiting threads.
|For Gerrit Dashboard: QTBUG-102484|
|405857,5||Fix race condition in futex-based QSemaphore||dev||qt/qtbase||Status: MERGED||+2||0|
|406260,2||Fix race condition in futex-based QSemaphore||6.2||qt/qtbase||Status: MERGED||+2||0|
|406261,2||Fix race condition in futex-based QSemaphore||6.3||qt/qtbase||Status: MERGED||+2||0|
|406262,2||Fix race condition in futex-based QSemaphore||tqtc/lts-5.15||qt/tqtc-qtbase||Status: MERGED||+2||0|
|407921,2||fuzzing: Add svg which revealed race condition in QSemaphore||dev||qt/qtqa||Status: MERGED||+2||0|