Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/md/dm-thin.c bio_detain() -> dm_bio_prison_free_cell()

Type Parameter Key Value
PARAM_VALUE 0 prison 4096-ptr_max
PARAM_VALUE 0 prison->cell_pool.curr_nr s32min-s32max
DATA_SOURCE 1 cell r dm_bio_prison_alloc_cell
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 &pool->lock

drivers/md/dm-thin.c cell_error_with_code() -> dm_bio_prison_free_cell()

Type Parameter Key Value
PARAM_VALUE 0 prison 4096-ptr_max
PARAM_VALUE 1 cell 4096-ptr_max
PARAM_VALUE 1 cell->holder 0,4096-ptr_max
PARAM_VALUE 1 cell->holder->bi_next 0
PARAM_VALUE 1 cell->node.rb_left 0,4096-ptr_max
PARAM_VALUE 1 cell->node.rb_right 0,4096-ptr_max
DATA_SOURCE 1 cell $1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 cell->key.block_begin
NO_OVERFLOW_SIMPLE 1 cell->key.block_end
HALF_LOCKED2 &pool->lock

drivers/md/dm-thin.c cell_release() -> dm_bio_prison_free_cell()

Type Parameter Key Value
PARAM_VALUE 0 prison 4096-ptr_max
PARAM_VALUE 1 cell 4096-ptr_max
PARAM_VALUE 1 cell->holder 0,4096-ptr_max
PARAM_VALUE 1 cell->holder->bi_next 0
PARAM_VALUE 1 cell->node.rb_left 0,4096-ptr_max
PARAM_VALUE 1 cell->node.rb_right 0,4096-ptr_max
DATA_SOURCE 1 cell $1
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 cell->key.block_begin
NO_OVERFLOW_SIMPLE 1 cell->key.block_end
HALF_LOCKED2 &pool->lock

drivers/md/dm-thin.c cell_release_no_holder() -> dm_bio_prison_free_cell()

Type Parameter Key Value
PARAM_VALUE 0 prison 4096-ptr_max
PARAM_VALUE 1 cell 4096-ptr_max
PARAM_VALUE 1 cell->node.rb_left 0,4096-ptr_max
PARAM_VALUE 1 cell->node.rb_right 0,4096-ptr_max
DATA_SOURCE 1 cell $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 cell->key.block_begin
NO_OVERFLOW_SIMPLE 1 cell->key.block_end
HALF_LOCKED2 &md->io_barrier
HALF_LOCKED2 &pool->lock

drivers/md/dm-thin.c cell_visit_release() -> dm_bio_prison_free_cell()

Type Parameter Key Value
PARAM_VALUE 0 prison 4096-ptr_max
PARAM_VALUE 1 cell 4096-ptr_max
PARAM_VALUE 1 cell->bios.head 0
PARAM_VALUE 1 cell->bios.head->bi_next 0
PARAM_VALUE 1 cell->node.rb_left 0,4096-ptr_max
PARAM_VALUE 1 cell->node.rb_right 0,4096-ptr_max
DATA_SOURCE 1 cell $3
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 1 cell->key.block_begin
NO_OVERFLOW_SIMPLE 1 cell->key.block_end
HALF_LOCKED2 &pool->lock