Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

mm/readahead.c read_pages() -> filemap_remove_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->_deferred_list.next->prev 4096-ptr_max
PARAM_VALUE 0 folio->_deferred_list.prev->next 4096-ptr_max
PARAM_VALUE 0 folio->_hugetlb_subpool 0
PARAM_VALUE 0 folio->lru.next 4096-ptr_max
PARAM_VALUE 0 folio->lru.prev 4096-ptr_max
PARAM_VALUE 0 folio->mapping 0
PARAM_VALUE 0 folio->page.buddy_list.next 4096-ptr_max
PARAM_VALUE 0 folio->page.buddy_list.prev 4096-ptr_max
PARAM_VALUE 0 folio->page.memcg_data 0
PARAM_VALUE 0 folio->page.pcp_list.next 4096-ptr_max
PARAM_VALUE 0 folio->page.pcp_list.prev 4096-ptr_max
PARAM_VALUE 0 folio->page.zone_device_data->kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 folio->pgmap->ref.data 0,4096-ptr_max
PARAM_VALUE 0 folio->private 0
DATA_SOURCE 0 folio r readahead_folio
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mapping->invalidate_lock

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

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->index 0-2251799813685247
PARAM_VALUE 0 folio->mapping 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->index 0-2251799813685247
PARAM_VALUE 0 folio->mapping 4096-ptr_max
CAPPED_DATA 0 folio 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/shmem.c shmem_mfill_filemap_add() -> filemap_remove_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->mapping 4096-ptr_max
DATA_SOURCE 0 folio $0
NOCHECK_CALL
LOCK2 &state.ctx->map_changing_lock
TYPE_LOCK (struct userfaultfd_ctx)->map_changing_lock

mm/shmem.c shmem_mfill_filemap_remove() -> filemap_remove_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
CAPPED_DATA 0 folio 1
DATA_SOURCE 0 folio $0
NOCHECK_CALL
LOCK2 &state.ctx->map_changing_lock
TYPE_LOCK (struct userfaultfd_ctx)->map_changing_lock

mm/truncate.c truncate_inode_folio() -> filemap_remove_folio()

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
CAPPED_DATA 0 folio->mapping 1
DATA_SOURCE 0 folio $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/hugetlbfs/inode.c hugetlb_delete_from_page_cache() -> filemap_remove_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
DATA_SOURCE 0 folio $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

mm/memfd_luo.c memfd_luo_retrieve_folios() -> filemap_remove_folio()

Type Parameter Key Value
PARAM_VALUE 0 folio 4096-ptr_max
PARAM_VALUE 0 folio->mapping 4096-ptr_max
PARAM_VALUE 0 folio->mapping->host->i_sb->s_cop->empty_dir 0,86,661756434209751040,4392966320616476672,5234023279986843648,8614756098313990144
PARAM_VALUE 0 folio->mapping->host->i_sb->s_cop->get_context 0,706,17350455714160640,4513809449498124288,5149251875611672576,7067778626864828416
PARAM_VALUE 0 folio->mapping->host->i_sb->s_cop->set_context 0,67,317457138841939968,3250154607523569664,5979066299606671360,6756104566897242112
DATA_SOURCE 0 folio r kho_restore_folio
NOCHECK_CALL
LOCK2 &session->mutex
LOCK2 _T->lock
TYPE_LOCK (struct luo_session)->mutex