CUDASecurityΒΆ

General CUDA security rules

Nested Rules

CUDASecurity-ARR01

Do not form or use out-of-bounds array subscripts for CUDA kernels

CUDASecurity-CON01

Prevent data races when accessing bit-fields from multiple threads

CUDASecurity-CON02

When data must be accessed by multiple threads, provide a mutex and guarantee no adjacent data is also accessed

CUDASecurity-CON03

Avoid race conditions when using library functions

CUDASecurity-CON04

Do not allow data races in multithreaded code

CUDASecurity-CON05

Avoid deadlock by locking in a predefined order

CUDASecurity-CON06

Wrap functions that can fail spuriously in a loop

CUDASecurity-DCL01

Do not declare an identifier with conflicting Memory attribute specifiers

CUDASecurity-DCL02

Avoid information leakage when passing a structure across a trust boundary

CUDASecurity-ERR01

Detect and handle CUDA runtime API errors

CUDASecurity-EXP01

Do not call va_arg with an argument of the incorrect type

CUDASecurity-EXP02

Do not rely on side effects in operands to sizeof, _Alignof, or _Generic

CUDASecurity-MSC01

Do not call va_arg() on a va_list that has an indeterminate value

Options