Defined in 1 files as a function:
Referenced in 5 files:
- arch/x86/kernel/cpu/sgx/encl.c, line 1186
- arch/x86/kernel/cpu/sgx/ioctl.c, line 939
- mm/mmap.c, line 405
- mm/mprotect.c, line 967
- mm/nommu.c, line 855
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] |