Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

block/blk-lib.c __blkdev_issue_discard() -> blk_alloc_discard_bio()

Type Parameter Key Value
PARAM_VALUE 3 gfp_mask 3072,3136,3264
BUF_SIZE 0 bdev (-1),2136
BUF_SIZE 0 bdev (-1),2136
DATA_SOURCE 0 bdev $0
DATA_SOURCE 3 gfp_mask $3
NOSPEC 1 *sector
HARD_MAX 3 gfp_mask 3264
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 *sector 0-u64max
HOST_DATA 2 *nr_sects 1-9223372036854775807,18446744073705357314-u64max[c]
USER_DATA 1 *sector 0-u64max
USER_DATA 2 *nr_sects 1-9223372036854775807,18446744073705357314-u64max
UNITS 0 bdev unit_byte
USER_PTR 1 sector
USER_PTR 2 nr_sects
HALF_LOCKED2 &dcc->cmd_lock

block/blk-lib.c __blkdev_issue_discard() -> blk_alloc_discard_bio()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 1 sector 4096-ptr_max
PARAM_VALUE 2 nr_sects 4096-ptr_max
PARAM_VALUE 3 gfp_mask 3072,3136,3264
BUF_SIZE 0 bdev (-1),2136
BUF_SIZE 0 bdev (-1),2136
DATA_SOURCE 0 bdev $0
DATA_SOURCE 3 gfp_mask $3
HARD_MAX 3 gfp_mask 3264
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 2 *nr_sects 1-9223372036854775806[c]
USER_DATA 2 *nr_sects 1-9223372036854775806
UNITS 0 bdev unit_byte
USER_PTR 2 nr_sects
HALF_LOCKED2 &dcc->cmd_lock

block/ioctl.c blk_ioctl_discard() -> blk_alloc_discard_bio()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_mapping 4096-ptr_max
PARAM_VALUE 0 bdev->bd_mapping->host 4096-ptr_max
PARAM_VALUE 0 bdev->bd_mapping->host->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_mapping->host->i_rwsem.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_mapping->host->i_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 bdev->bd_mapping->host->i_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 bdev->bd_mapping->host->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 bdev->bd_mapping->host->i_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 bdev->bd_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 bdev->bd_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 bdev->bd_mapping->invalidate_lock.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_mapping->invalidate_lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 bdev->bd_mapping->invalidate_lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 bdev->bd_mapping->invalidate_lock.first_waiter->type 0-1
PARAM_VALUE 0 bdev->bd_mapping->invalidate_lock.osq.tail.counter 0-s32max
PARAM_VALUE 1 sector 4265636712071409664
PARAM_VALUE 2 nr_sects 2855191240795185152
PARAM_VALUE 3 gfp_mask 3264
BUF_SIZE 0 bdev 2136
CAPPED_DATA 0 bdev 1
CAPPED_DATA 0 bdev->bd_mapping 1
CAPPED_DATA 0 bdev->bd_mapping->i_pages.xa_head 1
DATA_SOURCE 0 bdev $0
USER_DATA 1 *sector 0-36028797018963967
USER_DATA 2 *nr_sects 0-36028797018963967
USER_PTR 1 sector
USER_PTR 2 nr_sects
LOCK2 0 &bdev->bd_mapping->host->i_rwsem
LOCK2 0 &bdev->bd_mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock
TYPE_LOCK (struct inode)->i_rwsem

block/ioctl.c blkdev_cmd_discard() -> blk_alloc_discard_bio()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 0 bdev->bd_mapping->i_mmap_rwsem.dep_map->name 0-255
PARAM_VALUE 0 bdev->bd_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 bdev->bd_mapping->i_mmap_rwsem.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 bdev->bd_mapping->i_mmap_rwsem.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 bdev->bd_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 sector 6061997191612932096
PARAM_VALUE 2 nr_sects 7779246885296144384
PARAM_VALUE 3 gfp_mask 3264,10240
BUF_SIZE 0 bdev 2136
CAPPED_DATA 0 bdev->bd_mapping 1
CAPPED_DATA 0 bdev->bd_mapping->i_pages.xa_head 1
DATA_SOURCE 0 bdev r I_BDEV
FUZZY_MAX 3 gfp_mask 10240
BIT_INFO 3 gfp_mask 0x800,0x2cc0
HARD_MAX 3 gfp_mask 10240
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->uring_lock