Documented in 1 files:
Defined in 1 files as a function:
Referenced in 4 files:
Smatch caller information:
mm/huge_memory.c remove_migration_pmd() -> softleaf_is_migration_read()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | entry | r softleaf_from_pmd |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |
mm/hugetlb.c copy_hugetlb_page_range() -> softleaf_is_migration_read()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | entry | r softleaf_from_pte |
| 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/memory.c copy_nonpresent_pte() -> softleaf_is_migration_read()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | entry | r softleaf_from_pte |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &oldmm->mmap_lock | ||
| LOCK2 | dst_ptl | ||
| LOCK2 | rcu_read | ||
| LOCK2 | src_ptl | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
mm/migrate.c remove_migration_pte() -> softleaf_is_migration_read()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | entry | r softleaf_from_pte |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &anon_vma->root->rwsem | ||
| HALF_LOCKED2 | &folio->private->lock |