Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 14 files:
- arch/riscv/purgatory/purgatory.c, line 30
- arch/s390/purgatory/purgatory.c, line 27
- arch/x86/purgatory/purgatory.c, line 36
- crypto/sha256.c, line 151
- drivers/char/tpm/tpm2-sessions.c
- drivers/md/dm-ima.c, line 300
- drivers/md/dm-verity-target.c, line 133
- fs/btrfs/fs.c, line 118
- fs/verity/hash_algs.c, line 118
- kernel/kexec_file.c, line 897
- lib/crypto/sha256.c
- lib/crypto/tests/sha256_kunit.c
- samples/tsm-mr/tsm_mr_sample.c, line 47
- security/apparmor/crypto.c, line 52
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 |