Defined in 3 files as a prototype:
- arch/powerpc/include/asm/book3s/64/pgtable.h, line 1317 (as a prototype)
- arch/x86/include/asm/pgtable.h, line 1298 (as a prototype)
- include/linux/pgtable.h, line 468 (as a prototype)
Defined in 7 files as a function:
- arch/arm64/include/asm/pgtable.h, line 1270 (as a function)
- arch/powerpc/mm/book3s64/pgtable.c, line 59 (as a function)
- arch/riscv/include/asm/pgtable.h, line 1019 (as a function)
- arch/s390/include/asm/pgtable.h, line 1705 (as a function)
- arch/x86/mm/pgtable.c, line 393 (as a function)
- include/linux/pgtable.h, line 475 (as a function)
- mm/pgtable-generic.c, line 112 (as a function)
Referenced in 2 files:
Smatch caller information:
mm/huge_memory.c do_huge_pmd_wp_page() -> pmdp_set_access_flags()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->anon_vma | 1-u64max |
| PARAM_VALUE | 0 | vma->vm_ops | 0 |
| PARAM_VALUE | 1 | address | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| PARAM_VALUE | 4 | dirty | 1 |
| DATA_SOURCE | 3 | entry | r maybe_pmd_mkwrite |
| BIT_INFO | 1 | address | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | address | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | address | 0,2097152-u64max[c] |
| LOCK2 | vmf->ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &pool->lock |
mm/huge_memory.c insert_pmd() -> pmdp_set_access_flags()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_end | 1-u64max |
| PARAM_VALUE | 1 | address | 0,2097152-18446744073709551614 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| PARAM_VALUE | 4 | dirty | 1 |
| BUF_SIZE | 0 | vma | (-1),4,24,64,168-s32max |
| BUF_SIZE | 0 | vma | (-1),4,24,64,168-s32max |
| CAPPED_DATA | 0 | vma->vm_start | 1 |
| CAPPED_DATA | 1 | address | 1 |
| CAPPED_DATA | 1 | address | 1 |
| DATA_SOURCE | 0 | vma | $0 |
| DATA_SOURCE | 1 | address | $1 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 3 | entry | r maybe_pmd_mkwrite |
| PARAM_COMPARE | 0 | vma->vm_end | > $0->vm_start |
| PARAM_COMPARE | 1 | address | < $0->vm_end |
| PARAM_COMPARE | 1 | address | < $0->vm_end |
| PARAM_COMPARE | 1 | address | >= $0->vm_start |
| PARAM_COMPARE | 1 | address | >= $0->vm_start |
| BIT_INFO | 1 | address | 0x0,0xffffffffffe00000 |
| BIT_INFO | 1 | address | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | address | 0,2097152-s32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_end | |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_pgoff | |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_start | |
| UNITS | 1 | address | unit_byte |
mm/huge_memory.c touch_pmd() -> pmdp_set_access_flags()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 0 | vma->vm_file->f_inode->i_mapping->invalidate_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_inode->i_mapping->invalidate_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->i_mmap_rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->invalidate_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_file->f_mapping->invalidate_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | vma->vm_mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | vma->vm_mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | address | 0,2097152-u64max |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| DATA_SOURCE | 0 | vma | $0 |
| DATA_SOURCE | 2 | pmdp | $2 |
| DATA_SOURCE | 4 | dirty | $3 |
| BIT_INFO | 1 | address | 0x0,0xffffffffffe00000 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | address | 0,2097152-u64max[c] |
| USER_DATA | 4 | dirty | 0-1[c] |
| NO_OVERFLOW_SIMPLE | 0 | vma->vm_file->f_mapping->host->i_size | |
| HALF_LOCKED2 | &mm->mmap_lock |
mm/debug_vm_pgtable.c pmd_advanced_tests() -> pmdp_set_access_flags()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | vma | 4096-ptr_max |
| PARAM_VALUE | 1 | address | 0 |
| PARAM_VALUE | 2 | pmdp | 4096-ptr_max |
| PARAM_VALUE | 4 | dirty | 1 |
| DATA_SOURCE | 3 | entry | r pmd_mkdirty |
| PREEMPT_ADD | |||
| NOCHECK_CALL |