函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\slab_common.c Create Date:2022-07-27 15:54:33
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:kzfree - like kfree but zero memory*@p: object to free memory of* The memory of the object @p points to is zeroed before freed.* If @p is %NULL, kzfree() does nothing.* Note: this function zeroes the whole allocated buffer which can be a good

函数原型:void kzfree(const void *p)

返回类型:void

参数:

类型参数名称
const void *p
1745  mem等于p
1747  如果此条件成立可能性小(为编译器优化)(ZERO_OR_NULL_PTR(mem))则返回
1749  ks等于ksize - get the actual amount of memory allocated for a given object*@objp: Pointer to the object* kmalloc may internally round up allocations and return more memory* than requested. ksize() can be used to determine the actual amount of* memory allocated
1750  memset(mem, 0, ks)
1751  释放内存
调用者
名称描述
kmalloc_double_kzfree
mpi_free_limb_space
mpi_resize调整mpi数组空间
mpi_free
user_free_preparseFree a preparse of a user defined key payload
user_free_payload_rcu
user_destroydispose of the data dangling from the corpse of a user key
dh_free_data
kdf_dealloc
keyctl_dh_compute_kdf
__keyctl_dh_compute
big_key_preparsePreparse a big key
big_key_free_preparseClear preparsement.
big_key_destroydispose of the data dangling from the corpse of a big_key key
TSS_sha1
TSS_rawhmac
TSS_authhmacalculate authorization info fields to send to TPM
TSS_checkhmac1verify the AUTH1_COMMAND (Seal) result from TPM
TSS_checkhmac2verify the AUTH2_COMMAND (unseal) result from TPM
tpm_sealHave the TPM seal(encrypt) the trusted key, possibly based on* Platform Configuration Registers (PCRs). AUTH1 for sealing key.
trusted_instantiaterusted_instantiate - create a new trusted key* Unseal an existing trusted blob or, for a new key, get a* random key, then seal and create a trusted key-type key,* adding it to the specified keyring.* On success, return 0. Otherwise return errno.
trusted_rcu_free
trusted_updaterusted_update - reseal an existing key with new PCR values
trusted_readrusted_read - copy the sealed blob data to userspace in hex.* On success, return to userspace the trusted key datablob size.
trusted_destroyrusted_destroy - clear and free the key's payload
get_derived_keyDerive authentication/encryption key from trusted key
encrypted_instantiaterypted_instantiate - instantiate an encrypted key* Decrypt an existing encrypted datablob or create a new encrypted key* based on a kernel random number.* On success, return 0. Otherwise return errno.
encrypted_rcu_free
encrypted_updaterypted_update - update the master key description* Change the master key description for an existing encrypted key.* The next read will return an encrypted datablob using the new* master key description.* On success, return 0. Otherwise return errno.
encrypted_readrypted_read - format and copy the encrypted data to userspace* The resulting datablob format is:* * On success, return to userspace the encrypted key datablob size.
encrypted_destroyrypted_destroy - clear and free the key's payload
aa_free_domain_entriesaa_free_domain_entries - free entries in a domain table*@domain: the domain table to free (MAYBE NULL)
aa_free_dataaa_free_data - free a data blob*@ptr: data to free*@arg: unused
aa_free_profileaa_free_profile - free a profile*@profile: the profile to free (MAYBE NULL)* Free a profile, its hats and null_profile
do_loaddata_freed to take the ns mutex lock which is NOT safe most places that* put_loaddata is called, so we have to delay freeing it
unpack_profilepack_profile - unpack a serialized profile*@e: serialized data extent information (NOT NULL)* NOTE: unpack profile sets audit struct if there is a failure
aa_load_ent_free
alloc_nsalloc_ns - allocate, initialize and return a new namespace*@prefix: parent namespace name (MAYBE NULL)*@name: a preallocated name (NOT NULL)* Returns: refcounted namespace or NULL on failure.
aa_free_nsaa_free_ns - free a profile namespace*@ns: the namespace to free (MAYBE NULL)* Requires: All references to the namespace must have been put, if the* namespace was referenced by a profile confining a task,
free_direct_key
setup_v1_file_key_derivedv1 policy, !DIRECT_KEY: derive the file's encryption key
ahash_request_free归零并释放数据结构请求
aead_request_freeaead_request_free() - zeroize and free request data structure*@req: request data structure cipher handle to be freed
skcipher_request_freeskcipher_request_free() - zeroize and free request data structure*@req: request data structure cipher handle to be freed
keyctl_update_keyUpdate a key's data payload from the given data.* The key must grant the caller Write permission and the key type must support* updating for this to work. A negative key can be positively instantiated* with this call.* If successful, 0 will be returned
kpp_request_freekpp_request_free() - zeroize and free kpp request*@req: request to free
aa_free_file_ctxaa_free_file_ctx - free a file_ctx*@ctx: file_ctx to free (MAYBE_NULL)
free_master_key