Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

fs/f2fs/gc.c gc_data_segment() -> f2fs_down_write_trylock()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/gc.c gc_data_segment() -> f2fs_down_write_trylock()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/gc.c gc_data_segment() -> f2fs_down_write_trylock()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
BUF_SIZE 0 sem 528
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/checkpoint.c __need_flush_quota() -> f2fs_down_write_trylock()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sbi->cp_global_sem.internal_rwsem
LOCK2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
HALF_LOCKED2 &sbi->umount_mutex
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/checkpoint.c f2fs_down_write_trylock_trace() -> f2fs_down_write_trylock()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
PARAM_VALUE 0 sem->sbi 4096-ptr_max
DATA_SOURCE 0 sem $0
RX_PATH
TASK_NOT_RUNNING

fs/f2fs/node.c f2fs_try_to_free_nats() -> f2fs_down_write_trylock()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sbi->umount_mutex