Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/block/drbd/drbd_req.c drbd_send_and_submit() -> drbd_req_put_completion_ref()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 1 m 8905399553569796096
PARAM_VALUE 1 m->bio 0
PARAM_VALUE 1 m->error 0
PARAM_VALUE 2 put 1
BUF_SIZE 0 req->device s32min-(-1),1-s32max
BUF_SIZE 0 req->master_bio (-1)-0,4,24,32,64,144-s32max
CAPPED_DATA 0 &req->req_pending_master_completion 1
DATA_SOURCE 0 req $1
NOSPEC 0 req->i.sector
NOSPEC 0 req->i.size
NOSPEC 0 req->master_bio->bi_iter.bi_sector
NOSPEC 0 req->master_bio->bi_iter.bi_size
NOSPEC 0 req->private_bio->bi_iter.bi_sector
NOSPEC 0 req->private_bio->bi_iter.bi_size
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 req->i.sector 0-u64max
HOST_DATA 0 req->i.size 512-4294966272[c]
HOST_DATA 0 req->master_bio->bi_iter.bi_sector 0-u64max
HOST_DATA 0 req->master_bio->bi_iter.bi_size 512-4294966272[c]
HOST_DATA 0 req->master_bio->bi_max_vecs 0-4,16,64,128,256[c]
HOST_DATA 0 req->private_bio->bi_iter.bi_sector 0
HOST_DATA 0 req->private_bio->bi_iter.bi_size 0[c]
HOST_DATA 0 req->private_bio->bi_max_vecs 0-4,16,64,128,256[c]
USER_DATA 0 req->i.sector 0-u64max
USER_DATA 0 req->i.size 512-4294966272
USER_DATA 0 req->master_bio->bi_ioprio 0-u16max
USER_DATA 0 req->master_bio->bi_iter.bi_sector 0-u64max
USER_DATA 0 req->master_bio->bi_iter.bi_size 512-4294966272
USER_DATA 0 req->master_bio->bi_max_vecs 0-4,16,64,128,256[c]
USER_DATA 0 req->private_bio->bi_ioprio 0-u16max
USER_DATA 0 req->private_bio->bi_iter.bi_sector 0
USER_DATA 0 req->private_bio->bi_iter.bi_size 0
USER_DATA 0 req->private_bio->bi_max_vecs 0-4,16,64,128,256[c]
NO_OVERFLOW_SIMPLE 0 req->private_bio->bi_pool->bio_pool.min_nr
NO_OVERFLOW_SIMPLE 0 req->private_bio->bi_pool->bvec_pool.min_nr
LOCK2 &resource->req_lock
LOCK2 irq
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct drbd_resource)->req_lock

drivers/block/drbd/drbd_req.c mod_rq_state() -> drbd_req_put_completion_ref()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->device->resource 4096-ptr_max
PARAM_VALUE 1 m 0,4096-ptr_max
PARAM_VALUE 1 m->bio 0
PARAM_VALUE 2 put 0-5
BUF_SIZE 0 req (-1)-s32max
BUF_SIZE 0 req (-1)-s32max
BUF_SIZE 0 req->device s32min-(-1),1-s32max
BUF_SIZE 0 req->master_bio (-1)-0,32,144-16528
DATA_SOURCE 0 req $0
DATA_SOURCE 1 m $1
FUZZY_MAX 2 put 1
STR_LEN 0 req (-1),8,11-12,14,17,19-20,23,26-27,29,31-32
STR_LEN 0 req (-1),8,11-12,14,17,19-20,23,26-27,29,31-32
NOSPEC 0 req->i.sector
NOSPEC 0 req->i.size
NOSPEC 0 req->master_bio->bi_iter.bi_sector
NOSPEC 0 req->master_bio->bi_iter.bi_size
NOSPEC 0 req->private_bio->bi_iter.bi_sector
NOSPEC 0 req->private_bio->bi_iter.bi_size
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 req->i.sector 0-u64max
HOST_DATA 0 req->i.size 1024-4294966272[c]
HOST_DATA 0 req->master_bio->bi_iter.bi_sector 0-u64max
HOST_DATA 0 req->master_bio->bi_iter.bi_size 1024-4294966272[c]
HOST_DATA 0 req->private_bio->bi_iter.bi_sector 0
HOST_DATA 0 req->private_bio->bi_iter.bi_size 0[c]
HOST_DATA 0 req->private_bio->bi_max_vecs 0-4,16,64,128,256[c]
USER_DATA 0 req->i.sector 0-u64max
USER_DATA 0 req->i.size 0-u32max
USER_DATA 0 req->master_bio->bi_ioprio 0-u16max
USER_DATA 0 req->master_bio->bi_iter.bi_sector 0-u64max
USER_DATA 0 req->master_bio->bi_iter.bi_size 0-u32max
USER_DATA 0 req->master_bio->bi_max_vecs 0-4,16,64,128,256[c]
USER_DATA 0 req->private_bio->bi_ioprio 0-u16max
USER_DATA 0 req->private_bio->bi_iter.bi_sector 0
USER_DATA 0 req->private_bio->bi_iter.bi_size 0
USER_DATA 0 req->private_bio->bi_max_vecs 0-4,16,64,128,256[c]
HALF_LOCKED2 &device->resource->req_lock
HALF_LOCKED2 &resource->req_lock
HALF_LOCKED2 flags
HALF_LOCKED2 irq
TYPE_LOCK (struct drbd_resource)->req_lock