Defined in 2 files as a function:

Referenced in 3 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 gfp 1843402,1844426,1845450,1909962
DATA_SOURCE 0 folio r vma_alloc_folio_noprof
DATA_SOURCE 1 gfp r vma_thp_gfp_mask
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

mm/shmem.c shmem_add_to_page_cache() -> folio_throttle_swaprate()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 *folio->_mm_id 0-4294967295
PARAM_VALUE 1 gfp 0,32-17558752
CAPPED_DATA 0 folio 1
CAPPED_DATA 0 folio->index 1
DATA_SOURCE 0 folio $0
DATA_SOURCE 1 gfp $4 [m]
BIT_INFO 1 gfp 0x0,0x10bece0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &session->mutex
HALF_LOCKED2 &state.ctx->map_changing_lock
HALF_LOCKED2 _T->lock

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

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 gfp 1843402,1844426,1845450,1909962
DATA_SOURCE 0 folio r vma_alloc_folio_noprof
DATA_SOURCE 1 gfp r vma_thp_gfp_mask
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c do_swap_page() -> folio_throttle_swaprate()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 gfp 3264
CAPPED_DATA 0 folio 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c folio_prealloc() -> folio_throttle_swaprate()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 gfp 3264
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &oldmm->mmap_lock