Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

fs/ocfs2/inode.c ocfs2_dinode_has_size_without_clusters() -> ocfs2_sparse_alloc()

Type Parameter Key Value
PARAM_VALUE 0 osb 4096-ptr_max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte

fs/ocfs2/suballoc.c ocfs2_lock_allocators() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &oi->ip_alloc_sem

fs/ocfs2/alloc.c ocfs2_dinode_insert_check() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte

fs/ocfs2/alloc.c ocfs2_reserve_blocks_for_rec_trunc() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &(inode->i_sb)->s_fs_info->nfs_sync_rwlock
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_writes_unwritten_extents() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
DATA_SOURCE 0 osb $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &oi->ip_alloc_sem

fs/ocfs2/alloc.c ocfs2_zero_cluster_folios() -> ocfs2_sparse_alloc()

Type Parameter Key Value
PARAM_VALUE 0 osb 4096-ptr_max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/alloc.c ocfs2_zero_range_for_truncate() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/move_extents.c ocfs2_lock_meta_allocator_move_extents() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
UNITS 0 osb unit_byte
LOCK2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/ocfs2/file.c ocfs2_change_file_space() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
UNITS 0 osb unit_byte

fs/ocfs2/file.c ocfs2_extend_allocation() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
LOCK2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/ocfs2/file.c ocfs2_extend_file() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
LOCK2 &oi->ip_alloc_sem
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ocfs2_inode_info)->ip_alloc_sem

fs/ocfs2/file.c ocfs2_writes_unwritten_extents() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
DATA_SOURCE 0 osb $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte

fs/ocfs2/aops.c ocfs2_dio_wr_get_block() -> ocfs2_sparse_alloc()

Type Parameter Key Value
PARAM_VALUE 0 osb 4096-ptr_max
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
LOCK2 &oi->ip_alloc_sem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ocfs2_inode_info)->ip_alloc_sem

fs/ocfs2/aops.c ocfs2_expand_nonsparse_inode() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &oi->ip_alloc_sem

fs/ocfs2/aops.c ocfs2_get_block() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &oi->ip_alloc_sem

fs/ocfs2/aops.c ocfs2_get_block() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &oi->ip_alloc_sem

fs/ocfs2/aops.c ocfs2_should_read_blk() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &inode->i_rwsem

fs/ocfs2/aops.c ocfs2_write_begin_nolock() -> ocfs2_sparse_alloc()

Type Parameter Key Value
PARAM_VALUE 0 osb 4096-ptr_max
BUF_SIZE 0 osb 1-s32max
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &oi->ip_alloc_sem

fs/ocfs2/aops.c ocfs2_zero_tail() -> ocfs2_sparse_alloc()

Type Parameter Key Value
BUF_SIZE 0 osb 1-s32max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 osb unit_byte
HALF_LOCKED2 &oi->ip_alloc_sem