The SANITIZER_CB_DOMAIN_LAUNCH doesn't include kernels called by kernels

The following code has some modifications to the vetoradd sample. But when I use sanitizer API to catch the kernel launch, the funB and funC are not caught. I used SANITIZER_CB_DOMAIN_LAUNCH/SANITIZER_CBID_LAUNCH_BEGIN to monitor kernel launching.

Does that mean sanitizer API doesn’t handle kernel begins and ends called by another kernel?

 __global__ void funB (const float *A, float *C, int numElements){
    int i = blockDim.x * blockIdx.x + threadIdx.x;

    if (i < numElements)
    {
        C[i]+= A[i];
        printf("I'm funB.\n");
    }
}


__device__ int funC(float tmpa){
    printf("I'm funC\n");
    return tmpa * tmpa * 235;
}

__global__ void
funA(const float *A, const float *B, float *C, int numElements)
{
    int i = blockDim.x * blockIdx.x + threadIdx.x;

    if (i < numElements)
    {
        C[i] = A[i] + B[i];
        if (i==0) {
            funB<<<1,1>>>(A, C, numElements);
        }
        C[i] = funC(C[i]);
    }
}