Defined in 1 files as a function:

Referenced in 8 files:

Smatch caller information:

fs/f2fs/gc.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 0-1
BUF_SIZE 0 sbi 1-s32max
FUZZY_MAX 1 count_type 1
HARD_MAX 1 count_type 1
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 inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 2
BUF_SIZE 0 sbi 1-s32max
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 move_data_block() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 4
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
CAPPED_DATA 0 sbi->meta_inode 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 sbi unit_byte
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
HALF_LOCKED2 0 &sbi->io_order_lock.internal_rwsem

fs/f2fs/checkpoint.c __f2fs_write_meta_folio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 4
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi r F2FS_F_SB
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem

fs/f2fs/checkpoint.c __f2fs_write_meta_folio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 4
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi r F2FS_F_SB
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem

fs/f2fs/data.c f2fs_finish_read_bio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 8-10
BUF_SIZE 0 sbi 1-s32max
BIT_INFO 1 count_type 0x0,0xf
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/data.c f2fs_invalidate_folio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 4
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
CAPPED_DATA 0 sbi->meta_ino_num 1
CAPPED_DATA 0 sbi->root_ino_num 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 sbi unit_byte

fs/f2fs/data.c f2fs_invalidate_folio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 3
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
CAPPED_DATA 0 sbi->node_ino_num 1
CAPPED_DATA 0 sbi->root_ino_num 1
PARAM_COMPARE 0 sbi->meta_ino_num != $0->node_ino_num
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 sbi unit_byte

fs/f2fs/data.c f2fs_write_end_bio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 6-7
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
STR_LEN 0 sbi (-1)
STR_LEN 0 sbi (-1)
BIT_INFO 1 count_type 0x6,0x7
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/data.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 0-1
BUF_SIZE 0 sbi 1-s32max
FUZZY_MAX 1 count_type 1
HARD_MAX 1 count_type 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/data.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 2
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/inline.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 0-1
BUF_SIZE 0 sbi 1-s32max
FUZZY_MAX 1 count_type 1
HARD_MAX 1 count_type 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem

fs/f2fs/inline.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 2
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem

fs/f2fs/file.c f2fs_dio_read_end_io() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 12
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi r F2FS_I_SB
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

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

Type Parameter Key Value
PARAM_VALUE 1 count_type 12
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 sbi unit_byte
HALF_LOCKED2 &pool->lock

fs/f2fs/file.c f2fs_dio_write_end_io() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 11
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi r F2FS_I_SB
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/dir.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 0-1
BUF_SIZE 0 sbi 1-s32max
FUZZY_MAX 1 count_type 1
HARD_MAX 1 count_type 1
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
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/dir.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 2
BUF_SIZE 0 sbi 1-s32max
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
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/super.c f2fs_inode_synced() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 5
BUF_SIZE 0 sbi (-1)-s32max
BUF_SIZE 0 sbi (-1)-s32max
DATA_SOURCE 0 sbi r F2FS_I_SB
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem

fs/f2fs/node.c __write_node_folio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 3
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi r F2FS_F_SB
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/node.c __write_node_folio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 3
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi r F2FS_F_SB
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &sbi->node_write.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/node.c __write_node_folio() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 0 sbi 4096-ptr_max
PARAM_VALUE 1 count_type 3
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
DATA_SOURCE 0 sbi r F2FS_F_SB
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &sbi->node_write.internal_rwsem
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/node.c clear_node_folio_dirty() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 3
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/f2fs/node.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 0-1
BUF_SIZE 0 sbi 1-s32max
FUZZY_MAX 1 count_type 1
HARD_MAX 1 count_type 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &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

fs/f2fs/node.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 2
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &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

fs/f2fs/compress.c f2fs_compress_write_end_io() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 6
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
STR_LEN 0 sbi (-1)
STR_LEN 0 sbi (-1)
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bio->bi_bdev->bd_queue->queue_lock

fs/f2fs/compress.c f2fs_compress_write_end_io() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 6
BUF_SIZE 0 sbi 1-s32max
BUF_SIZE 0 sbi 1-s32max
STR_LEN 0 sbi (-1)
STR_LEN 0 sbi (-1)
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bio->bi_bdev->bd_queue->queue_lock

fs/f2fs/compress.c f2fs_end_read_compressed_page() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 8
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 sbi unit_byte
HALF_LOCKED2 &pool->lock

fs/f2fs/compress.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 0-1
BUF_SIZE 0 sbi 1-s32max
FUZZY_MAX 1 count_type 1
HARD_MAX 1 count_type 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->node_write.internal_rwsem
HALF_LOCKED2 &sbi->writepages
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem

fs/f2fs/compress.c inode_dec_dirty_pages() -> dec_page_count()

Type Parameter Key Value
PARAM_VALUE 1 count_type 2
BUF_SIZE 0 sbi 1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &sbi->cp_rwsem.internal_rwsem
HALF_LOCKED2 &sbi->node_write.internal_rwsem
HALF_LOCKED2 &sbi->writepages
TYPE_LOCK (struct f2fs_rwsem)->internal_rwsem