llvm
25e1b55b - [UR][L0] Avoid calls to destroy interop data structures given loader instability (#17543)

Commit
1 year ago
[UR][L0] Avoid calls to destroy interop data structures given loader instability (#17543) - When an application transfers ownership of a L0 handle to the UR, this does not prevent the OS from releasing the memory backing the handle when the interop library is torn down. This leads to a situation where the UR is trying to destroy interop data structures that have already been destroyed by the OS. - UR has never known the lifetime of the handle, but with the static L0 Loader, the workaround in the loader to handle this situation and "pretend" the memory was freed is impossible to use. - To fix this issue, avoid calls to destroy interop data structures when the runtime is being torn down. - This avoids calling a function that already did not perform the intended operation and prevents segfaults when the UR tries to destroy interop data structures that have already been destroyed. --------- Signed-off-by: Neil R. Spruit <neil.r.spruit@intel.com>
Author
Parents
Loading