Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/f2fs/segment.c f2fs_allocate_segment_for_resize() -> f2fs_need_SSR()

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 0 sbi $0
CAPABLE 0 21
LOCK2 &curseg->curseg_mutex
LOCK2 0 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 0 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 0 &sbi->cp_rwsem.internal_rwsem
TYPE_LOCK (struct curseg_info)->curseg_mutex
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/segment.c need_new_seg() -> f2fs_need_SSR()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
CAPPED_DATA 0 sbi->blocks_per_seg 1
DATA_SOURCE 0 sbi $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 sbi unit_byte
LOCK2 &curseg->curseg_mutex
LOCK2 &sit_i->sentry_lock
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 0 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 0 &sbi->io_order_lock.internal_rwsem
TYPE_LOCK (struct curseg_info)->curseg_mutex
TYPE_LOCK (struct sit_info)->sentry_lock

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

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
HALF_LOCKED2 &fio->sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem

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

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
HALF_LOCKED2 &fio->sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem