Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/f2fs/xattr.c write_all_xattrs() -> f2fs_new_node_folio()

Type Parameter Key Value
PARAM_VALUE 0 dn 4686308694390059008
PARAM_VALUE 0 dn->inode 4096-ptr_max
PARAM_VALUE 0 dn->nid 0-4294967294
PARAM_VALUE 0 dn->node_changed 0
PARAM_VALUE 1 ofs 536870911
MEM_ZERO 0 dn
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem

fs/f2fs/node.c f2fs_get_dnode_of_data() -> f2fs_new_node_folio()

Type Parameter Key Value
PARAM_VALUE 0 dn 4096-ptr_max
PARAM_VALUE 0 dn->data_blkaddr 0
PARAM_VALUE 0 dn->inode 4096-ptr_max
PARAM_VALUE 0 dn->inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 dn->inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 dn->inode->i_sb 4096-ptr_max
PARAM_VALUE 0 dn->inode_folio 1-u64max
PARAM_VALUE 0 dn->nid 0
DATA_SOURCE 0 dn $0
MEM_ZERO 0 dn
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &src_inode->i_rwsem

fs/f2fs/node.c f2fs_new_inode_folio() -> f2fs_new_node_folio()

Type Parameter Key Value
PARAM_VALUE 0 dn 6181705587766706176
PARAM_VALUE 0 dn->inode 4096-ptr_max
PARAM_VALUE 0 dn->node_changed 0
PARAM_VALUE 1 ofs 0
MEM_ZERO 0 dn
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/node.c f2fs_recover_xattr_data() -> f2fs_new_node_folio()

Type Parameter Key Value
PARAM_VALUE 0 dn 2163629217901744128
PARAM_VALUE 0 dn->inode 4096-ptr_max
PARAM_VALUE 0 dn->nid 0-4294967294
PARAM_VALUE 0 dn->node_changed 0
PARAM_VALUE 1 ofs 536870911
MEM_ZERO 0 dn
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem