Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/quota/dquot.c __dquot_transfer() -> dquot_decr_inodes()

Type Parameter Key Value
PARAM_VALUE 0 dquot 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 number unit_byte
LOCK2 &inode->i_lock
LOCK2 global &dq_data_lock
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_lock

fs/quota/dquot.c __dquot_transfer() -> dquot_decr_inodes()

Type Parameter Key Value
PARAM_VALUE 0 dquot 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 number unit_byte
LOCK2 &inode->i_lock
LOCK2 global &dq_data_lock
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_lock

fs/quota/dquot.c __dquot_transfer() -> dquot_decr_inodes()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 1 number unit_byte
LOCK2 &inode->i_lock
LOCK2 global &dq_data_lock
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_lock

fs/quota/dquot.c dquot_alloc_inode() -> dquot_decr_inodes()

Type Parameter Key Value
PARAM_VALUE 0 dquot 4096-ptr_max
PARAM_VALUE 1 number 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &inode->i_lock
LOCK2 global &dquot_srcu
LOCK2 0 &dquot->dq_dqb_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
TYPE_LOCK (struct dquot)->dq_dqb_lock
TYPE_LOCK (struct inode)->i_lock

fs/quota/dquot.c dquot_free_inode() -> dquot_decr_inodes()

Type Parameter Key Value
PARAM_VALUE 0 dquot 4096-ptr_max
PARAM_VALUE 1 number 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &inode->i_lock
LOCK2 global &dquot_srcu
LOCK2 0 &dquot->dq_dqb_lock
HALF_LOCKED2 &(inode->i_sb)->s_fs_info->nfs_sync_rwlock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &inode_alloc_inode->i_rwsem
TYPE_LOCK (struct dquot)->dq_dqb_lock
TYPE_LOCK (struct inode)->i_lock