[OpenMP] libomp: change shm name to include UID, call unregister_lib on SIGTERM
authorTodd Erdner <todd.erdner@intel.com>
Mon, 30 Nov 2020 21:39:52 +0000 (00:39 +0300)
committerAndreyChurbanov <andrey.churbanov@intel.com>
Mon, 30 Nov 2020 21:40:47 +0000 (00:40 +0300)
commit9615890db576721fbd73ae77d81d39435e83b4b4
treeea936d09a2abc7a1d9c9881d012faabc13224726
parentf6f28b44ad48e35d1300693d9c34f47782b519a4
[OpenMP] libomp: change shm name to include UID, call unregister_lib on SIGTERM

With the change to using shared memory, there were a few problems that need to be fixed.
- The previous filename that was used for SHM only used process id. Given that process is
  usually based on 16bit number, this was causing some conflicts on machines. Thus we add
  UID to the name to prevent this.
- It appears under some conditions (SIGTERM, etc) the shared memory files were not getting
  cleaned up. Added a call to clean up the shm files under those conditions. For this user
  needs to set envirable KMP_HANDLE_SIGNALS to true.

Patch by Erdner, Todd <todd.erdner@intel.com>

Differential Revision: https://reviews.llvm.org/D91869
openmp/runtime/src/kmp.h
openmp/runtime/src/kmp_runtime.cpp
openmp/runtime/src/z_Linux_util.cpp