Defined in 1 files as a prototype:
Defined in 3 files as a macro:
- arch/powerpc/include/asm/set_memory.h, line 49 (as a macro)
- arch/s390/include/asm/set_memory.h, line 29 (as a macro)
- arch/x86/include/asm/set_memory.h, line 9 (as a macro)
Defined in 3 files as a function:
- arch/powerpc/include/asm/set_memory.h, line 45 (as a function)
- arch/x86/mm/pat/set_memory.c, line 2369 (as a function)
- include/linux/set_memory.h, line 18 (as a function)
Referenced in 16 files:
- arch/arm/mach-omap1/sram-init.c
- arch/arm/mach-omap2/sram.c
- arch/arm64/kernel/probes/kprobes.c, line 52
- arch/loongarch/kernel/inst.c, line 289
- arch/s390/include/asm/set_memory.h, line 59
- arch/s390/kernel/kprobes.c, line 43
- arch/s390/kernel/module.c, line 482
- arch/x86/kernel/ftrace.c, line 428
- arch/x86/kernel/machine_kexec_64.c, line 365
- drivers/misc/sram-exec.c, line 109
- include/linux/filter.h, line 1145
- include/linux/set_memory.h, line 17
- kernel/bpf/core.c
- kernel/bpf/trampoline.c, line 1511
- kernel/module/strict_rwx.c, line 42
- mm/execmem.c
Smatch caller information:
arch/x86/kernel/machine_kexec_64.c machine_kexec_prepare() -> set_memory_rox()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | addr | 18379471554275704832,18446612682070032384 |
| PARAM_VALUE | 1 | numpages | 1 |
| CAPPED_DATA | 0 | addr | 1 |
| DATA_SOURCE | 0 | addr | r lowmem_page_address |
| NOCHECK_CALL |
arch/x86/kernel/ftrace.c create_trampoline() -> set_memory_rox()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | addr | 1-u64max |
| PARAM_VALUE | 1 | numpages | 698908,733969,954348,989409 |
| DATA_SOURCE | 0 | addr | r alloc_tramp |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &ftrace_lock |
kernel/bpf/trampoline.c arch_protect_bpf_trampoline() -> set_memory_rox()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | numpages | 1 |
| DATA_SOURCE | 0 | addr | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &st_map->lock |
mm/execmem.c execmem_cache_populate_alloc() -> set_memory_rox()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | addr | 1-u64max |
| BUF_SIZE | 0 | addr | s32min-s32max |
| CAPPED_DATA | 0 | addr | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | _T->lock |
mm/execmem.c execmem_restore_rox() -> set_memory_rox()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | addr | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | addr | unit_byte |
| UNITS | 1 | numpages | unit_page |
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &module_mutex |
kernel/bpf/core.c alloc_new_pack() -> set_memory_rox()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | addr | 1-u64max |
| BUF_SIZE | 0 | addr | s32min-s32max |
| CAPPED_DATA | 0 | addr | 1 |
| DATA_SOURCE | 0 | addr | r bpf_jit_alloc_exec |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | numpages | unit_page |
| LOCK2 | global &pack_mutex | ||
| HALF_LOCKED2 | &d->mutex |
kernel/bpf/core.c bpf_prog_pack_alloc() -> set_memory_rox()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | addr | 1-u64max |
| PARAM_VALUE | 1 | numpages | 0-1048575 |
| BUF_SIZE | 0 | addr | s32min-s32max |
| CAPPED_DATA | 0 | addr | 1 |
| CAPPED_DATA | 1 | numpages | 1 |
| DATA_SOURCE | 0 | addr | r bpf_jit_alloc_exec |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 1 | numpages | unit_page |
| LOCK2 | global &pack_mutex | ||
| HALF_LOCKED2 | &d->mutex |
kernel/module/strict_rwx.c module_set_memory() -> module_set_memory param 2()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | addr | 1-u64max |
| PARAM_VALUE | 1 | numpages | 0-1048575 |
| CAPPED_DATA | 0 | addr | 1 |
| UNITS | 1 | numpages | unit_page |
| LOCK2 | global &module_mutex |