Documented in 1 files:
Defined in 1 files as a function:
Referenced in 2 files:
Smatch caller information:
mm/huge_memory.c __split_huge_pmd_locked() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &vma->vm_private_data->rw_sema |
mm/huge_memory.c change_huge_pmd() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dst_mm->mmap_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/huge_memory.c change_non_present_huge_pmd() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/huge_memory.c copy_huge_non_present_pmd() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pmd | $7 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/huge_memory.c copy_huge_pmd() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/huge_memory.c split_huge_pmd_locked() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
mm/debug_vm_pgtable.c pmd_leaf_soft_dirty_tests() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pmd | r softleaf_to_pmd |
mm/debug_vm_pgtable.c pmd_softleaf_tests() -> pmd_is_valid_softleaf()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | pmd | r softleaf_to_pmd |