Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-102484

Race condition in QSemaphore

    XMLWordPrintable

Details

    • Linux/X11
    • 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)

    Description

      1. N threads are releasing 1 on the semaphore
      2. One thread acquiring N , and then deleting the semaphore
      3. Two threads are releasing at once. One releasing N-1, and the other N.
      4. N-1 releasing thread wakes the acquiring thread, N releasing thread increases the count to N, but doesn't wake waiting threads yet
      5. The acquiring thread sees N, acquires it and exits and deletes the se
      6. The N releasing thread now tries to wake waiting threads.

       

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-102484
          # Subject Branch Project Status CR V

          Activity

            People

              allan.jensen Allan Sandfeld Jensen
              allan.jensen Allan Sandfeld Jensen
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes