Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

fs/jbd2/transaction.c jbd2_journal_dirty_metadata() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-1
STR_LEN 0 handle (-1)-1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &jh->b_state_lock
TYPE_LOCK (struct journal_head)->b_state_lock

fs/ext4/xattr.c ext4_xattr_set_handle() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
BUF_SIZE 0 handle (-1),1-s32max
BUF_SIZE 0 handle (-1),1-s32max
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-1
STR_LEN 0 handle (-1)-1
RX_PATH
TASK_NOT_RUNNING

fs/ocfs2/alloc.c ocfs2_extend_rotate_transaction() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/ocfs2/alloc.c ocfs2_extend_rotate_transaction() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/ocfs2/alloc.c ocfs2_merge_rec_left() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_merge_rec_left() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
CAPPED_DATA 0 handle->h_transaction 1
DATA_SOURCE 0 handle $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_merge_rec_right() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_rotate_tree_left() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_rotate_tree_right() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
CAPPED_DATA 0 handle->h_transaction 1
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/ocfs2/alloc.c ocfs2_truncate_rec() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_truncate_rec() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_try_to_merge_extent() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_try_to_merge_extent() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle->h_journal 0,4096-ptr_max
PARAM_VALUE 0 handle->h_reserved 0
PARAM_VALUE 0 handle->h_transaction 0,4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_try_to_merge_extent() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction->t_journal 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
DATA_SOURCE 0 handle $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_try_to_merge_extent() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle->h_journal 0,4096-ptr_max
PARAM_VALUE 0 handle->h_reserved 0
PARAM_VALUE 0 handle->h_transaction 0,4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ocfs2/journal.c ocfs2_allocate_extend_trans() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
BUF_SIZE 0 handle (-1),1-s32max
BUF_SIZE 0 handle (-1),1-s32max
DATA_SOURCE 0 handle $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/journal.c ocfs2_assure_trans_credits() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &oi->ip_alloc_sem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ocfs2_inode_info)->ip_alloc_sem

fs/ocfs2/journal.c ocfs2_extend_trans() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 1-u64max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &alloc_inode->i_rwsem
HALF_LOCKED2 &oi->ip_alloc_sem

fs/ocfs2/journal.c ocfs2_journal_dirty() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
CAPPED_DATA 0 handle 1
DATA_SOURCE 0 handle $0
STR_LEN 0 handle (-1)-0
STR_LEN 0 handle (-1)-0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &(inode->i_sb)->s_fs_info->nfs_sync_rwlock
HALF_LOCKED2 &alloc_inode->i_rwsem
HALF_LOCKED2 &bm_inode->i_rwsem
HALF_LOCKED2 &data_alloc_inode->i_rwsem
HALF_LOCKED2 &dquot->dq_lock
HALF_LOCKED2 &dx_alloc_inode->i_rwsem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &inode_alloc_inode->i_rwsem
HALF_LOCKED2 &local_alloc_inode->i_rwsem
HALF_LOCKED2 &main_bm_inode->i_rwsem
HALF_LOCKED2 &new_inode->i_rwsem
HALF_LOCKED2 &oi->ip_alloc_sem
HALF_LOCKED2 &oinfo->dqi_gqinode->i_rwsem
HALF_LOCKED2 &orphan_dir_inode->i_rwsem
HALF_LOCKED2 &t_inode->i_rwsem
HALF_LOCKED2 &tl_inode->i_rwsem

fs/ext4/ext4_jbd2.c __ext4_handle_dirty_metadata() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $2
STR_LEN 0 handle (-1)-24,26-27,29,31-32,63,99,115,254
STR_LEN 0 handle (-1)-24,26-27,29,31-32,63,99,115,254
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &elr->lr_super->s_umount
HALF_LOCKED2 &grp->alloc_sem

fs/ext4/ext4_jbd2.c __ext4_handle_dirty_metadata() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $2
STR_LEN 0 handle (-1)-1
STR_LEN 0 handle (-1)-1
RX_PATH
TASK_NOT_RUNNING

fs/ext4/ext4_jbd2.c __ext4_journal_ensure_credits() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/ext4/ext4_jbd2.c __ext4_journal_ensure_credits() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_transaction 4096-ptr_max
BUF_SIZE 0 handle (-1)-s32max
BUF_SIZE 0 handle (-1)-s32max
DATA_SOURCE 0 handle $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/ext4/ext4_jbd2.c __ext4_journal_start_reserved() -> jbd2_handle_buffer_credits()

Type Parameter Key Value
PARAM_VALUE 0 handle 4096-ptr_max
PARAM_VALUE 0 handle->h_journal 4096-ptr_max
DATA_SOURCE 0 handle $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock