Defined in 1 files as a function:
Referenced in 15 files:
- fs/f2fs/checkpoint.c
- fs/f2fs/data.c
- fs/f2fs/dir.c
- fs/f2fs/f2fs.h
- fs/f2fs/file.c
- fs/f2fs/gc.c
- fs/f2fs/inline.c, line 706
- fs/f2fs/inode.c, line 877
- fs/f2fs/namei.c
- fs/f2fs/node.c
- fs/f2fs/segment.c
- fs/f2fs/super.c, line 4660
- fs/f2fs/sysfs.c, line 534
- fs/f2fs/verity.c, line 215
- fs/f2fs/xattr.c, line 834
Smatch caller information:
fs/f2fs/gc.c gc_data_segment() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| 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 | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/gc.c gc_data_segment() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| 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 | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/gc.c gc_data_segment() -> f2fs_up_write()
| 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 | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/gc.c gc_data_segment() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| BUF_SIZE | 0 | sem | 528 |
| 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 | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/gc.c gc_data_segment() -> f2fs_up_write()
| 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 | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/gc.c move_data_block() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &fio.sbi->io_order_lock.internal_rwsem | ||
| 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 update_sb_metadata() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| LOCK2 | &sbi->gc_lock.internal_rwsem | ||
| LOCK2 | &sbi->sb_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/inode.c f2fs_pre_evict_inode() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| NOCHECK_CALL |
fs/f2fs/segment.c f2fs_commit_atomic_write() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/segment.c f2fs_do_replace_block() -> f2fs_up_write()
| 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_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem |
fs/f2fs/checkpoint.c __need_flush_quota() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| LOCK2 | &sbi->cp_rwsem.internal_rwsem | ||
| LOCK2 | &sbi->quota_sem.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 block_operations() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| LOCK2 | &sbi->cp_rwsem.internal_rwsem | ||
| LOCK2 | &sbi->node_change.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 block_operations() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| LOCK2 | &sbi->cp_rwsem.internal_rwsem | ||
| LOCK2 | &sbi->node_change.internal_rwsem | ||
| LOCK2 | &sbi->node_write.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 block_operations() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| LOCK2 | &sbi->cp_rwsem.internal_rwsem | ||
| LOCK2 | &sbi->node_change.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->umount_mutex |
fs/f2fs/checkpoint.c block_operations() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| LOCK2 | &sbi->cp_rwsem.internal_rwsem | ||
| LOCK2 | &sbi->node_change.internal_rwsem | ||
| LOCK2 | &sbi->node_write.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_unlock_all() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->umount_mutex |
fs/f2fs/checkpoint.c f2fs_up_write_trace() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| DATA_SOURCE | 0 | sem | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &io->io_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->pin_sem.internal_rwsem |
fs/f2fs/checkpoint.c unblock_operations() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &sbi->cp_global_sem.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/data.c add_bio_entry() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &io->bio_list_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/data.c add_ipu_page() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &io->bio_list_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/data.c f2fs_disable_compressed_file() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/data.c f2fs_disable_compressed_file() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/data.c f2fs_disable_compressed_file() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/data.c f2fs_migrate_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_mapping->invalidate_lock | ||
| LOCK2 | &inode->i_rwsem | ||
| LOCK2 | &sbi->pin_sem.internal_rwsem | ||
| TYPE_LOCK | (struct address_space)->invalidate_lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/data.c f2fs_migrate_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_mapping->invalidate_lock | ||
| LOCK2 | &inode->i_rwsem | ||
| LOCK2 | &sbi->pin_sem.internal_rwsem | ||
| TYPE_LOCK | (struct address_space)->invalidate_lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/data.c f2fs_migrate_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_mapping->invalidate_lock | ||
| LOCK2 | &inode->i_rwsem | ||
| LOCK2 | &sbi->pin_sem.internal_rwsem | ||
| TYPE_LOCK | (struct address_space)->invalidate_lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/data.c f2fs_migrate_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/data.c f2fs_submit_all_merged_ipu_writes() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &io->bio_list_lock.internal_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/data.c f2fs_submit_merged_ipu_write() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &io->bio_list_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_rwsem.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/data.c f2fs_write_failed() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL |
fs/f2fs/xattr.c f2fs_setxattr() -> f2fs_up_write()
| 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 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/sysfs.c __sbi_store() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &of->mutex | ||
| LOCK2 | &sbi->sb_lock.internal_rwsem | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &sbi->sb->s_umount | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
fs/f2fs/inline.c f2fs_add_inline_entry() -> f2fs_up_write()
| 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/verity.c f2fs_end_enable_verity() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_disable_compressed_file() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_disable_compressed_file() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_disable_compressed_file() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_do_collapse() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_expand_inode_data() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| LOCK2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_expand_inode_data() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| LOCK2 | &sbi->gc_lock.internal_rwsem | ||
| LOCK2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_expand_inode_data() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| LOCK2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_expand_inode_data() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| LOCK2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_insert_range() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_ioc_get_encryption_pwsalt() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| NOCHECK_CALL | |||
| LOCK2 | &sbi->sb_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/file.c f2fs_ioc_set_compress_option() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_ioc_setfslabel() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| CAPABLE | 0 | 21 | |
| NOCHECK_CALL | |||
| LOCK2 | &sbi->sb_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/file.c f2fs_precache_extents() -> f2fs_up_write()
| 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_punch_hole() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_release_compress_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_reserve_compress_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_setattr() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock |
fs/f2fs/file.c f2fs_setflags_common() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c f2fs_setflags_common() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c finish_preallocate_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c finish_preallocate_blocks() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/f2fs/file.c try_to_fix_pino() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &fi->i_sem.internal_rwsem | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/dir.c f2fs_add_regular_entry() -> f2fs_up_write()
| 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/dir.c f2fs_do_tmpfile() -> f2fs_up_write()
| 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 | &inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/dir.c f2fs_drop_nlink() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &dir->i_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/super.c f2fs_record_stop_reason() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| NOCHECK_CALL | |||
| LOCK2 | &sbi->sb_lock.internal_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c cache_nat_entry() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &nm_i->nat_tree_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->cp_rwsem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->gc_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->pin_sem.internal_rwsem | ||
| HALF_LOCKED2 | &src_inode->i_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c f2fs_destroy_node_manager() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| NOCHECK_CALL | |||
| LOCK2 | &nm_i->nat_tree_lock.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c f2fs_flush_nat_entries() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &nm_i->nat_tree_lock.internal_rwsem | ||
| LOCK2 | &sbi->cp_global_sem.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/node.c f2fs_flush_nat_entries() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &nm_i->nat_tree_lock.internal_rwsem | ||
| LOCK2 | &sbi->cp_global_sem.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/node.c f2fs_try_to_free_nats() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &nm_i->nat_tree_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->umount_mutex | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |
fs/f2fs/node.c set_node_addr() -> f2fs_up_write()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sem | 4096-ptr_max |
| PARAM_VALUE | 0 | sem->internal_rwsem.osq.tail.counter | 0-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &nm_i->nat_tree_lock.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->cp_global_sem.internal_rwsem | ||
| HALF_LOCKED2 | &sbi->node_write.internal_rwsem | ||
| TYPE_LOCK | (struct f2fs_rwsem)->internal_rwsem |