Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/gpu/drm/drm_pagemap.c __drm_pagemap_migrate_to_ram() -> drm_pagemap_migrate_unmap_pages()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
PARAM_VALUE 1 pagemap_addr 4096-ptr_max
PARAM_VALUE 2 migrate_pfn 4096-ptr_max
PARAM_VALUE 3 npages 0-4503599627370495
PARAM_VALUE 4 dir 2
PARAM_VALUE 5 state 8637231281627271168
CAPPED_DATA 3 npages 1
CAPPED_DATA 3 npages 1
DATA_SOURCE 3 npages r npages_in_range
PARAM_COMPARE 1 pagemap_addr >= $3
PARAM_COMPARE 2 migrate_pfn > $3
PARAM_COMPARE 3 npages < $1
PARAM_COMPARE 3 npages <= $1
PARAM_COMPARE 3 npages <= $1
NOSPEC 3 npages
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 npages 0-4503599627370495[c]
USER_DATA 5 state->dma_state.__size 0-u64max[c]
UNITS 0 dev unit_byte
UNITS 2 migrate_pfn unit_page
HALF_LOCKED2 &mm->mmap_lock

drivers/gpu/drm/drm_pagemap.c drm_pagemap_evict_to_ram() -> drm_pagemap_migrate_unmap_pages()

Type Parameter Key Value
PARAM_VALUE 1 pagemap_addr 4096-ptr_max
PARAM_VALUE 2 migrate_pfn 4096-ptr_max
PARAM_VALUE 3 npages 0-4503599627370495
PARAM_VALUE 4 dir 2
PARAM_VALUE 5 state 1195593651579117568
CAPPED_DATA 3 npages 1
CAPPED_DATA 3 npages 1
PARAM_COMPARE 3 npages < $1
PARAM_COMPARE 3 npages < $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 3 npages
UNITS 0 dev unit_byte
UNITS 3 npages unit_page
HALF_LOCKED2 ttm_bo->base.resv

drivers/gpu/drm/drm_pagemap.c drm_pagemap_migrate_remote_to_local() -> drm_pagemap_migrate_unmap_pages()

Type Parameter Key Value
PARAM_VALUE 0 dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 dev->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
PARAM_VALUE 0 dev->dma_uses_io_tlb 1
PARAM_VALUE 2 migrate_pfn 4096-ptr_max
PARAM_VALUE 3 npages 1-4503599627370495
PARAM_VALUE 4 dir 2
PARAM_VALUE 5 state 0
DATA_SOURCE 0 dev $1
DATA_SOURCE 1 pagemap_addr $5
DATA_SOURCE 2 migrate_pfn $3
DATA_SOURCE 3 npages $6
NOCHECK_CALL
UNITS 0 dev unit_byte
LOCK2 &driver_migrate_lock
LOCK2 &mm->mmap_lock
LOCK2 &vm->lock
LOCK2 global &drm_unplug_srcu
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/drm_pagemap.c drm_pagemap_migrate_sys_to_dev() -> drm_pagemap_migrate_unmap_pages()

Type Parameter Key Value
PARAM_VALUE 3 npages 1-4503599627370495
PARAM_VALUE 4 dir 1
PARAM_VALUE 5 state 9032673953758285824
DATA_SOURCE 1 pagemap_addr $3
DATA_SOURCE 2 migrate_pfn $1
DATA_SOURCE 3 npages $4
DATA_SOURCE 5 state $6
NOCHECK_CALL
UNITS 0 dev unit_byte
LOCK2 &driver_migrate_lock
LOCK2 &mm->mmap_lock
LOCK2 &vm->lock
LOCK2 global &drm_unplug_srcu
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct xe_vm)->lock