Sanitizer_CallbackData
-
struct Sanitizer_CallbackData
传递到运行时或驱动程序 API 回调函数中的数据。
作为
cbdata
参数传递到运行时或驱动程序 API 回调函数的数据,用于 Sanitizer_CallbackFunc。cbdata
将是此类型,当domain
等于 SANITIZER_CB_DOMAIN_DRIVER_API 或 SANITIZER_CB_DOMAIN_RUNTIME_API 时。回调数据仅在传递数据的回调函数的调用中有效。如果需要保留一些数据以在回调外部使用,则必须复制该数据。例如,如果在回调中对 Sanitizer_CallbackData 进行浅拷贝,则不能在该回调外部解引用functionParams
以访问函数参数。functionName
是一个例外:functionName
指向的字符串是全局常量,因此可以在回调外部访问。公共成员
-
Sanitizer_ApiCallbackSite callbackSite
运行时或驱动程序函数中发出回调的位置。
-
CUcontext context
线程当前的驱动程序上下文,如果没有上下文,则为空。
如果运行时初始化了上下文,则此值可以从运行时 API 函数的入口回调更改为退出回调。
-
const char *functionName
发出回调的运行时或驱动程序 API 函数的名称。
此字符串是全局常量,因此可以在回调外部访问。
-
const void *functionParams
指向传递给运行时或驱动程序 API 调用的参数的指针。
有关每个运行时和驱动程序 API 函数的参数的结构定义,请参阅 generated_cuda_runtime_api_meta.h 和 generated_cuda_meta.h。
-
const void *functionReturnValue
指向运行时或驱动程序 API 调用的返回值的指针。
此字段仅在 SANITIZER_API_EXIT 回调中有效。对于运行时 API,
functionReturnValue
指向cudaError_t
。对于驱动程序 API,functionReturnValue
指向CUresult
。
-
const char *symbolName
发出回调的运行时或驱动程序 API 函数操作的符号的名称。
此条目仅对驱动程序和运行时启动回调有效,其中它返回内核的名称。
-
Sanitizer_ApiCallbackSite callbackSite