Skip to content

Commit 451e150

Browse files
committed
fix SanitizerInterceptor is always constructed
1 parent 778f92a commit 451e150

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

source/loader/layers/sanitizer/ur_sanddi.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1527,19 +1527,20 @@ ur_result_t context_t::init(ur_dditable_t *dditable,
15271527
ur_result_t result = UR_RESULT_SUCCESS;
15281528

15291529
if (enabledLayerNames.count("UR_LAYER_ASAN")) {
1530-
getContext()->enabledType = SanitizerType::AddressSanitizer;
1530+
enabledType = SanitizerType::AddressSanitizer;
1531+
interceptor = std::make_unique<SanitizerInterceptor>(logger);
15311532
} else if (enabledLayerNames.count("UR_LAYER_MSAN")) {
1532-
getContext()->enabledType = SanitizerType::MemorySanitizer;
1533+
enabledType = SanitizerType::MemorySanitizer;
15331534
} else if (enabledLayerNames.count("UR_LAYER_TSAN")) {
1534-
getContext()->enabledType = SanitizerType::ThreadSanitizer;
1535+
enabledType = SanitizerType::ThreadSanitizer;
15351536
}
15361537

15371538
// Only support AddressSanitizer now
1538-
if (getContext()->enabledType != SanitizerType::AddressSanitizer) {
1539+
if (enabledType != SanitizerType::AddressSanitizer) {
15391540
return result;
15401541
}
15411542

1542-
if (getContext()->enabledType == SanitizerType::AddressSanitizer) {
1543+
if (enabledType == SanitizerType::AddressSanitizer) {
15431544
if (!(dditable->VirtualMem.pfnReserve && dditable->VirtualMem.pfnMap &&
15441545
dditable->VirtualMem.pfnGranularityGetInfo)) {
15451546
die("Some VirtualMem APIs are needed to enable UR_LAYER_ASAN");

source/loader/layers/sanitizer/ur_sanitizer_layer.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ context_t *getContext() { return context_t::get_direct(); }
1919
///////////////////////////////////////////////////////////////////////////////
2020
context_t::context_t()
2121
: logger(logger::create_logger("sanitizer", false, false,
22-
logger::Level::WARN)),
23-
interceptor(std::make_unique<SanitizerInterceptor>(logger)) {}
22+
logger::Level::WARN)) {}
2423

2524
ur_result_t context_t::tearDown() { return UR_RESULT_SUCCESS; }
2625

0 commit comments

Comments
 (0)