Documented in 2 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 17 files:
- drivers/char/hw_random/optee-rng.c, line 164
- drivers/char/tpm/tpm_ftpm_tee.c
- drivers/firmware/arm_scmi/transports/optee.c
- drivers/firmware/broadcom/tee_bnxt_fw.c
- drivers/firmware/efi/stmm/tee_stmm_efi.c, line 89
- drivers/firmware/qcom/qcom_pas_tee.c
- drivers/nvmem/stm32-bsec-optee-ta.c
- drivers/platform/x86/amd/pmf/tee-if.c
- drivers/rtc/rtc-optee.c
- drivers/tee/optee/call.c, line 238
- drivers/tee/optee/device.c, line 169
- drivers/tee/optee/ffa_abi.c, line 485
- drivers/tee/optee/protmem.c, line 285
- drivers/tee/optee/smc_abi.c
- drivers/tee/qcomtee/shm.c
- drivers/tee/tee_shm.c
- security/keys/trusted-keys/trusted_tee.c
Smatch caller information:
security/keys/trusted-keys/trusted_tee.c trusted_tee_get_random() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | shm | r tee_shm_register_kernel_buf |
| NOCHECK_CALL |
security/keys/trusted-keys/trusted_tee.c trusted_tee_seal() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | shm | r tee_shm_register_kernel_buf |
| NOCHECK_CALL |
security/keys/trusted-keys/trusted_tee.c trusted_tee_unseal() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | shm | r tee_shm_register_kernel_buf |
| NOCHECK_CALL |
drivers/tee/tee_shm.c tee_shm_alloc_user_buf() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| PARAM_VALUE | 0 | shm->ctx | 4096-ptr_max |
| PARAM_VALUE | 0 | shm->ctx->teedev | 4096-ptr_max |
| PARAM_VALUE | 0 | shm->flags | 4-5,12 |
| PARAM_VALUE | 0 | shm->id | 0-s32max |
| PARAM_VALUE | 0 | shm->kaddr | 1-u64max |
| PARAM_VALUE | 0 | shm->refcount.refs.counter | 1 |
| BUF_SIZE | 0 | shm | 80 |
| BUF_SIZE | 0 | shm->ctx | s32min-(-2),1-s32max |
| DATA_SOURCE | 0 | shm | r shm_alloc_helper |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | shm->num_pages |
drivers/tee/tee_shm.c tee_shm_register_user_buf() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | shm | r register_shm_helper |
| NOCHECK_CALL |
drivers/firmware/qcom/qcom_pas_tee.c __free_shm_free() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BIT_INFO | 0 | shm | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | shm | 0x0,0x7fffffffffffffff |
| NOCHECK_CALL |
drivers/firmware/qcom/qcom_pas_tee.c qcom_pas_tee_init_image() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| BUF_SIZE | 0 | shm | 80 |
| DATA_SOURCE | 0 | shm | r tee_shm_alloc_kernel_buf |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/firmware/qcom/qcom_pas_tee.c qcom_pas_tee_init_image() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| PARAM_VALUE | 0 | shm->kaddr | 1-u64max |
| PARAM_VALUE | 0 | shm->size | 1-u64max |
| BUF_SIZE | 0 | shm | 80 |
| DATA_SOURCE | 0 | shm | r tee_shm_alloc_kernel_buf |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/firmware/qcom/qcom_pas_tee.c qcom_pas_tee_init_image() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| PARAM_VALUE | 0 | shm->kaddr | 1-u64max |
| PARAM_VALUE | 0 | shm->size | 1-u64max |
| BUF_SIZE | 0 | shm | 80 |
| DATA_SOURCE | 0 | shm | r tee_shm_alloc_kernel_buf |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/firmware/qcom/qcom_pas_tee.c qcom_pas_tee_metadata_release() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 1-u64max |
| BUF_SIZE | 0 | shm | 80 |
| NOCHECK_CALL |
drivers/tee/qcomtee/shm.c qcomtee_msg_buffers_alloc() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| BUF_SIZE | 0 | shm | 80 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/tee/qcomtee/shm.c qcomtee_msg_buffers_free() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/tee/qcomtee/shm.c qcomtee_msg_buffers_free() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/firmware/broadcom/tee_bnxt_fw.c tee_bnxt_fw_remove() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dev->mutex |
drivers/firmware/broadcom/tee_bnxt_fw.c tee_bnxt_fw_shutdown() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &dev->mutex | ||
| HALF_LOCKED2 | &parent->mutex | ||
| HALF_LOCKED2 | global &system_transition_mutex | ||
| TYPE_LOCK | (struct device)->mutex |
drivers/platform/x86/amd/pmf/tee-if.c amd_pmf_tee_deinit() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/platform/x86/amd/pmf/tee-if.c amd_pmf_tee_init() -> tee_shm_free()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | shm | 4096-ptr_max |
| BUF_SIZE | 0 | shm | 80 |
| DATA_SOURCE | 0 | shm | r tee_shm_alloc_kernel_buf |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |