Defined in 1 files as a function:
Referenced in 12 files:
- arch/powerpc/kvm/book3s_hv_uvmem.c, line 547
- arch/powerpc/platforms/pseries/papr_scm.c, line 1337
- drivers/gpu/drm/amd/amdkfd/kfd_migrate.c
- drivers/gpu/drm/amd/amdkfd/kfd_svm.c, line 182
- drivers/gpu/drm/drm_gpusvm.c, line 1614
- drivers/gpu/drm/drm_pagemap.c
- fs/proc/task_mmu.c, line 3385
- kernel/dma/mapping.c, line 199
- lib/test_hmm.c, line 865
- mm/khugepaged.c, line 1970
- mm/memory-failure.c, line 397
- mm/migrate_device.c, line 345
Smatch caller information:
lib/test_hmm.c dmirror_migrate_alloc_and_copy() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| DATA_SOURCE | 0 | page | r migrate_pfn_to_page |
| LOCK2 | &mm->mmap_lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock |
fs/proc/task_mmu.c can_gather_numa_stats() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| DATA_SOURCE | 0 | page | r vm_normal_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_get_pages() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 0 | page | r hmm_pfn_to_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &gpusvm->notifier_lock | ||
| TYPE_LOCK | (struct drm_gpusvm)->notifier_lock |
drivers/gpu/drm/drm_pagemap.c drm_pagemap_migrate_to_devmem() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 0 | page | r migrate_pfn_to_page |
| LOCK2 | &driver_migrate_lock | ||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &vm->lock | ||
| LOCK2 | global &drm_unplug_srcu | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct xe_vm)->lock |
drivers/gpu/drm/drm_pagemap.c drm_pagemap_migrate_unmap_pages() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| DATA_SOURCE | 0 | page | r migrate_pfn_to_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &driver_migrate_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &vm->lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.c svm_migrate_copy_to_ram() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| DATA_SOURCE | 0 | page | r migrate_pfn_to_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &prange->migrate_mutex | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &p->svms.lock | ||
| HALF_LOCKED2 | &process_info->lock | ||
| HALF_LOCKED2 | &svms->lock | ||
| TYPE_LOCK | (struct svm_range)->migrate_mutex |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.c svm_migrate_copy_to_vram() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| DATA_SOURCE | 0 | page | r migrate_pfn_to_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &prange->migrate_mutex | ||
| LOCK2 | &svms->lock | ||
| HALF_LOCKED2 | &process_info->lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct svm_range)->migrate_mutex | ||
| TYPE_LOCK | (struct svm_range_list)->lock |
mm/migrate_device.c migrate_vma_collect_pmd() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| DATA_SOURCE | 0 | page | r vm_normal_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/memory-failure.c __add_to_kill() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | page | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | page | unit_page |
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &av->root->rwsem | ||
| HALF_LOCKED2 | &mapping->i_mmap_rwsem | ||
| HALF_LOCKED2 | global &mf_mutex |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_dma_map_dev() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | page | r hmm_pfn_to_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mm->mmap_lock | ||
| LOCK2 | &prange->migrate_mutex | ||
| LOCK2 | &svms->lock | ||
| HALF_LOCKED2 | &process_info->lock | ||
| TYPE_LOCK | (struct mm_struct)->mmap_lock | ||
| TYPE_LOCK | (struct svm_range)->migrate_mutex | ||
| TYPE_LOCK | (struct svm_range_list)->lock |
kernel/dma/mapping.c dma_map_page_attrs() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | page | $1 |
mm/khugepaged.c try_collapse_pte_mapped_thp() -> is_zone_device_page()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| DATA_SOURCE | 0 | page | r vm_normal_page |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock |