Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
block/blk-iocost.c ioc_rqos_merge() -> iocg_commit_bio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->hweight_active | 1-u32max |
| PARAM_VALUE | 0 | iocg->hweight_inuse | 1-u32max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->level | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | bio | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->dev->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 1 | bio->bi_blkg | 0,4096-ptr_max |
| PARAM_VALUE | 2 | abs_cost | 1-u64max |
| BUF_SIZE | 1 | bio | (-1)-0,32,144-16528 |
| BUF_SIZE | 1 | bio | (-1)-0,32,144-16528 |
| DATA_SOURCE | 0 | iocg | r blkg_to_iocg |
| DATA_SOURCE | 1 | bio | $2 |
| DATA_SOURCE | 2 | abs_cost | r calc_vtime_cost |
| DATA_SOURCE | 3 | cost | r adjust_inuse_and_calc_cost |
| STR_LEN | 1 | bio->bi_private | (-1) |
| NOSPEC | 1 | bio->bi_iter.bi_sector | |
| NOSPEC | 1 | bio->bi_iter.bi_size | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 1 | bio->bi_bdev->bd_queue->last_merge->__sector | 0-s32max[c] |
| HOST_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| HOST_DATA | 1 | bio->bi_iter.bi_size | 0-u32max[c] |
| HOST_DATA | 1 | bio->bi_max_vecs | 0-4,16,64,128,256[c] |
| USER_DATA | 1 | bio->bi_ioprio | 0-u16max |
| USER_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_iter.bi_size | 0-u32max |
| USER_DATA | 1 | bio->bi_max_vecs | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_ioprio | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_max_vecs | 0-256[c] |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->queue_hw_ctx | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->stats | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_iter.bi_sector | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_max_vecs | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bio_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bvec_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_bdev->bd_disk->queue->queue_hw_ctx | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_bdev->bd_disk->queue->stats | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_max_vecs | |
| HALF_LOCKED2 | 1 | &bio->bi_bdev->bd_queue->queue_lock |
block/blk-iocost.c ioc_rqos_merge() -> iocg_commit_bio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->active_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->hweight_active | 1-u32max |
| PARAM_VALUE | 0 | iocg->hweight_inuse | 1-u32max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->level | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | iocg->waitq.lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | bio | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->dev->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 1 | bio->bi_blkg | 0,4096-ptr_max |
| PARAM_VALUE | 2 | abs_cost | 1-u64max |
| BUF_SIZE | 1 | bio | (-1)-0,32,144-16528 |
| BUF_SIZE | 1 | bio | (-1)-0,32,144-16528 |
| CAPPED_DATA | 0 | &iocg->active_list | 1 |
| DATA_SOURCE | 0 | iocg | r blkg_to_iocg |
| DATA_SOURCE | 1 | bio | $2 |
| DATA_SOURCE | 2 | abs_cost | r calc_vtime_cost |
| DATA_SOURCE | 3 | cost | r adjust_inuse_and_calc_cost |
| STR_LEN | 1 | bio->bi_private | (-1) |
| PARAM_COMPARE | 0 | &iocg->active_list | == $0->active_list.next |
| NOSPEC | 1 | bio->bi_iter.bi_sector | |
| NOSPEC | 1 | bio->bi_iter.bi_size | |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 1 | bio->bi_bdev->bd_queue->last_merge->__sector | 0-s32max[c] |
| HOST_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| HOST_DATA | 1 | bio->bi_iter.bi_size | 0-u32max[c] |
| HOST_DATA | 1 | bio->bi_max_vecs | 0-4,16,64,128,256[c] |
| USER_DATA | 1 | bio->bi_ioprio | 0-u16max |
| USER_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_iter.bi_size | 0-u32max |
| USER_DATA | 1 | bio->bi_max_vecs | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_ioprio | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_max_vecs | 0-256[c] |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->queue_hw_ctx | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->stats | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_iter.bi_sector | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_max_vecs | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bio_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bvec_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_bdev->bd_disk->queue->queue_hw_ctx | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_bdev->bd_disk->queue->stats | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_max_vecs | |
| LOCK2 | &ioc->lock | ||
| LOCK2 | flags | ||
| LOCK2 | 0 | &iocg->waitq.lock | |
| HALF_LOCKED2 | 1 | &bio->bi_bdev->bd_queue->queue_lock | |
| TYPE_LOCK | (struct ioc)->lock | ||
| TYPE_LOCK | (struct wait_queue_head)->lock |
block/blk-iocost.c ioc_rqos_throttle() -> iocg_commit_bio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->abs_vdebt | 0 |
| PARAM_VALUE | 0 | iocg->hweight_active | 1-u32max |
| PARAM_VALUE | 0 | iocg->hweight_inuse | 1-u32max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->level | s32min-(-1),1-s32max |
| PARAM_VALUE | 1 | bio | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->limits.integrity.metadata_size | 0-1 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->delays->blkio_count | 0-4294967295 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->delays->blkio_delay_max | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->delays->blkio_delay_min | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->sched_task_group->idle | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->dev->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->elevator->elevator_data->bio_bic->ioprio | 0-u16max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->elevator->elevator_data->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->last_merge->q->elevator->elevator_data->wr_busy_queues | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->mq_kobj->release.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->mq_kobj->release.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->mq_kobj->release.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->stats->accounting | s32min-s32max |
| PARAM_VALUE | 2 | abs_cost | 1-u64max |
| BUF_SIZE | 1 | bio | (-1)-0,4,24,32,64,144-s32max |
| BUF_SIZE | 1 | bio | (-1)-0,4,24,32,64,144-s32max |
| BUF_SIZE | 1 | bio->bi_pool | (-1),624 |
| BUF_SIZE | 1 | bio->bi_private | (-1)-s32max |
| DATA_SOURCE | 0 | iocg | r blkg_to_iocg |
| DATA_SOURCE | 1 | bio | $1 |
| DATA_SOURCE | 2 | abs_cost | r calc_vtime_cost |
| DATA_SOURCE | 3 | cost | r adjust_inuse_and_calc_cost |
| STR_LEN | 1 | bio->bi_private | (-1),8,11-12,14,17,19-20,23,26-27,29,31-32 |
| PARAM_COMPARE | 0 | &iocg->waitq.head | == $0->waitq.head.next |
| NOSPEC | 1 | bio->bi_iter.bi_sector | |
| NOSPEC | 1 | bio->bi_iter.bi_size | |
| NOSPEC | 1 | bio->bi_next->bi_iter.bi_sector | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 1 | bio->bi_bdev->bd_queue->last_merge->__sector | 0-18446744073709551614 |
| HOST_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| HOST_DATA | 1 | bio->bi_iter.bi_size | 0-u32max[c] |
| HOST_DATA | 1 | bio->bi_max_vecs | 0-u16max[c] |
| HOST_DATA | 1 | bio->bi_next->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_ioprio | 0-u16max |
| USER_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_iter.bi_size | 0-u32max |
| USER_DATA | 1 | bio->bi_max_vecs | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_ioprio | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_next->bi_max_vecs | 0-256[c] |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->queue_hw_ctx | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->stats | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_iter.bi_sector | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_max_vecs | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bio_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bvec_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_max_vecs | |
| HALF_LOCKED2 | 1 | &bio->bi_bdev->bd_queue->queue_lock |
block/blk-iocost.c ioc_rqos_throttle() -> iocg_commit_bio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | iocg | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->active_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->hweight_active | 1-u32max |
| PARAM_VALUE | 0 | iocg->hweight_inuse | 1-u32max |
| PARAM_VALUE | 0 | iocg->ioc | 4096-ptr_max |
| PARAM_VALUE | 0 | iocg->level | s32min-(-1),1-s32max |
| PARAM_VALUE | 0 | iocg->waitq.lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | bio | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue | 4096-ptr_max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->limits.integrity.metadata_size | 0-1 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->queue->mq_kobj->release.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->delays->blkio_count | 0-4294967295 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->delays->blkio_delay_max | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->delays->blkio_delay_min | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_disk->zone_wplugs_worker->sched_task_group->idle | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->dev->power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->elevator->elevator_data->bio_bic->ioprio | 0-u16max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->elevator->elevator_data->lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->last_merge->q->elevator->elevator_data->wr_busy_queues | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->mq_kobj->release.wq->dfl_pwq | 0-s64max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->mq_kobj->release.wq->saved_max_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->mq_kobj->release.wq->saved_min_active | s32min-s32max |
| PARAM_VALUE | 1 | bio->bi_bdev->bd_queue->stats->accounting | s32min-s32max |
| PARAM_VALUE | 2 | abs_cost | 1-u64max |
| BUF_SIZE | 1 | bio | (-1)-0,4,24,32,64,144-s32max |
| BUF_SIZE | 1 | bio | (-1)-0,4,24,32,64,144-s32max |
| BUF_SIZE | 1 | bio->bi_pool | (-1),624 |
| BUF_SIZE | 1 | bio->bi_private | (-1)-s32max |
| DATA_SOURCE | 0 | iocg | r blkg_to_iocg |
| DATA_SOURCE | 1 | bio | $1 |
| DATA_SOURCE | 2 | abs_cost | r calc_vtime_cost |
| DATA_SOURCE | 3 | cost | r adjust_inuse_and_calc_cost |
| STR_LEN | 1 | bio->bi_private | (-1),8,11-12,14,17,19-20,23,26-27,29,31-32 |
| PARAM_COMPARE | 0 | &iocg->active_list | == $0->active_list.next |
| NOSPEC | 1 | bio->bi_iter.bi_sector | |
| NOSPEC | 1 | bio->bi_iter.bi_size | |
| NOSPEC | 1 | bio->bi_next->bi_iter.bi_sector | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 1 | bio->bi_bdev->bd_queue->last_merge->__sector | 0-18446744073709551614 |
| HOST_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| HOST_DATA | 1 | bio->bi_iter.bi_size | 0-u32max[c] |
| HOST_DATA | 1 | bio->bi_max_vecs | 0-u16max[c] |
| HOST_DATA | 1 | bio->bi_next->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_ioprio | 0-u16max |
| USER_DATA | 1 | bio->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_iter.bi_size | 0-u32max |
| USER_DATA | 1 | bio->bi_max_vecs | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_ioprio | 0-u16max[c] |
| USER_DATA | 1 | bio->bi_next->bi_iter.bi_sector | 0-u64max |
| USER_DATA | 1 | bio->bi_next->bi_max_vecs | 0-256[c] |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->queue_hw_ctx | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_bdev->bd_disk->queue->stats | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_iter.bi_sector | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_next->bi_max_vecs | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bio_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bi_pool->bvec_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | bio->bio.bi_max_vecs | |
| HALF_LOCKED2 | 1 | &bio->bi_bdev->bd_queue->queue_lock |
block/blk-iocost.c iocg_wake_fn() -> iocg_commit_bio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 3 | cost | r abs_cost_to_cost |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &sci->sc_wait_request.lock | ||
| HALF_LOCKED2 | &x->lock | ||
| HALF_LOCKED2 | flags |