Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 14 files:

Smatch caller information:

lib/crypto/sha256.c sha256() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 2950755358157934592
BUF_SIZE 1 out (-1)-s32max
BUF_SIZE 1 out (-1)-s32max
DATA_SOURCE 1 out $2
NOSPEC 1 *out
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 *out 0-255
UNITS 1 out unit_byte
USER_PTR 1 out
HALF_LOCKED2 &mkey->sem
HALF_LOCKED2 &nn->reclaim_str_hashtbl_lock
HALF_LOCKED2 &tp->control

drivers/char/tpm/tpm2-sessions.c tpm2_KDFe() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6244333588992618496
BUF_SIZE 1 out 32
BUF_SIZE 1 out 32
DATA_SOURCE 1 out $4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &chip->ops_sem
LOCK2 &chip->tpm_mutex
TYPE_LOCK (struct tpm_chip)->ops_sem
TYPE_LOCK (struct tpm_chip)->tpm_mutex

drivers/char/tpm/tpm2-sessions.c tpm_buf_check_hmac_response() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 517836497310273536
BUF_SIZE 1 out 32
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &chip->ops_sem
LOCK2 &chip->tpm_mutex
TYPE_LOCK (struct tpm_chip)->ops_sem
TYPE_LOCK (struct tpm_chip)->tpm_mutex

drivers/char/tpm/tpm2-sessions.c tpm_buf_fill_hmac_session() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 7469655451117191168
BUF_SIZE 1 out 32
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &chip->ops_sem
LOCK2 &chip->tpm_mutex
TYPE_LOCK (struct tpm_chip)->ops_sem
TYPE_LOCK (struct tpm_chip)->tpm_mutex

fs/btrfs/fs.c btrfs_csum_final() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 1228545911430721544,1575514942901559304,9140346693608513544
PARAM_VALUE 1 out 4096-ptr_max
BUF_SIZE 1 out (-1),32
BUF_SIZE 1 out (-1),32
DATA_SOURCE 1 out $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/md/dm-ima.c dm_ima_measure_on_table_load() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 7656110191522615296
BUF_SIZE 1 out 32
NOCHECK_CALL
LOCK2 &md->io_barrier
TYPE_LOCK (struct mapped_device)->io_barrier

lib/crypto/tests/sha256_kunit.c hash_irq_test2_func() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
BUF_SIZE 1 out 32
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_hash_all_lens_up_to_4096() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 5589018392665600000
PARAM_VALUE 1 out 1666051844135370752
BUF_SIZE 1 out 32
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_hash_buffer_overruns() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 8391474769716404224
BUF_SIZE 1 out 32
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_hash_buffer_overruns() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 8391474769716404224
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_hash_buffer_overruns() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
BUF_SIZE 1 out 32
NOCHECK_CALL
UNITS 0 ctx unit_byte

lib/crypto/tests/sha256_kunit.c test_hash_ctx_zeroization() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 7957314592901341184
BUF_SIZE 1 out 32
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_hash_incremental_updates() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 3133813931179048960
BUF_SIZE 1 out 32
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_hash_overlaps() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6570685237347315712
PARAM_VALUE 1 out 1-u64max
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_hash_overlaps() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6570685237347315712
PARAM_VALUE 1 out 1-u64max
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_sha256_finup_2x() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->ctx.buf 0
PARAM_VALUE 1 out 343755823343083520
BUF_SIZE 1 out 32
DATA_SOURCE 0 ctx r alloc_guarded_buf
MEM_ZERO 0 ctx
MEM_ZERO 0 ctx->ctx.buf
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_sha256_finup_2x() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 1609589680665288704
PARAM_VALUE 1 out 3892119399397949440
BUF_SIZE 1 out 32
NOCHECK_CALL

lib/crypto/tests/sha256_kunit.c test_sha256_finup_2x_hugelen() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6311609310385336320
PARAM_VALUE 1 out 5855677023610560512
BUF_SIZE 1 out 32
NOCHECK_CALL

arch/x86/purgatory/purgatory.c verify_sha256_digest() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 1716030294196928512
BUF_SIZE 1 out 32
NOCHECK_CALL

security/apparmor/crypto.c aa_calc_profile_hash() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 3720863680531206144
PARAM_VALUE 1 out 4096-ptr_max
BUF_SIZE 1 out 32
BUF_SIZE 1 out 32
DATA_SOURCE 1 out r _kzalloc_noprof
NOCHECK_CALL

fs/verity/hash_algs.c fsverity_hash_block() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
BUF_SIZE 1 out 64
BUF_SIZE 1 out 64
DATA_SOURCE 1 out $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

crypto/sha256.c crypto_sha256_final() -> sha256_final()

Type Parameter Key Value
BUF_SIZE 1 out (-1)-s32max
BUF_SIZE 1 out (-1)-s32max
DATA_SOURCE 1 out $1
NOSPEC 1 *out
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 *out 0-255
USER_PTR 1 out

kernel/kexec_file.c kexec_calculate_store_digests() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 2573257218184720384
BUF_SIZE 1 out 32
NOCHECK_CALL

samples/tsm-mr/tsm_mr_sample.c sample_report_extend_mr() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ctx->rwsem
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct tm_context)->rwsem

drivers/md/dm-verity-target.c verity_hash() -> sha256_final()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
BUF_SIZE 0 ctx 104
BUF_SIZE 1 out 0-4000000
BUF_SIZE 1 out 0-4000000
DATA_SOURCE 1 out $4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL