Back to bug 1027348

Who When What Removed Added
Josep 'Pep' Turro Mauri 2013-11-06 15:59:26 UTC CC pep
Martin Schuppert 2013-11-08 14:33:09 UTC Blocks 994246
Lukasz Janyst 2013-11-15 14:21:51 UTC CC ljanyst
Jan Iven 2014-01-29 10:51:24 UTC CC jan.iven
Tom Lavigne 2014-03-03 19:43:18 UTC Blocks 1056252
Jeff Law 2014-03-04 05:32:32 UTC CC law
Blocks 1023566
Miroslav Franc 2014-04-07 14:47:30 UTC CC mfranc
Siddhesh Poyarekar 2014-04-18 10:37:32 UTC Status NEW ASSIGNED
Assignee codonell spoyarek
Carlos O'Donell 2014-06-03 03:15:29 UTC CC codonell
Matt Newsome 2014-10-02 09:21:08 UTC CC mnewsome
Flags needinfo?(codonell)
Carlos O'Donell 2014-12-31 19:17:00 UTC Target Release 6.6 7.2
Component glibc glibc
Version 6.4 7.2
Product Red Hat Enterprise Linux 6 Red Hat Enterprise Linux 7
Flags needinfo?(codonell)
Chris Van Hoof 2015-03-10 01:49:35 UTC Blocks 1133060
Ondrej Vasik 2015-03-16 09:20:27 UTC Blocks 1191021
Carlos O'Donell 2015-03-23 14:24:51 UTC Keywords Patch
Libor Miksik 2015-03-25 16:06:44 UTC Blocks 1205796
Siddhesh Poyarekar 2015-08-12 13:14:23 UTC Assignee spoyarek codonell
John Skeoch 2015-09-14 00:25:50 UTC CC spoyarek
Chris Van Hoof 2015-11-24 15:54:06 UTC Blocks 1203710
Chris Van Hoof 2015-11-24 16:47:36 UTC Blocks 1133060
John Skeoch 2016-02-01 02:32:34 UTC CC mfranc ohudlick
Florian Weimer 2016-02-04 06:14:40 UTC CC fweimer
Matt Newsome 2016-02-04 14:18:24 UTC Blocks 1297579
Martin Cermak 2016-02-09 21:50:00 UTC CC mcermak
Libor Miksik 2016-03-01 17:43:57 UTC Blocks 1313485
Carlos O'Donell 2016-06-18 22:17:10 UTC Status ASSIGNED POST
Florian Weimer 2016-06-21 12:36:27 UTC Doc Text Cause:

The implementation of POSIX semaphores in glibc does not follow the current POSIX requirements on semaphore destruction, which do not require external synchronization of semaphore destruction.

Consequence:

sem_post and sem_wait may access freed memory and crash or return EINVAL because they access the semaphore after it has been destroyed.

Fix:

glibc now implements the new POSIX semaphore destruction semantics and keeps track of waiters, avoiding premature destruction of the semaphore.

Result:

The semaphores implemented by glibc are now self-synchronizing, avoid spurious EINVAL results from sem_post/sem_wait during semaphore destruction.
Carlos O'Donell 2016-06-22 06:17:35 UTC Status POST MODIFIED
errata-xmlrpc 2016-06-22 11:28:13 UTC Status MODIFIED ON_QA
Lenka Špačková 2016-09-23 14:47:30 UTC Docs Contact tcapek
Arjun Shankar 2016-09-27 14:51:02 UTC Status ON_QA VERIFIED
QA Contact qe-baseos-tools ashankar
Tomas Capek 2016-10-06 16:51:16 UTC Doc Text Cause:

The implementation of POSIX semaphores in glibc does not follow the current POSIX requirements on semaphore destruction, which do not require external synchronization of semaphore destruction.

Consequence:

sem_post and sem_wait may access freed memory and crash or return EINVAL because they access the semaphore after it has been destroyed.

Fix:

glibc now implements the new POSIX semaphore destruction semantics and keeps track of waiters, avoiding premature destruction of the semaphore.

Result:

The semaphores implemented by glibc are now self-synchronizing, avoid spurious EINVAL results from sem_post/sem_wait during semaphore destruction.
New POSIX semaphore destruction semantics

Previously, the implementation of POSIX semaphores in *glibc* did not follow the current POSIX requirements on semaphore destruction, which do not require external synchronization of semaphore destruction. As a consequence, the sem_post() and sem_wait() functions could access free memory and terminate unexpectedly or return the EINVAL error code because they accessed the semaphore after it has been destroyed. This update provides implementation of the new POSIX semaphore destruction semantics which keeps track of waiters, avoiding premature destruction of the semaphore. The semaphores implemented by *glibc* are now self-synchronizing, thus fixing this bug.
Tomas Capek 2016-10-10 08:54:33 UTC Doc Text New POSIX semaphore destruction semantics

Previously, the implementation of POSIX semaphores in *glibc* did not follow the current POSIX requirements on semaphore destruction, which do not require external synchronization of semaphore destruction. As a consequence, the sem_post() and sem_wait() functions could access free memory and terminate unexpectedly or return the EINVAL error code because they accessed the semaphore after it has been destroyed. This update provides implementation of the new POSIX semaphore destruction semantics which keeps track of waiters, avoiding premature destruction of the semaphore. The semaphores implemented by *glibc* are now self-synchronizing, thus fixing this bug.
New POSIX semaphore destruction semantics

Previously, the implementation of POSIX semaphores in *glibc* did not follow the current POSIX requirements for semaphores to be self-synchronizing. As a consequence, the *sem_post()* and *sem_wait()* functions could terminate unexpectedly or return the EINVAL error code because they accessed the semaphore
after it has been destroyed. This update provides an implementation of the new POSIX semaphore destruction semantics which keeps track of waiters, avoiding premature destruction of the semaphore. The semaphores implemented by *glibc* are now self-synchronizing, thus fixing this bug.
errata-xmlrpc 2016-11-02 08:48:04 UTC Status VERIFIED RELEASE_PENDING
errata-xmlrpc 2016-11-03 08:20:53 UTC Status RELEASE_PENDING CLOSED
Resolution --- ERRATA
Last Closed 2016-11-03 04:20:53 UTC

Back to bug 1027348