diff --git a/source/loader/layers/sanitizer/asan_interceptor.cpp b/source/loader/layers/sanitizer/asan_interceptor.cpp index ec1d5e8fad..db01cf0da2 100644 --- a/source/loader/layers/sanitizer/asan_interceptor.cpp +++ b/source/loader/layers/sanitizer/asan_interceptor.cpp @@ -438,6 +438,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; }