Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/f2fs/gc.c gc_node_segment() -> f2fs_get_node_folio()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->cp_rwsem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->cp_rwsem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->gc_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->gc_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->io_order_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->io_order_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->meta_inode 4096-ptr_max
PARAM_VALUE 0 sbi->meta_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648
PARAM_VALUE 0 sbi->nm_info 4096-ptr_max
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.dep_map->name 0-255
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->node_change.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->node_change.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->node_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648
PARAM_VALUE 0 sbi->node_write.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->node_write.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->pin_sem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->pin_sem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->quota_sem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->quota_sem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->raw_super 4096-ptr_max
PARAM_VALUE 0 sbi->sb->s_bdi->wb_switch_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->sb->s_bdi->wb_switch_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->sb->s_umount.first_waiter->type 0-1
PARAM_VALUE 0 sbi->sb_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->sb_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 *sbi->next_victim_seg 0-4294967295
PARAM_VALUE 2 node_type 0
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
UNITS 1 nid unit_byte
LOCK2 0 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 0 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 0 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 0 &sbi->pin_sem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/gc.c is_alive() -> f2fs_get_node_folio()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->cp_rwsem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->cp_rwsem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->gc_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->gc_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->io_order_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->io_order_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->meta_inode 4096-ptr_max
PARAM_VALUE 0 sbi->meta_inode->i_sb->s_cop->inode_info_offs 1632,1808,2632,2648
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->node_change.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->node_change.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->node_inode->i_sb->s_cop->inode_info_offs 1632,1808,2632,2648
PARAM_VALUE 0 sbi->node_write.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->node_write.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->pin_sem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->pin_sem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->quota_sem.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->quota_sem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->raw_super 4096-ptr_max
PARAM_VALUE 0 sbi->sb->s_bdi->wb_switch_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->sb->s_bdi->wb_switch_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->sb->s_umount.first_waiter->type 0-1
PARAM_VALUE 0 sbi->sb_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->sb_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 *sbi->next_victim_seg 0-4294967295
PARAM_VALUE 0 *sbi->page_eio_cnt s32min-s32max
PARAM_VALUE 2 node_type 0
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
UNITS 1 nid unit_byte
LOCK2 0 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 0 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 0 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 0 &sbi->pin_sem.internal_rwsem

fs/f2fs/recovery.c check_index_in_prev_nodes() -> f2fs_get_node_folio()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.dep_map->name 0-255
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->cp_global_sem.internal_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 sbi->cp_global_sem.sbi 4096-ptr_max
PARAM_VALUE 0 sbi->iostat_lat_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 sbi->iostat_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 sbi->meta_inode 4096-ptr_max
PARAM_VALUE 0 sbi->meta_inode->i_sb->s_cop->inode_info_offs 1632,1808,2632,2648
PARAM_VALUE 0 sbi->nm_info 4096-ptr_max
PARAM_VALUE 0 sbi->nm_info->nat_entries.prev->next 4096-ptr_max
PARAM_VALUE 0 sbi->nm_info->nat_entries.prev->next->next 4096-ptr_max
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.dep_map->name 0-255
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->handoff_set 1
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->node_inode->i_sb->s_cop->inode_info_offs 1632,1808,2632,2648
PARAM_VALUE 0 sbi->s_error_work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 sbi->sb 4096-ptr_max
PARAM_VALUE 0 sbi->sb->s_fs_info->error_dirty 0-1
PARAM_VALUE 0 sbi->stat_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 sbi->total_valid_inode_count.lock.owner (-1)
PARAM_VALUE 0 sbi->total_valid_inode_count.lock.owner_cpu u32max
PARAM_VALUE 0 *sbi->page_eio_cnt s32min-s32max
PARAM_VALUE 1 nid 1-u32max
PARAM_VALUE 2 node_type 0
CAPPED_DATA 0 sbi->sb 1
DATA_SOURCE 0 sbi $0
UNITS 1 nid unit_byte
LOCK2 0 &sbi->cp_global_sem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 sbi->alloc_valid_block_count.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 sbi->current_reserved_blocks 0-4294967295
PARAM_VALUE 0 sbi->nm_info->nat_root.xa_flags 0-4294967295
PARAM_VALUE 0 sbi->nm_info->nat_set_root.xa_flags 0-4294967295
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 sbi->nm_info->nat_tree_lock.internal_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 sbi->raw_super->feature 0-4294967295
PARAM_VALUE 0 sbi->total_valid_block_count 0-4294967295
PARAM_VALUE 0 sbi->total_valid_inode_count.lock.owner_cpu 0-4294967295
PARAM_VALUE 0 sbi->total_valid_node_count 0-4294967295
PARAM_VALUE 1 nid 0-u32max
PARAM_VALUE 2 node_type 3
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
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 truncate_dnode() -> f2fs_get_node_folio()

Type Parameter Key Value
PARAM_VALUE 1 nid 1-u32max
PARAM_VALUE 2 node_type 3
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
UNITS 1 nid unit_byte

fs/f2fs/node.c truncate_nodes() -> f2fs_get_node_folio()

Type Parameter Key Value
PARAM_VALUE 1 nid 1-u32max
PARAM_VALUE 2 node_type 3
BUF_SIZE 0 sbi 1-s32max
RX_PATH
UNITS 1 nid unit_byte

fs/f2fs/node.c truncate_partial_nodes() -> f2fs_get_node_folio()

Type Parameter Key Value
PARAM_VALUE 1 nid 0-u32max
PARAM_VALUE 2 node_type 3
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem