[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#986724: libc6: pthread_cond_wait missed wakeup



Package: libc6
Version: 2.28-10
Severity: important

Dear Maintainer,

In short, this bug causes condition variable signal
(pthread_cond_signal) to be missed by condition
variable waiters (pthread_cond_wait) in some circumstances. Bug is
introduced in glibc 2.27. There
are few patches to fix this issue, none of them merged at this time.

This bug was reported in great details here:

https://sourceware.org/bugzilla/show_bug.cgi?id=25847

How to reproduce: use the repro from the sourceware report

I confirm that using the repro from sourceware report I was able to
reproduce issue on several Debian 10 machines. In my case It takes
from 20 minutes to few hours to make repro hang. On other hand I was
not able to reproduce issue on Debian 9 machine running repro for 20+
hours.

This bug is also mentioned here:

https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1899800
https://bugzilla.redhat.com/show_bug.cgi?id=1889892
https://discuss.ocaml.org/t/is-there-a-known-recent-linux-locking-bug-that-affects-the-ocaml-runtime/6542
https://jira.mongodb.org/browse/SERVER-47554
https://probablydance.com/2020/10/31/using-tla-in-the-real-world-to-understand-a-glibc-bug/

-- System Information:
Debian Release: 10.8
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.19.0-14-amd64 (SMP w/16 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8),
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages libc6 depends on:
ii  libgcc1  1:8.3.0-6

Versions of packages libc6 recommends:
ii  libidn2-0  2.0.5-1+deb10u1

Versions of packages libc6 suggests:
ii  debconf [debconf-2.0]  1.5.71
pn  glibc-doc              <none>
ii  libc-l10n              2.28-10
ii  locales                2.28-10

-- debconf information:
  glibc/kernel-not-supported:
  glibc/restart-failed:
  glibc/upgrade: true
  libraries/restart-without-asking: false
  glibc/restart-services:
  glibc/disable-screensaver:
  glibc/kernel-too-old:


Reply to: