Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 1 new_order 0-254
PARAM_VALUE 3 lock_at 4096-ptr_max
PARAM_VALUE 5 split_type 0
BUF_SIZE 4 list->next (-1),16
BUF_SIZE 4 list->prev (-1),16
CAPPED_DATA 1 new_order 1
DATA_SOURCE 0 folio r _compound_head
DATA_SOURCE 1 new_order $2
DATA_SOURCE 3 lock_at $0
DATA_SOURCE 4 list $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &ksm_thread_mutex
HALF_LOCKED2 global &mf_mutex

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

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 folio->mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 *folio->_mm_id 0-4294967295
PARAM_VALUE 1 new_order 0-254
PARAM_VALUE 3 lock_at 4096-ptr_max
PARAM_VALUE 4 list 0
PARAM_VALUE 5 split_type 1
CAPPED_DATA 0 folio 1
CAPPED_DATA 0 folio->mapping 1
CAPPED_DATA 1 new_order 1
DATA_SOURCE 0 folio $0
DATA_SOURCE 1 new_order $1
DATA_SOURCE 2 split_at $2
DATA_SOURCE 4 list $3
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &split_debug_mutex