Re: [PATCH] libstdc++: Fix for deadlock in std::counting_semaphore [PR100806]

2021-06-22 Thread Thomas Rodgers via Gcc-patches
Tested x86_64-pc-linux-gnu. Committed to master, backported to releases/gcc-11. On Thu, Jun 17, 2021 at 9:46 AM Jonathan Wakely wrote: > On Wed, 16 Jun 2021 at 20:53, Thomas Rodgers > wrote: > > > > Same as previous version except removing the copyright notice from the > > test. > > > >

Re: [PATCH] libstdc++: Fix for deadlock in std::counting_semaphore [PR100806]

2021-06-17 Thread Jonathan Wakely via Gcc-patches
On Wed, 16 Jun 2021 at 20:53, Thomas Rodgers wrote: > > Same as previous version except removing the copyright notice from the > test. > > libstdc++-v3/ChangeLog: > libstdc++/PR100806 > * include/bits/semaphore_base.h (__atomic_semaphore::_M_release(): > Force _M_release()

[PATCH] libstdc++: Fix for deadlock in std::counting_semaphore [PR100806]

2021-06-16 Thread Thomas Rodgers
Same as previous version except removing the copyright notice from the test. libstdc++-v3/ChangeLog: libstdc++/PR100806 * include/bits/semaphore_base.h (__atomic_semaphore::_M_release(): Force _M_release() to wake all waiting threads. *

[PATCH] libstdc++: Fix for deadlock in std::counting_semaphore [PR100806]

2021-06-16 Thread Thomas Rodgers
This is an 'interim' fix. For now it forces all waiting threads to wake on _M_release(). This isn't exactly efficient but resolves the issue in the immediate term. libstdc++-v3/ChangeLog: libstdc++/PR100806 * include/bits/semaphore_base.h (__atomic_semaphore::_M_release():