Files
compute-runtime/level_zero/core/source/global_teardown.cpp
Mateusz Hoppe 8a7923c6ee fix: allow fork() after zeInit()
- do not release resources derived from parent process
- zeInit() in child should initilize new driver

Related-To: NEO-11761

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-07-23 15:31:50 +02:00

29 lines
681 B
C++

/*
* Copyright (C) 2023-2024 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "shared/source/os_interface/sys_calls_common.h"
#include "level_zero/core/source/driver/driver_handle_imp.h"
#include "level_zero/sysman/source/driver/sysman_driver_handle_imp.h"
namespace L0 {
void globalDriverTeardown() {
if (globalDriver != nullptr) {
if (globalDriver->pid == NEO::SysCalls::getCurrentProcessId()) {
delete globalDriver;
}
globalDriver = nullptr;
}
if (Sysman::globalSysmanDriver != nullptr) {
delete Sysman::globalSysmanDriver;
Sysman::globalSysmanDriver = nullptr;
}
}
} // namespace L0