Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/virtio/virtio_mem.c virtio_mem_bbm_offline_remove_and_unplug_bb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_count 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->hotplug_mutex.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 vm->hotplug_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->sbm.mb_states 1-u64max
PARAM_VALUE 0 vm->sbm.sb_states 1-u64max
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 2 state 3
CAPPED_DATA 0 vm->bbm.first_bb_id 1
CAPPED_DATA 0 vm->requested_size 1
CAPPED_DATA 0 vm->retry_timer.base 1
CAPPED_DATA 0 &vm->hotplug_mutex 1
DATA_SOURCE 0 vm $0
DATA_SOURCE 1 bb_id $1
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-u64max
HOST_DATA 0 vm->requested_size 0-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
LOCK2 0 &vm->hotplug_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct virtio_mem)->hotplug_mutex

drivers/virtio/virtio_mem.c virtio_mem_bbm_offline_remove_and_unplug_bb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_count 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->hotplug_mutex.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 vm->hotplug_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->removal_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 vm->sbm.mb_states 1-u64max
PARAM_VALUE 0 vm->sbm.sb_states 1-u64max
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 0 *vm->bbm.bb_states 3
PARAM_VALUE 2 state 1
CAPPED_DATA 0 vm->bbm.first_bb_id 1
CAPPED_DATA 0 vm->requested_size 1
CAPPED_DATA 0 vm->retry_timer.base 1
CAPPED_DATA 0 &vm->hotplug_mutex 1
DATA_SOURCE 0 vm $0
DATA_SOURCE 1 bb_id $1
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-u64max
HOST_DATA 0 vm->requested_size 0-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
HALF_LOCKED2 &pool->lock

drivers/virtio/virtio_mem.c virtio_mem_bbm_offline_remove_and_unplug_bb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_count 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->hotplug_mutex.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 vm->hotplug_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->removal_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 vm->sbm.mb_states 1-u64max
PARAM_VALUE 0 vm->sbm.sb_states 1-u64max
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 0 *vm->bbm.bb_states 3
PARAM_VALUE 2 state 0
CAPPED_DATA 0 vm->bbm.first_bb_id 1
CAPPED_DATA 0 vm->requested_size 1
CAPPED_DATA 0 vm->retry_timer.base 1
CAPPED_DATA 0 &vm->hotplug_mutex 1
DATA_SOURCE 0 vm $0
DATA_SOURCE 1 bb_id $1
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-u64max
HOST_DATA 0 vm->requested_size 0-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
HALF_LOCKED2 &pool->lock

drivers/virtio/virtio_mem.c virtio_mem_bbm_offline_remove_and_unplug_bb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_count 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->hotplug_mutex.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 vm->hotplug_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 vm->hotplug_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 vm->hotplug_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->sbm.mb_states 1-u64max
PARAM_VALUE 0 vm->sbm.sb_states 1-u64max
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 0 *vm->bbm.bb_states 3
PARAM_VALUE 2 state 2
CAPPED_DATA 0 vm->bbm.first_bb_id 1
CAPPED_DATA 0 vm->requested_size 1
CAPPED_DATA 0 vm->retry_timer.base 1
CAPPED_DATA 0 &vm->hotplug_mutex 1
DATA_SOURCE 0 vm $0
DATA_SOURCE 1 bb_id $1
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-u64max
HOST_DATA 0 vm->requested_size 0-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
LOCK2 0 &vm->hotplug_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct virtio_mem)->hotplug_mutex

drivers/virtio/virtio_mem.c virtio_mem_bbm_plug_and_add_bb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->plugged_size 0-18446744073709551614
PARAM_VALUE 0 vm->requested_size 1-u64max
PARAM_VALUE 0 vm->sbm.mb_states 1-u64max
PARAM_VALUE 0 vm->sbm.sb_states 1-u64max
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 2 state 2
CAPPED_DATA 0 vm->bbm.bb_size 1
CAPPED_DATA 0 vm->plugged_size 1
CAPPED_DATA 0 vm->retry_timer.base 1
DATA_SOURCE 0 vm $0
DATA_SOURCE 1 bb_id $1
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-18446744073709551614[c]
HOST_DATA 0 vm->requested_size 1-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
HALF_LOCKED2 &pool->lock

drivers/virtio/virtio_mem.c virtio_mem_bbm_plug_and_add_bb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->plugged_size 0-18446744073709551614
PARAM_VALUE 0 vm->requested_size 1-u64max
PARAM_VALUE 0 vm->sbm.mb_states 1-u64max
PARAM_VALUE 0 vm->sbm.sb_states 1-u64max
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 0 *vm->bbm.bb_states 2
PARAM_VALUE 2 state 0
CAPPED_DATA 0 vm->bbm.bb_size 1
CAPPED_DATA 0 vm->plugged_size 1
CAPPED_DATA 0 vm->retry_timer.base 1
DATA_SOURCE 0 vm $0
DATA_SOURCE 1 bb_id $1
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-18446744073709551614[c]
HOST_DATA 0 vm->requested_size 1-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
HALF_LOCKED2 &pool->lock

drivers/virtio/virtio_mem.c virtio_mem_bbm_plug_and_add_bb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->plugged_size 0-18446744073709551614
PARAM_VALUE 0 vm->requested_size 1-u64max
PARAM_VALUE 0 vm->sbm.mb_states 1-u64max
PARAM_VALUE 0 vm->sbm.sb_states 1-u64max
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 0 *vm->bbm.bb_states 2
PARAM_VALUE 2 state 1
CAPPED_DATA 0 vm->bbm.bb_size 1
CAPPED_DATA 0 vm->plugged_size 1
CAPPED_DATA 0 vm->retry_timer.base 1
DATA_SOURCE 0 vm $0
DATA_SOURCE 1 bb_id $1
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-18446744073709551614[c]
HOST_DATA 0 vm->requested_size 1-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
HALF_LOCKED2 &pool->lock

drivers/virtio/virtio_mem.c virtio_mem_cleanup_pending_mb() -> virtio_mem_bbm_set_bb_state()

Type Parameter Key Value
PARAM_VALUE 0 vm 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_count 4096-ptr_max
PARAM_VALUE 0 vm->bbm.bb_states 4096-ptr_max
PARAM_VALUE 0 vm->bbm.next_bb_id 1-u64max
PARAM_VALUE 0 vm->broken 0
PARAM_VALUE 0 vm->config_changed.counter 0
PARAM_VALUE 0 vm->in_kdump 0
PARAM_VALUE 0 vm->in_sbm 0
PARAM_VALUE 0 vm->wq_active.counter 1
PARAM_VALUE 1 bb_id 0-18446744073709551614
PARAM_VALUE 2 state 0
CAPPED_DATA 0 vm->retry_timer.base 1
CAPPED_DATA 1 bb_id 1
CAPPED_DATA 1 bb_id 1
DATA_SOURCE 0 vm $0
PARAM_COMPARE 1 bb_id < $0->bbm.next_bb_id
PARAM_COMPARE 1 bb_id < $0->bbm.next_bb_id
NOCHECK_CALL
HOST_DATA 0 vm->plugged_size 0-u64max
HOST_DATA 0 vm->requested_size 0-u64max
HOST_DATA 0 vm->usable_region_size 0-u64max
HALF_LOCKED2 &pool->lock