Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/ext4/extents.c ext4_do_fallocate() -> ext4_alloc_file_blocks()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 0 file->f_inode 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_flags 0,4096-u32max
PARAM_VALUE 0 file->f_inode->i_io_list.next 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_io_list.prev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_mapping->host->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648
PARAM_VALUE 0 file->f_inode->i_rwsem.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_inode->i_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 file->f_inode->i_sb->s_export_op->fh_to_parent 0,5297,148606482432692224,436469935444291584,467281172929331200
PARAM_VALUE 0 file->f_inode->i_sb->s_export_op->get_parent 0,8931,264940071972966400,291591359766798336,565128213429456896
PARAM_VALUE 0 file->f_inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 3 new_size 0-s64max
PARAM_VALUE 4 flags 3
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
CAPPED_DATA 3 new_size 1
CAPPED_DATA 3 new_size 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1
DATA_SOURCE 2 len $2
FUZZY_MAX 3 new_size 0
NOSPEC 1 offset
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 file->f_flags 0-u32max
USER_DATA 0 file->f_mode 33554432-u32max
USER_DATA 0 file->f_path.dentry->d_inode->i_mode 0-u16max
USER_DATA 0 file->f_path.dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 1 offset 0-s64max
USER_DATA 2 len 1-s64max
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->moved->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 3 new_size unit_byte
LOCK2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem

fs/ext4/extents.c ext4_zero_range() -> ext4_alloc_file_blocks()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 0 file->f_inode 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_flags 0,4096-u32max
PARAM_VALUE 0 file->f_inode->i_io_list.next 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_io_list.prev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_mapping 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_mapping->host->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_inode->i_mapping->invalidate_lock.count.counter s64min-(-1),1-s64max
PARAM_VALUE 0 file->f_inode->i_rwsem.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_inode->i_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 file->f_inode->i_sb->s_export_op->fh_to_parent 0,5297,148606482432692224,436469935444291584,467281172929331200
PARAM_VALUE 0 file->f_inode->i_sb->s_export_op->get_parent 0,8931,264940071972966400,291591359766798336,565128213429456896
PARAM_VALUE 0 file->f_inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 file->f_mapping 4096-ptr_max
PARAM_VALUE 0 file->f_mapping->invalidate_lock.dep_map->name 0-255
PARAM_VALUE 0 file->f_mapping->invalidate_lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 file->f_mapping->invalidate_lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 file->f_mapping->invalidate_lock.first_waiter->type 0-1
PARAM_VALUE 0 file->f_mapping->invalidate_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 3 new_size 0-s64max
PARAM_VALUE 4 flags 3
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
CAPPED_DATA 3 new_size 1
CAPPED_DATA 3 new_size 1
DATA_SOURCE 0 file $0
DATA_SOURCE 1 offset $1
DATA_SOURCE 2 len $2
FUZZY_MAX 3 new_size 0
NOSPEC 1 offset
NOSPEC 1 offset
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 file->f_flags 0-u32max
USER_DATA 0 file->f_mode 33554432-u32max
USER_DATA 0 file->f_path.dentry->d_inode->i_mode 0-u16max
USER_DATA 0 file->f_path.dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 1 offset 0-s64max
USER_DATA 2 len 1-s64max
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->moved->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 3 new_size unit_byte
LOCK2 &inode->i_rwsem
LOCK2 &mapping->invalidate_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct address_space)->invalidate_lock
TYPE_LOCK (struct inode)->i_rwsem

fs/ext4/extents.c ext4_zero_range() -> ext4_alloc_file_blocks()

Type Parameter Key Value
PARAM_VALUE 0 file 4096-ptr_max
PARAM_VALUE 0 file->f_inode 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_flags 0,4096-u32max
PARAM_VALUE 0 file->f_inode->i_mapping 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_mapping->host->i_sb->s_cop->empty_dir 0,86,4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_mapping->host->i_sb->s_cop->get_context 0,706,4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_mapping->host->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648
PARAM_VALUE 0 file->f_inode->i_mapping->host->i_sb->s_cop->set_context 0,67,4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 file->f_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_inode->i_mapping->invalidate_lock.count.counter s64min-(-1),1-s64max
PARAM_VALUE 0 file->f_inode->i_rwsem.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 file->f_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_inode->i_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 file->f_inode->i_sb 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_sb->s_cop->inode_info_offs 1632,1720,2632,2648
PARAM_VALUE 0 file->f_inode->i_sb->s_export_op->fh_to_parent 0,5297,148606482432692224,436469935444291584,467281172929331200
PARAM_VALUE 0 file->f_inode->i_sb->s_export_op->get_parent 0,8931,264940071972966400,291591359766798336,565128213429456896
PARAM_VALUE 0 file->f_inode->i_wb->dwork->timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_wb->dwork.work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 file->f_inode->i_wb->list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 file->f_inode->i_wb->work_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 file->f_mapping 4096-ptr_max
PARAM_VALUE 0 file->f_mapping->invalidate_lock.dep_map->name 0-255
PARAM_VALUE 0 file->f_mapping->invalidate_lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 file->f_mapping->invalidate_lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 file->f_mapping->invalidate_lock.first_waiter->type 0-1
PARAM_VALUE 0 file->f_mapping->invalidate_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 file->f_path.dentry->d_inode->i_sb->s_cop->inode_info_offs 1632,1720,1808,2632,2648,2704,2712
PARAM_VALUE 1 offset s64min-9223372036854775806
PARAM_VALUE 2 len s64min-(-1),1-s64max
PARAM_VALUE 3 new_size 0-s64max
PARAM_VALUE 4 flags 1073742083,1073742337
BUF_SIZE 0 file (-1),1-s32max
BUF_SIZE 0 file (-1),1-s32max
CAPPED_DATA 0 file->f_inode 1
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
CAPPED_DATA 3 new_size 1
CAPPED_DATA 3 new_size 1
DATA_SOURCE 0 file $0
FUZZY_MAX 3 new_size 0
FUZZY_MAX 4 flags 1073742337
BIT_INFO 4 flags 0x40000001,0x40000303
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 file->f_flags 0-u32max
USER_DATA 0 file->f_mode 33554432-u32max
USER_DATA 0 file->f_path.dentry->d_inode->i_mode 0-u16max
USER_DATA 0 file->f_path.dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
USER_DATA 1 offset 0-9223372036854775806[c]
USER_DATA 2 len s64min-(-1),1-s64max[c]
NO_OVERFLOW_SIMPLE 0 file->f_path.d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->dentry->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.dentry->moved->d_inode->i_size
NO_OVERFLOW_SIMPLE 0 file->f_path.moved->d_inode->i_size
UNITS 3 new_size unit_byte
LOCK2 &inode->i_rwsem
LOCK2 &mapping->invalidate_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct address_space)->invalidate_lock
TYPE_LOCK (struct inode)->i_rwsem