Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/f2fs/data.c check_inplace_update_policy() -> f2fs_is_checkpointed_data()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
UNITS 1 blkaddr unit_page
HALF_LOCKED2 &fio->sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem

fs/f2fs/data.c f2fs_should_update_outplace() -> f2fs_is_checkpointed_data()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
UNITS 1 blkaddr unit_page
HALF_LOCKED2 &fio->sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem

fs/f2fs/file.c __read_out_blkaddrs() -> f2fs_is_checkpointed_data()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 1 blkaddr r f2fs_data_blkaddr
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
LOCK2 &dst_inode->i_rwsem
LOCK2 &inode->i_rwsem
LOCK2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &dst_inode->i_mapping->invalidate_lock
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct address_space)->invalidate_lock
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem
TYPE_LOCK (struct inode)->i_rwsem