Merging r317115:

Description

Merging r317115:


r317115 | jlpeyton | 2017-11-01 12:44:42 -0700 (Wed, 01 Nov 2017) | 19 lines

[OpenMP] Fix race condition in omp_init_lock

This is a partial fix for bug 34050.

This prevents callers of omp_set_lock (which does not hold kmp_global_lock)
from ever seeing an uninitialized version of
kmp_i_lock_table.table.

It does not solve a use-after-free race condition if omp_set_lock obtains a
pointer to __kmp_i_lock_table.table before it is updated and then attempts to
dereference afterwards. That race is far less likely and can be handled in a
separate patch.

The unit test usually segfaults on the current trunk revision. It passes with
the patch.

Patch by Adam Azarchs

Differential Revision: https://reviews.llvm.org/D39439


Details

Committed
tstellarTue, Nov 14, 11:21 AM
Differential Revision
D39439: [OpenMP]Fix race condition in omp_init_lock
Parents
rL318177: [SystemZ] Fix invalid codegen using RISBMux on out-of-range bits
Branches
Unknown
Tags
Unknown