Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

mm/kasan/init.c __pagetable_ctor() -> lruvec_stat_add_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 idx 38
DATA_SOURCE 0 folio $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 irq

mm/filemap.c replace_page_cache_folio() -> lruvec_stat_add_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->mapping 4096-ptr_max
PARAM_VALUE 1 idx 19
CAPPED_DATA 0 folio 1
DATA_SOURCE 0 folio $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 irq

mm/filemap.c replace_page_cache_folio() -> lruvec_stat_add_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->mapping 4096-ptr_max
PARAM_VALUE 1 idx 22
CAPPED_DATA 0 folio 1
DATA_SOURCE 0 folio $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 irq

mm/memory.c __pagetable_ctor() -> lruvec_stat_add_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 idx 38
DATA_SOURCE 0 folio $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

arch/x86/mm/pat/set_memory.c __pagetable_ctor() -> lruvec_stat_add_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 idx 38
DATA_SOURCE 0 folio $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cpa_lock
HALF_LOCKED2 global &mem_enc_lock

mm/hugetlb_vmemmap.c __pagetable_ctor() -> lruvec_stat_add_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 idx 38
DATA_SOURCE 0 folio $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

arch/x86/mm/pgtable.c __pagetable_ctor() -> lruvec_stat_add_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 1 idx 38
DATA_SOURCE 0 folio $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL