Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

drivers/md/md.c md_submit_discard_bio() -> __blkdev_issue_discard()

Type Parameter Key Value
PARAM_VALUE 3 gfp_mask 3072
PARAM_VALUE 4 biop 6058883529193664512
PARAM_VALUE 4 *biop 0
DATA_SOURCE 1 sector $3
DATA_SOURCE 2 nr_sects $4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 nr_sects 1-9223372036854775807[c]
USER_DATA 2 nr_sects 1-9223372036854775807[c]
UNITS 1 sector unit_byte
UNITS 2 nr_sects unit_byte
HALF_LOCKED2 &md->io_barrier

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

Type Parameter Key Value
PARAM_VALUE 3 gfp_mask 3072,3136,3264
PARAM_VALUE 4 biop 2312524494127394816
PARAM_VALUE 4 *biop 0
BUF_SIZE 0 bdev (-1),2136
BUF_SIZE 0 bdev (-1),2136
DATA_SOURCE 0 bdev $0
DATA_SOURCE 1 sector $1
DATA_SOURCE 2 nr_sects $2
DATA_SOURCE 3 gfp_mask $3
HARD_MAX 3 gfp_mask 3264
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 sector 0-u64max[c]
UNITS 0 bdev unit_byte
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &journal->j_checkpoint_mutex
HALF_LOCKED2 &main_bm_inode->i_rwsem
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &nilfs->ns_segctor_sem
HALF_LOCKED2 &osb->obs_trim_fs_mutex
HALF_LOCKED2 &rgd->rd_mutex
HALF_LOCKED2 &sbi->bitmap_lock
HALF_LOCKED2 &sbi->fat_lock
HALF_LOCKED2 &sbi->hpfs_mutex
HALF_LOCKED2 &wnd->rw_lock

fs/f2fs/segment.c __submit_discard_cmd() -> __blkdev_issue_discard()

Type Parameter Key Value
PARAM_VALUE 0 bdev 4096-ptr_max
PARAM_VALUE 1 sector 0,8-34359738360
PARAM_VALUE 2 nr_sects 0,8-4294967288
PARAM_VALUE 3 gfp_mask 3136
PARAM_VALUE 4 biop 3509976982212554752
PARAM_VALUE 4 *biop 0
CAPPED_DATA 0 bdev 1
CAPPED_DATA 2 nr_sects 1
BIT_INFO 1 sector 0x0,0x7fffffff8
BIT_INFO 2 nr_sects 0x0,0xfffffff8
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 bdev unit_byte
LOCK2 &dcc->cmd_lock
TYPE_LOCK (struct discard_cmd_control)->cmd_lock

drivers/md/dm-thin.c issue_discard() -> __blkdev_issue_discard()

Type Parameter Key Value
PARAM_VALUE 3 gfp_mask 3072
PARAM_VALUE 4 biop 999725707231518800,2425368504874377296
PARAM_VALUE 4 *biop 0,4096-ptr_max
DATA_SOURCE 1 sector r block_to_sectors
DATA_SOURCE 2 nr_sects r block_to_sectors
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/xfs/xfs_discard.c xfs_discard_extents() -> __blkdev_issue_discard()

Type Parameter Key Value
PARAM_VALUE 2 nr_sects 0-u32max
PARAM_VALUE 3 gfp_mask 3264
PARAM_VALUE 4 biop 5345545854704082944
PARAM_VALUE 4 *biop 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 bdev unit_byte

fs/xfs/xfs_discard.c xfs_discard_rtdev_extents() -> __blkdev_issue_discard()

Type Parameter Key Value
PARAM_VALUE 3 gfp_mask 3136
PARAM_VALUE 4 biop 3435281467672248320
PARAM_VALUE 4 *biop 0,4096-ptr_max
CAPABLE 0 21
NOCHECK_CALL
UNITS 0 bdev unit_byte

drivers/nvme/target/io-cmd-bdev.c nvmet_bdev_execute_discard() -> __blkdev_issue_discard()

Type Parameter Key Value
PARAM_VALUE 2 nr_sects 0-u32max
PARAM_VALUE 3 gfp_mask 3264
PARAM_VALUE 4 biop 4008223670654291968
PARAM_VALUE 4 *biop 0,4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock