Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/md/dm-clone-target.c __start_next_hydration() -> dm_clone_is_region_hydrated()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->hydration_done 0
PARAM_VALUE 1 region_nr 0-64
CAPPED_DATA 1 region_nr 1
CAPPED_DATA 1 region_nr 1
DATA_SOURCE 1 region_nr r dm_clone_find_next_unhydrated_region
PREEMPT_ADD <- disables preempt
NO_OVERFLOW_SIMPLE 0 cmd->bm->bufio->block_size
UNITS 1 region_nr unit_byte
LOCK2 &bucket->lock
LOCK2 irq
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hash_table_bucket)->lock

drivers/md/dm-clone-target.c clone_map() -> dm_clone_is_region_hydrated()

Type Parameter Key Value
DATA_SOURCE 1 region_nr r bio_to_region
RX_PATH
TASK_NOT_RUNNING
LOCK2 &md->io_barrier
HALF_LOCKED2 &bio->bi_bdev->bd_queue->queue_lock
HALF_LOCKED2 &md->swap_bios_semaphore
TYPE_LOCK (struct mapped_device)->io_barrier

drivers/md/dm-clone-target.c hydrate_bio_region() -> dm_clone_is_region_hydrated()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->hydration_done 0
DATA_SOURCE 1 region_nr r bio_to_region
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bucket->lock
LOCK2 &md->io_barrier
LOCK2 irq
HALF_LOCKED2 &bio->bi_bdev->bd_queue->queue_lock
HALF_LOCKED2 &md->swap_bios_semaphore
TYPE_LOCK (struct hash_table_bucket)->lock
TYPE_LOCK (struct mapped_device)->io_barrier

drivers/md/dm-clone-target.c hydrate_bio_region() -> dm_clone_is_region_hydrated()

Type Parameter Key Value
PARAM_VALUE 0 cmd 4096-ptr_max
PARAM_VALUE 0 cmd->hydration_done 0
DATA_SOURCE 1 region_nr r bio_to_region
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bucket->lock
LOCK2 &md->io_barrier
LOCK2 irq
HALF_LOCKED2 &bio->bi_bdev->bd_queue->queue_lock
HALF_LOCKED2 &md->swap_bios_semaphore
TYPE_LOCK (struct hash_table_bucket)->lock
TYPE_LOCK (struct mapped_device)->io_barrier