Documented in 2 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

crypto/sm4_generic.c sm4_decrypt() -> sm4_crypt_block()

Type Parameter Key Value
BUF_SIZE 0 rk 128
BUF_SIZE 1 out (-1),16,32,4096
BUF_SIZE 1 out (-1),16,32,4096
BUF_SIZE 2 in s32min-(-1),1-s32max
BUF_SIZE 2 in s32min-(-1),1-s32max
DATA_SOURCE 1 out $1
DATA_SOURCE 2 in $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 out 4096-ptr_max[c][u]
USER_DATA 1 *out 0-255
USER_DATA 2 in 4096-ptr_max[c][u]
USER_DATA 2 *in 0-255
UNITS 1 out unit_byte
UNITS 2 in unit_byte
USER_PTR 1 out
USER_PTR 2 in

crypto/sm4_generic.c sm4_encrypt() -> sm4_crypt_block()

Type Parameter Key Value
BUF_SIZE 0 rk 128
BUF_SIZE 1 out (-1),16,32,4096
BUF_SIZE 1 out (-1),16,32,4096
BUF_SIZE 2 in s32min-(-1),1-s32max
BUF_SIZE 2 in s32min-(-1),1-s32max
DATA_SOURCE 1 out $1
DATA_SOURCE 2 in $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 out 4096-ptr_max[c][u]
USER_DATA 1 *out 0-255
USER_DATA 2 in 4096-ptr_max[c][u]
USER_DATA 2 *in 0-255
UNITS 1 out unit_byte
UNITS 2 in unit_byte
USER_PTR 1 out
USER_PTR 2 in

arch/x86/crypto/sm4_aesni_avx_glue.c sm4_avx_ctr_crypt() -> sm4_crypt_block()

Type Parameter Key Value
PARAM_VALUE 1 out 1709680353308721152
PARAM_VALUE 2 in 1709680353308721152
BUF_SIZE 0 rk 128
BUF_SIZE 1 out 16
BUF_SIZE 2 in 16
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mkey->sem
HALF_LOCKED2 s->tfm_mutex
HALF_LOCKED2 tfm_mutex

arch/x86/crypto/sm4_aesni_avx_glue.c sm4_cbc_encrypt() -> sm4_crypt_block()

Type Parameter Key Value
BUF_SIZE 0 rk 128
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &crypt_stat->keysig_list_mutex
HALF_LOCKED2 &key->sem
HALF_LOCKED2 &mkey->sem
HALF_LOCKED2 &walker->global_auth_tok_key->sem
HALF_LOCKED2 s->tfm_mutex
HALF_LOCKED2 sk
HALF_LOCKED2 tfm_mutex