Defined in 2 files as a function:

Referenced in 8 files:

Smatch caller information:

mm/huge_memory.c __folio_split() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 14-15
CAPPED_DATA 0 order 1
DATA_SOURCE 0 order r folio_order
FUZZY_MAX 1 item 15
BIT_INFO 1 item 0xe,0xf
HARD_MAX 1 item 15
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 order unit_bit

mm/huge_memory.c deferred_split_folio() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 16
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read

mm/huge_memory.c map_anon_folio_pmd_pf() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 9
PARAM_VALUE 1 item 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

mm/huge_memory.c vma_alloc_anon_folio_pmd() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 9
PARAM_VALUE 1 item 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

mm/huge_memory.c vma_alloc_anon_folio_pmd() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 9
PARAM_VALUE 1 item 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

mm/huge_memory.c vma_alloc_anon_folio_pmd() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 9
PARAM_VALUE 1 item 2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

mm/huge_memory.c vma_alloc_anon_folio_pmd() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 9
PARAM_VALUE 1 item 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

mm/page_io.c __swap_writepage() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 9
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/page_io.c swap_read_end() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 6
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/page_io.c swap_writeout() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 5
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/shmem.c shmem_alloc_and_add_folio() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 1 item 12
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

mm/shmem.c shmem_alloc_and_add_folio() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 12
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

mm/shmem.c shmem_alloc_and_add_folio() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 13
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

mm/shmem.c shmem_get_folio_gfp() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 11
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/shmem.c shmem_writeout() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 10
DATA_SOURCE 0 order r folio_order
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/migrate_device.c migrate_vma_insert_huge_pmd_page() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 9
PARAM_VALUE 1 item 2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &drm->dmem->mutex

mm/migrate_device.c migrate_vma_insert_huge_pmd_page() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 9
PARAM_VALUE 1 item 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &drm->dmem->mutex

mm/vmscan.c shrink_folio_list() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 10
DATA_SOURCE 0 order r folio_order
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/memory.c alloc_anon_folio() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-10
PARAM_VALUE 1 item 2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c alloc_anon_folio() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 1 item 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c map_anon_folio_pte_pf() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-255
PARAM_VALUE 1 item 0
DATA_SOURCE 0 order r folio_order
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 vmf->ptl
HALF_LOCKED2 &mm->mmap_lock

mm/khugepaged.c __collapse_huge_page_swapin() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-8
PARAM_VALUE 1 item 19
CAPPED_DATA 0 order 1
DATA_SOURCE 0 order $5
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/khugepaged.c count_collapse_event() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-9
PARAM_VALUE 1 item 3-4,19-21
CAPPED_DATA 0 order 1
DATA_SOURCE 0 order $0
DATA_SOURCE 1 item $2
HARD_MAX 1 item 21
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 ptl

mm/swap_state.c __swap_cache_alloc() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order 0-10
PARAM_VALUE 1 item 8
DATA_SOURCE 0 order $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 order unit_byte

mm/swap_state.c swap_cache_alloc_folio() -> count_mthp_stat()

Type Parameter Key Value
PARAM_VALUE 0 order s32min-(-1),1-s32max
PARAM_VALUE 1 item 7
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 order unit_byte