Defined in 1 files as a function:

Referenced in 12 files:

Smatch caller information:

fs/f2fs/gc.c move_data_block() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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

fs/f2fs/gc.c ra_data_block() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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

fs/f2fs/segment.c __f2fs_init_atgc_curseg() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem

fs/f2fs/segment.c do_write_page() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->node_write.internal_rwsem

fs/f2fs/segment.c f2fs_allocate_data_block() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem

fs/f2fs/segment.c f2fs_allocate_new_section() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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/segment.c f2fs_allocate_new_segments() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
NOCHECK_CALL
LOCK2 &sbi->cp_global_sem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
CAPABLE 0 21
NOCHECK_CALL
LOCK2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/checkpoint.c f2fs_down_read_trace() -> f2fs_down_read()

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
NOCHECK_CALL

fs/f2fs/data.c account_writeback() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &sbi->writepages

fs/f2fs/data.c f2fs_submit_merged_ipu_write() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem

fs/f2fs/xattr.c f2fs_getxattr() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/xattr.c f2fs_listxattr() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/sysfs.c f2fs_sbi_show() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

fs/f2fs/namei.c set_compress_new_inode() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/namei.c set_file_temperature() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dir->d_inode->i_rwsem

fs/f2fs/file.c f2fs_dio_read_iter() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
BUF_SIZE 0 sem 528
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/f2fs/file.c f2fs_dio_write_iter() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
NOCHECK_CALL

fs/f2fs/file.c f2fs_dio_write_iter() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
BUF_SIZE 0 sem 528
NOCHECK_CALL

fs/f2fs/file.c f2fs_do_sync_file() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

fs/f2fs/file.c f2fs_file_mmap_prepare() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/file.c f2fs_ioc_getfslabel() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
NOCHECK_CALL

fs/f2fs/file.c finish_preallocate_blocks() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/dir.c f2fs_add_dentry() -> f2fs_down_read()

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

fs/f2fs/super.c f2fs_do_quota_sync() -> f2fs_down_read()

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

fs/f2fs/super.c f2fs_dquot_acquire() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock

fs/f2fs/node.c __f2fs_build_free_nids() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem

fs/f2fs/node.c f2fs_get_node_info() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &src_inode->i_rwsem

fs/f2fs/node.c f2fs_is_checkpointed_node() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem

fs/f2fs/node.c f2fs_need_dentry_mark() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->node_write.internal_rwsem

fs/f2fs/node.c f2fs_need_inode_block_update() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &sbi->node_write.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/node.c scan_free_nid_bits() -> f2fs_down_read()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem