Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

block/bfq-iosched.c __bfq_get_bfqq_handle_split() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
CAPPED_DATA 0 bfqq 1
DATA_SOURCE 0 bfqq r bic_to_bfqq
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bfqd->lock
LOCK2 irq
TYPE_LOCK (struct bfq_data)->lock

block/bfq-iosched.c __bfq_insert_request() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
PARAM_VALUE 0 bfqq->new_bfqq 1-u64max
BUF_SIZE 0 bfqq 1-s32max
BUF_SIZE 0 bfqq 1-s32max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bfqd->lock
LOCK2 irq
TYPE_LOCK (struct bfq_data)->lock

block/bfq-iosched.c __bfq_put_async_bfqq() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
CAPPED_DATA 0 bfqq 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bfqd->lock
LOCK2 &blkcg->lock
LOCK2 &q->queue_lock
LOCK2 flags
LOCK2 irq
HALF_LOCKED2 &q->blkcg_mutex
TYPE_LOCK (struct bfq_data)->lock
TYPE_LOCK (struct blkcg)->lock
TYPE_LOCK (struct request_queue)->queue_lock

block/bfq-iosched.c bfq_finish_requeue_request() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
BUF_SIZE 0 bfqq 1-s32max
BUF_SIZE 0 bfqq 1-s32max
CAPPED_DATA 0 bfqq 1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &bfqd->lock
LOCK2 flags
TYPE_LOCK (struct bfq_data)->lock

block/bfq-iosched.c bfq_put_cooperator() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 irq
HALF_LOCKED2 &bfqd->lock

block/bfq-iosched.c bfq_put_stable_ref() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
CAPPED_DATA 0 bfqq 1
DATA_SOURCE 0 bfqq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 irq

block/bfq-iosched.c bfq_release_process_ref() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
PARAM_VALUE 0 bfqq->bfqd 0,4096-ptr_max
PARAM_VALUE 0 bfqq->bic->ioprio 0-u16max
PARAM_VALUE 0 bfqq->entity.parent 0,4096-ptr_max
BUF_SIZE 0 bfqq (-1),1-s32max
BUF_SIZE 0 bfqq (-1),1-s32max
CAPPED_DATA 0 bfqq 1
DATA_SOURCE 0 bfqq $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 irq

block/bfq-iosched.c bfq_weights_tree_remove() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
PARAM_VALUE 0 bfqq->bfqd->queue_weights_tree.rb_root.rb_node 4096-ptr_max
PARAM_VALUE 0 bfqq->bic->ioprio 0-u16max
PARAM_VALUE 0 bfqq->weight_counter 0
BUF_SIZE 0 bfqq (-1),1-s32max
BUF_SIZE 0 bfqq (-1),1-s32max
CAPPED_DATA 0 bfqq 1
DATA_SOURCE 0 bfqq $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 flags

block/bfq-wf2q.c __bfq_bfqd_reset_in_service() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
PARAM_VALUE 0 bfqq->entity.on_st_or_in_serv 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq

block/bfq-wf2q.c bfq_forget_entity() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
DATA_SOURCE 0 bfqq r bfq_entity_to_bfqq
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 irq

block/bfq-cgroup.c bfq_bfqq_move() -> bfq_put_queue()

Type Parameter Key Value
PARAM_VALUE 0 bfqq 4096-ptr_max
PARAM_VALUE 0 bfqq->bfqd 0,4096-ptr_max
PARAM_VALUE 0 bfqq->bfqd->last_bfqq_created 0,4096-ptr_max
PARAM_VALUE 0 bfqq->entity.parent->last_bfqq_created 0,4096-ptr_max
CAPPED_DATA 0 bfqq 1
DATA_SOURCE 0 bfqq $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 irq
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 &bfqd->lock
HALF_LOCKED2 &blkcg->lock
HALF_LOCKED2 &q->queue_lock
HALF_LOCKED2 flags
TYPE_LOCK (struct bfq_data)->lock