Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

fs/nfs/pnfs_nfs.c bdi_wb_stat_mod() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-ptr_max
PARAM_VALUE 1 item 1
DATA_SOURCE 1 item $1
DATA_SOURCE 2 amount $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 2 amount 1-1048576[c]
HALF_LOCKED2 &pool->lock

mm/page-writeback.c __folio_end_writeback() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 1
PARAM_VALUE 2 amount (-4294967295)-0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 flags
HALF_LOCKED2 &folio->private->lock

mm/page-writeback.c __folio_start_writeback() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 1
PARAM_VALUE 2 amount 0-4294967295
DATA_SOURCE 2 amount r folio_nr_pages
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 flags
HALF_LOCKED2 &bfs->lock
HALF_LOCKED2 &sbi->node_write.internal_rwsem
HALF_LOCKED2 flags

mm/page-writeback.c __wb_writeout_add() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 3
PARAM_VALUE 2 amount 0-4294967295
DATA_SOURCE 0 wb $0
DATA_SOURCE 2 amount $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 flags
HALF_LOCKED2 &folio->private->lock

mm/page-writeback.c folio_account_cleaned() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 4
PARAM_VALUE 2 amount (-4294967295)-0
DATA_SOURCE 0 wb $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

mm/page-writeback.c folio_account_cleaned() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 0
PARAM_VALUE 2 amount (-4294967295)-0
DATA_SOURCE 0 wb $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 irq
HALF_LOCKED2 rcu_read

mm/page-writeback.c folio_account_dirtied() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 4
PARAM_VALUE 2 amount 0-4294967295
DATA_SOURCE 2 amount r folio_nr_pages
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 flags
HALF_LOCKED2 &folio->private->lock

mm/page-writeback.c folio_account_dirtied() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 0
PARAM_VALUE 2 amount 0-4294967295
DATA_SOURCE 2 amount r folio_nr_pages
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 flags
HALF_LOCKED2 &folio->private->lock

mm/page-writeback.c folio_account_dirtied() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 2
PARAM_VALUE 2 amount 0-4294967295
DATA_SOURCE 2 amount r folio_nr_pages
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 flags
HALF_LOCKED2 &folio->private->lock

mm/page-writeback.c folio_clear_dirty_for_io() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 4
PARAM_VALUE 2 amount (-4294967295)-0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sdp->sd_log_flush_lock

mm/page-writeback.c folio_clear_dirty_for_io() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 0
PARAM_VALUE 2 amount (-4294967295)-0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sdp->sd_log_flush_lock

mm/page-writeback.c folio_redirty_for_writepage() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 2
PARAM_VALUE 2 amount (-4294967295)-0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 obj->base.resv

fs/fs-writeback.c inode_do_switch_wbs() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-u64max
PARAM_VALUE 1 item 0
PARAM_VALUE 2 amount (-4294967295)-0
DATA_SOURCE 0 wb $1
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 &bdi->wb_switch_rwsem
LOCK2 &inode->i_lock
LOCK2 &new_wb->list_lock
LOCK2 irq
LOCK2 0 &wb->list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct backing_dev_info)->wb_switch_rwsem
TYPE_LOCK (struct bdi_writeback)->list_lock
TYPE_LOCK (struct inode)->i_lock

fs/fs-writeback.c inode_do_switch_wbs() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-ptr_max
PARAM_VALUE 1 item 0
PARAM_VALUE 2 amount 0-4294967295
CAPPED_DATA 0 wb 1
DATA_SOURCE 0 wb $2
DATA_SOURCE 2 amount r folio_nr_pages
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 &bdi->wb_switch_rwsem
LOCK2 &inode->i_lock
LOCK2 &old_wb->list_lock
LOCK2 irq
LOCK2 0 &wb->list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct backing_dev_info)->wb_switch_rwsem
TYPE_LOCK (struct bdi_writeback)->list_lock
TYPE_LOCK (struct inode)->i_lock

fs/fs-writeback.c inode_do_switch_wbs() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-u64max
PARAM_VALUE 1 item 4
PARAM_VALUE 2 amount (-4294967295)-0
DATA_SOURCE 0 wb $1
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 &bdi->wb_switch_rwsem
LOCK2 &inode->i_lock
LOCK2 &new_wb->list_lock
LOCK2 irq
LOCK2 0 &wb->list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct backing_dev_info)->wb_switch_rwsem
TYPE_LOCK (struct bdi_writeback)->list_lock
TYPE_LOCK (struct inode)->i_lock

fs/fs-writeback.c inode_do_switch_wbs() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-ptr_max
PARAM_VALUE 1 item 4
PARAM_VALUE 2 amount 0-4294967295
CAPPED_DATA 0 wb 1
DATA_SOURCE 0 wb $2
DATA_SOURCE 2 amount r folio_nr_pages
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 &bdi->wb_switch_rwsem
LOCK2 &inode->i_lock
LOCK2 &old_wb->list_lock
LOCK2 irq
LOCK2 0 &wb->list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct backing_dev_info)->wb_switch_rwsem
TYPE_LOCK (struct bdi_writeback)->list_lock
TYPE_LOCK (struct inode)->i_lock

fs/fs-writeback.c inode_do_switch_wbs() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-u64max
PARAM_VALUE 1 item 1
PARAM_VALUE 2 amount (-4294967295)-0
DATA_SOURCE 0 wb $1
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 &bdi->wb_switch_rwsem
LOCK2 &inode->i_lock
LOCK2 &new_wb->list_lock
LOCK2 irq
LOCK2 0 &wb->list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct backing_dev_info)->wb_switch_rwsem
TYPE_LOCK (struct bdi_writeback)->list_lock
TYPE_LOCK (struct inode)->i_lock

fs/fs-writeback.c inode_do_switch_wbs() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-ptr_max
PARAM_VALUE 1 item 1
PARAM_VALUE 2 amount 0-4294967295
CAPPED_DATA 0 wb 1
DATA_SOURCE 0 wb $2
DATA_SOURCE 2 amount r folio_nr_pages
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &(&mapping->i_pages)->xa_lock
LOCK2 &bdi->wb_switch_rwsem
LOCK2 &inode->i_lock
LOCK2 &old_wb->list_lock
LOCK2 irq
LOCK2 0 &wb->list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct backing_dev_info)->wb_switch_rwsem
TYPE_LOCK (struct bdi_writeback)->list_lock
TYPE_LOCK (struct inode)->i_lock

mm/filemap.c __filemap_get_folio_mpol() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 1 item 4
PARAM_VALUE 2 amount (-4294967295)-0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 &c->alloc_sem
HALF_LOCKED2 &ctx->ring_lock
HALF_LOCKED2 &fc->killsb
HALF_LOCKED2 &fs_info->fs_devices->device_list_mutex
HALF_LOCKED2 &fs_info->tree_log_mutex
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &inode->vfs_inode.i_rwsem
HALF_LOCKED2 &ip->i_inode.i_rwsem
HALF_LOCKED2 &ip->i_rw_mutex
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sdp->sd_log_flush_lock
HALF_LOCKED2 &session->s_mutex
HALF_LOCKED2 &split_debug_mutex

fs/nfs/write.c bdi_wb_stat_mod() -> wb_stat_mod()

Type Parameter Key Value
PARAM_VALUE 0 wb 4096-ptr_max
PARAM_VALUE 1 item 1
DATA_SOURCE 1 item $1
DATA_SOURCE 2 amount $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 2 amount 1-1048576[c]