From 6877561fefaf1ab2cda1ae7f3668ff1bc12265cc Mon Sep 17 00:00:00 2001 From: "Zhao, Yang2" Date: Wed, 31 Jul 2024 22:49:57 -0700 Subject: [PATCH] nullpointer detection --- source/loader/layers/sanitizer/asan_interceptor.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/source/loader/layers/sanitizer/asan_interceptor.cpp b/source/loader/layers/sanitizer/asan_interceptor.cpp index 0deb021a3f..71210d8c21 100644 --- a/source/loader/layers/sanitizer/asan_interceptor.cpp +++ b/source/loader/layers/sanitizer/asan_interceptor.cpp @@ -425,6 +425,18 @@ ur_result_t DeviceInfo::allocShadowMemory(ur_context_handle_t Context) { } getContext()->logger.info("ShadowMemory(Global): {} - {}", (void *)ShadowOffset, (void *)ShadowOffsetEnd); + + // Set shadow memory for null pointer + ManagedQueue Queue(Context, Handle); + + auto DI = getContext()->interceptor->getDeviceInfo(Handle); + auto URes = + enqueueMemSetShadow(Context, DI, Queue, 0, 1, kNullPointerRedzoneMagic); + if (URes != UR_RESULT_SUCCESS) { + getContext()->logger.error("enqueueMemSetShadow(NullPointerRZ): {}", + URes); + return URes; + } return UR_RESULT_SUCCESS; }