Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

mm/mmap.c do_mmap() -> calc_vm_prot_bits()

Type Parameter Key Value
PARAM_VALUE 1 pkey 0-s16max
CAPPED_DATA 1 pkey 1
DATA_SOURCE 0 prot $3 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 prot 0-3,5-u64max
HALF_LOCKED2 &ctx->ring_lock
HALF_LOCKED2 &mm->mmap_lock

arch/x86/kernel/cpu/sgx/ioctl.c sgx_enclave_modify_types() -> calc_vm_prot_bits()

Type Parameter Key Value
PARAM_VALUE 0 prot 3
PARAM_VALUE 1 pkey 0
LOCK2 &encl->lock
TYPE_LOCK (struct sgx_encl)->lock

mm/mprotect.c do_mprotect_pkey() -> calc_vm_prot_bits()

Type Parameter Key Value
PARAM_VALUE 0 prot 0-18
PARAM_VALUE 1 pkey 0-s16max
CAPPED_DATA 1 pkey 1
DATA_SOURCE 0 prot $2 [m]
DATA_SOURCE 1 pkey r arch_override_mprotect_pkey
BIT_INFO 0 prot 0x0,0xfffffffffcffffff
USER_DATA 0 prot 0-18[c]
USER_DATA 1 pkey 0-15[c]

arch/x86/kernel/cpu/sgx/encl.c sgx_encl_page_alloc() -> calc_vm_prot_bits()

Type Parameter Key Value
PARAM_VALUE 0 prot 0-10
PARAM_VALUE 1 pkey 0
BIT_INFO 0 prot 0x0,0x7
BIT_INFO 0 prot 0x0,0x7
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 prot 0-10[c]