Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/xfs/xfs_iomap.c xfs_buffered_write_delalloc_punch() -> xfs_bmap_punch_delalloc_range()

Type Parameter Key Value
PARAM_VALUE 0 ip 4096-ptr_max
PARAM_VALUE 1 whichfork 0,2
BUF_SIZE 4 ac 16,24,32,40
DATA_SOURCE 2 start_byte $1
FUZZY_MAX 1 whichfork 2
BIT_INFO 1 whichfork 0x0,0x2
NOSPEC 2 start_byte
HARD_MAX 1 whichfork 2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 2 start_byte 0-9223372036854775806[c]
USER_DATA 3 end_byte s64min-9223372036854775805[c]
UNITS 2 start_byte unit_byte
UNITS 3 end_byte unit_byte
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &inode->i_rwsem

fs/xfs/xfs_aops.c xfs_discard_folio() -> xfs_bmap_punch_delalloc_range()

Type Parameter Key Value
PARAM_VALUE 0 ip 4096-ptr_max
PARAM_VALUE 0 ip->i_mount 4096-ptr_max
PARAM_VALUE 1 whichfork 0
PARAM_VALUE 3 end_byte s64min-(-4096),0,4096-s64max
PARAM_VALUE 4 ac 0
DATA_SOURCE 0 ip r XFS_I
DATA_SOURCE 2 start_byte $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 start_byte unit_byte
HALF_LOCKED2 &folio->private->lock

fs/xfs/xfs_aops.c xfs_end_ioend_write() -> xfs_bmap_punch_delalloc_range()

Type Parameter Key Value
PARAM_VALUE 0 ip 4096-ptr_max
PARAM_VALUE 0 ip->i_flags_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ip->i_gdquot->q_qlock->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 ip->i_gdquot->q_qlock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ip->i_gdquot->q_qlock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 ip->i_gdquot->q_qlock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 ip->i_gdquot->q_qlock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 ip->i_gdquot->q_qlock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 ip->i_gdquot->q_qlock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 ip->i_gdquot->q_qlock.osq.tail.counter 0-s32max
PARAM_VALUE 0 ip->i_itemp 1-u64max
PARAM_VALUE 0 ip->i_itemp->ili_dirty_flags 0
PARAM_VALUE 0 ip->i_itemp->ili_item.li_lv 0
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->flags 0-2,5
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_committed 0,283025114569195520,5164564067102691328
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_committing 0,4828373187025854464,6929890327166103552,8391046949560442880
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_intent 0,564933579169271808,1432282536262184960,2001389918975270912,6466259957020385280,8569170642382753792,9140561983953010688
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_match 0,632712193071185920,2903961003257139200,2990082737005334528,4656829959769772032,8815353037356904448,8840775383261859840
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_pin 0,128515512824188928,1388028456347627520,2041315837493792768
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_precommit 0,1492769248575832064,4373168401562583040,7909231871947640832,8569134365498331136
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_push 0,925402561215127552,8226357149320933376,9036841439544610816
PARAM_VALUE 0 ip->i_itemp->ili_item.li_ops->iop_sort 0,4561676619972972544,7092074397265825792
PARAM_VALUE 0 ip->i_itemp->ili_lock_flags 0,4
PARAM_VALUE 0 ip->i_mount 4096-ptr_max
PARAM_VALUE 0 ip->i_mount->m_delalloc_rtextents.lock.dep_map->name 0-255
PARAM_VALUE 0 ip->i_mount->m_inodegc_wq->flush_color s32min-s32max
PARAM_VALUE 0 ip->i_mount->m_inodegc_wq->flusher_overflow.prev->next 2906673126597898240
PARAM_VALUE 0 ip->i_mount->m_inodegc_wq->work_color s32min-s32max
PARAM_VALUE 0 ip->i_mount->m_super 4096-ptr_max
PARAM_VALUE 0 ip->i_pdquot->q_qlock->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 ip->i_pdquot->q_qlock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ip->i_pdquot->q_qlock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 ip->i_pdquot->q_qlock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 ip->i_pdquot->q_qlock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 ip->i_pdquot->q_qlock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 ip->i_pdquot->q_qlock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 ip->i_udquot->q_qlock->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 ip->i_udquot->q_qlock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 ip->i_udquot->q_qlock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 ip->i_udquot->q_qlock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 ip->i_udquot->q_qlock.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 ip->i_udquot->q_qlock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 ip->i_udquot->q_qlock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 ip->i_udquot->q_qlock.osq.tail.counter 0-s32max
PARAM_VALUE 1 whichfork 0
PARAM_VALUE 4 ac 0
DATA_SOURCE 0 ip r XFS_I
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 ip->i_delayed_blks
UNITS 2 start_byte unit_byte
UNITS 3 end_byte unit_byte
HALF_LOCKED2 &pool->lock

fs/xfs/xfs_bmap_util.c xfs_free_eofblocks() -> xfs_bmap_punch_delalloc_range()

Type Parameter Key Value
PARAM_VALUE 0 ip 4096-ptr_max
PARAM_VALUE 0 ip->i_delayed_blks 1-u64max
PARAM_VALUE 0 ip->i_df.if_needextents 0
PARAM_VALUE 0 ip->i_diflags 2-u16max
PARAM_VALUE 0 ip->i_lock.dep_map->name 0-255
PARAM_VALUE 0 ip->i_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ip->i_lock.first_waiter->type 0-1
PARAM_VALUE 0 ip->i_mount 4096-ptr_max
PARAM_VALUE 1 whichfork 0
PARAM_VALUE 3 end_byte s64max
PARAM_VALUE 4 ac 0
DATA_SOURCE 0 ip $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 ip unit_byte