Documented in 1 files:

Defined in 1 files as a function:

Referenced in 14 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 2950755358157934592
PARAM_VALUE 0 ctx->ctx.bytecount 0
BUF_SIZE 1 data (-1)-s32max
BUF_SIZE 1 data (-1)-s32max
DATA_SOURCE 1 data $0
DATA_SOURCE 2 len $1
STR_LEN 0 ctx (-1)-s32max
STR_LEN 1 data (-1)-s32max
NOSPEC 1 *data
NOSPEC 2 len
NOSPEC 2 len
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 data 4096-ptr_max[c]
HOST_DATA 2 len 0-4605,4294962946-u32max[c]
USER_DATA 1 data 4096-ptr_max[c][u]
USER_DATA 1 *data 0-255
USER_DATA 2 len 0-u32max
NO_OVERFLOW_SIMPLE 1 data->compr_size
UNITS 1 data unit_byte
UNITS 2 len unit_byte
BYTE_COUNT 1 ==data2 8050
USER_PTR 1 data
HALF_LOCKED2 &mkey->sem
HALF_LOCKED2 &nn->reclaim_str_hashtbl_lock
HALF_LOCKED2 &tp->control

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 6244333588992618496
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 1552325014011908096
PARAM_VALUE 1 *data 1
PARAM_VALUE 2 len 4
BUF_SIZE 1 data 4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
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 tpm2_KDFe() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6244333588992618496
PARAM_VALUE 2 len 32
BUF_SIZE 1 data 32
DATA_SOURCE 1 data $0
STR_LEN 0 ctx 6
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 tpm2_KDFe() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6244333588992618496
PARAM_VALUE 1 data 1684301643486945280
PARAM_VALUE 2 len 7
BUF_SIZE 1 data 7
BUF_SIZE 1 data 7
DATA_SOURCE 1 data $1
STR_LEN 0 ctx 0-6
TERMINATED 1 data 1
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 tpm2_KDFe() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6244333588992618496
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 32
CAPPED_DATA 1 data 1
DATA_SOURCE 1 data $2
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 tpm2_KDFe() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 6244333588992618496
PARAM_VALUE 2 len 32
BUF_SIZE 1 data 32
BUF_SIZE 1 data 32
DATA_SOURCE 1 data $3
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_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 517836497310273536
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 18379471554275704840,18446612682070032392
PARAM_VALUE 2 len 4
BUF_SIZE 1 data 4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
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_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 517836497310273536
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 4
BUF_SIZE 1 data 4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
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_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 517836497310273536
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 0-255
DATA_SOURCE 2 len r tpm_buf_read_u32
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_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 7469655451117191168
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 18379471554275704840,18446612682070032392
PARAM_VALUE 2 len 4
BUF_SIZE 1 data 4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
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_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 7469655451117191168
PARAM_VALUE 2 len 22,34,50,66
BUF_SIZE 1 data 66
DATA_SOURCE 2 len r name_size
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_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 7469655451117191168
PARAM_VALUE 1 data 318283288249143296
PARAM_VALUE 2 len 4
BUF_SIZE 1 data 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_fill_hmac_session() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 7469655451117191168
PARAM_VALUE 1 data 4096-ptr_max
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_update() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 1228545911430721544,1575514942901559304,9140346693608513544
DATA_SOURCE 1 data $1
DATA_SOURCE 2 len $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &pool->lock

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 7656110191522615296
PARAM_VALUE 1 data 4096-ptr_max
BUF_SIZE 1 data 4096
BUF_SIZE 1 data 4096
DATA_SOURCE 1 data r dm_ima_alloc
NOCHECK_CALL
LOCK2 &md->io_barrier
TYPE_LOCK (struct mapped_device)->io_barrier

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 7656110191522615296
PARAM_VALUE 1 data 4096-ptr_max
BUF_SIZE 1 data 4096
BUF_SIZE 1 data 4096
DATA_SOURCE 1 data r dm_ima_alloc
NOCHECK_CALL
LOCK2 &md->io_barrier
TYPE_LOCK (struct mapped_device)->io_barrier

lib/crypto/tests/sha256_kunit.c benchmark_sha256_finup_2x() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 5987791251646668800
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 4096-ptr_max
BUF_SIZE 1 data 8192
BUF_SIZE 1 data 8192
DATA_SOURCE 1 data r alloc_buf
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 2 len 0-u16max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 5589018392665600000
PARAM_VALUE 1 data 1666051844135370752
PARAM_VALUE 2 len 32
BUF_SIZE 1 data 32
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 8391474769716404224
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 2 len 0-16280
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 2 len r rand_length
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 8391474769716404224
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 0-16280
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 1 data r alloc_guarded_buf
DATA_SOURCE 2 len r rand_length
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 0-16280
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 1 data r alloc_guarded_buf
DATA_SOURCE 2 len r rand_length
NOCHECK_CALL
UNITS 0 ctx unit_byte

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 7957314592901341184
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 128
BUF_SIZE 1 data 128
BUF_SIZE 1 data 128
DATA_SOURCE 1 data r alloc_buf
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 3133813931179048960
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 0-16384
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 2 len r rand_length
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 3133813931179048960
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 0-16384,18446744073709535232-u64max
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 6570685237347315712
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 0-16352
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 2 len r rand_length
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 6570685237347315712
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 0-16352
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 2 len r rand_length
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->ctx.buf 0
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 924317192642424832
PARAM_VALUE 2 len 0-64
BUF_SIZE 1 data 64
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 0 ctx r alloc_guarded_buf
DATA_SOURCE 2 len r rand_length
MEM_ZERO 0 ctx
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->ctx.buf 0
PARAM_VALUE 2 len 0-16384
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 0 ctx r alloc_guarded_buf
DATA_SOURCE 2 len r rand_length
MEM_ZERO 0 ctx
MEM_ZERO 0 ctx->ctx.buf
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 1609589680665288704
PARAM_VALUE 2 len 0-16384
CAPPED_DATA 2 len 1
CAPPED_DATA 2 len 1
DATA_SOURCE 2 len r rand_length
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 6311609310385336320
PARAM_VALUE 0 ctx->ctx.bytecount 81985529216486656-81985529216486719
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 256
BUF_SIZE 1 data 256
BUF_SIZE 1 data 256
DATA_SOURCE 1 data r alloc_buf
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 1716030294196928512
NOCHECK_CALL
UNITS 1 data unit_byte
UNITS 2 len unit_byte

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 3720863680531206144
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 7947055325746679808
PARAM_VALUE 2 len 4
BUF_SIZE 1 data 4
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 3720863680531206144
BUF_SIZE 1 data 105
BUF_SIZE 1 data 105
DATA_SOURCE 1 data $2
DATA_SOURCE 2 len $3
NOCHECK_CALL
UNITS 1 data unit_byte
UNITS 2 len unit_byte

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

Type Parameter Key Value
DATA_SOURCE 1 data $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 len unit_byte

fs/verity/hash_algs.c fsverity_prepare_hash_state() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->ctx.bytecount 0
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 len 64-95,128-159
BUF_SIZE 1 data 64-95,128-159,4294967296-4294967327
BUF_SIZE 1 data 64-95,128-159,4294967296-4294967327
DATA_SOURCE 1 data r _kzalloc_noprof
BIT_INFO 2 len 0x0,0x1ffffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 *data 0-255
USER_DATA 2 len 64-95,128-159[c]
USER_PTR 1 data

crypto/sha256.c crypto_sha256_update() -> sha256_update()

Type Parameter Key Value
BUF_SIZE 1 data (-1)-s32max
BUF_SIZE 1 data (-1)-s32max
DATA_SOURCE 1 data $1
DATA_SOURCE 2 len $2
NOSPEC 1 *data
NOSPEC 2 len
NOSPEC 2 len
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 1 data 4096-ptr_max[c]
HOST_DATA 2 len 0-4860,4294962946-u32max[c]
USER_DATA 1 data 4096-ptr_max[c][u]
USER_DATA 1 *data 0-255
USER_DATA 2 len 0-u32max
NO_OVERFLOW_SIMPLE 1 data->compr_size
BYTE_COUNT 1 ==data2 8050
USER_PTR 1 data

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 2573257218184720384
BUF_SIZE 1 data 240,256-s32max
NOCHECK_CALL
UNITS 2 len unit_byte

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 2573257218184720384
PARAM_VALUE 1 data 18379471554275704832,18446612682070032384
PARAM_VALUE 2 len 1-4096
NOCHECK_CALL
UNITS 2 len unit_byte

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->ctx.bytecount 0
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

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

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 1 data 4096-ptr_max
DATA_SOURCE 1 data $2
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_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
BUF_SIZE 0 ctx 104
DATA_SOURCE 1 data $2
DATA_SOURCE 2 len $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 2 len
BYTE_COUNT 1 ==data2 8050

drivers/md/dm-verity-target.c verity_setup_salt_and_hashstate() -> sha256_update()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->ctx.bytecount 0
BUF_SIZE 0 ctx 104
BUF_SIZE 1 data 0-u32max,u64max
BUF_SIZE 1 data 0-u32max,u64max
DATA_SOURCE 0 ctx r _kmalloc_noprof
NOCHECK_CALL
UNITS 2 len unit_byte
HALF_LOCKED2 &md->type_lock