Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/platform/raspberrypi/vchiq-interface/vchiq_dev.c vchiq_ioctl() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->connected s32min-(-1),1-s32max
PARAM_VALUE 2 pidx 9187582688827637760
BUF_SIZE 1 instance s32min-(-2),1-s32max
BUF_SIZE 1 instance s32min-(-2),1-s32max

drivers/platform/raspberrypi/vchiq-interface/vchiq_dev.c vchiq_ioctl() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state 4096-ptr_max
PARAM_VALUE 0 state->unused_service (-2147483647)-s32max
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->connected s32min-(-1),1-s32max
PARAM_VALUE 1 instance->state 4096-ptr_max
PARAM_VALUE 1 instance->state->unused_service (-2147483647)-s32max
PARAM_VALUE 2 pidx 9187582688827637760
BUF_SIZE 1 instance s32min-(-2),1-s32max
BUF_SIZE 1 instance s32min-(-2),1-s32max
CAPPED_DATA 0 state->unused_service 1
CAPPED_DATA 1 instance->state->unused_service 1

drivers/platform/raspberrypi/vchiq-interface/vchiq_dev.c vchiq_release() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state 4096-ptr_max
PARAM_VALUE 0 state->remote 4096-ptr_max
PARAM_VALUE 0 state->remote->initialised 1
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->closing 1
PARAM_VALUE 1 instance->completion_mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->completion_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->insert_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->remove_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->remove_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->state 4096-ptr_max
PARAM_VALUE 1 instance->state->remote 4096-ptr_max
PARAM_VALUE 1 instance->state->remote->initialised 1
PARAM_VALUE 1 instance->state->remote->trigger.fired 0-1
PARAM_VALUE 2 pidx 7594728684169736192
BUF_SIZE 1 instance (-1),26
BUF_SIZE 1 instance (-1),26
CAPPED_DATA 1 &instance->completion_mutex 1
RX_PATH
TASK_NOT_RUNNING

drivers/platform/raspberrypi/vchiq-interface/vchiq_dev.c vchiq_release() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state 4096-ptr_max
PARAM_VALUE 0 state->remote 4096-ptr_max
PARAM_VALUE 0 state->remote->initialised 1
PARAM_VALUE 0 state->unused_service (-2147483647)-s32max
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->closing 1
PARAM_VALUE 1 instance->completion_mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->completion_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->insert_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->remove_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->remove_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->state 4096-ptr_max
PARAM_VALUE 1 instance->state->remote 4096-ptr_max
PARAM_VALUE 1 instance->state->remote->initialised 1
PARAM_VALUE 1 instance->state->remote->trigger.fired 0-1
PARAM_VALUE 1 instance->state->unused_service (-2147483647)-s32max
PARAM_VALUE 2 pidx 7594728684169736192
BUF_SIZE 1 instance (-1),26
BUF_SIZE 1 instance (-1),26
CAPPED_DATA 0 state->unused_service 1
CAPPED_DATA 1 &instance->completion_mutex 1
RX_PATH
TASK_NOT_RUNNING

drivers/platform/raspberrypi/vchiq-interface/vchiq_dev.c vchiq_release() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state 4096-ptr_max
PARAM_VALUE 0 state->remote 4096-ptr_max
PARAM_VALUE 0 state->remote->initialised 1
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->closing 1
PARAM_VALUE 1 instance->completion_mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->completion_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->insert_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->remove_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->remove_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->state 4096-ptr_max
PARAM_VALUE 1 instance->state->remote 4096-ptr_max
PARAM_VALUE 1 instance->state->remote->initialised 1
PARAM_VALUE 1 instance->state->remote->trigger.fired 0-1
PARAM_VALUE 2 pidx 7594728684169736192
BUF_SIZE 1 instance (-1),26
BUF_SIZE 1 instance (-1),26
CAPPED_DATA 0 state->unused_service 1
CAPPED_DATA 1 &instance->completion_mutex 1
RX_PATH
TASK_NOT_RUNNING

drivers/platform/raspberrypi/vchiq-interface/vchiq_dev.c vchiq_release() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state 4096-ptr_max
PARAM_VALUE 0 state->remote 4096-ptr_max
PARAM_VALUE 0 state->remote->initialised 1
PARAM_VALUE 0 state->unused_service (-2147483647)-s32max
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->closing 1
PARAM_VALUE 1 instance->completion_mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 1 instance->completion_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->completion_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->insert_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->insert_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->remove_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 1 instance->remove_event.wait.lock.owner (-1)
PARAM_VALUE 1 instance->remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 1 instance->state 4096-ptr_max
PARAM_VALUE 1 instance->state->remote 4096-ptr_max
PARAM_VALUE 1 instance->state->remote->initialised 1
PARAM_VALUE 1 instance->state->remote->trigger.fired 0-1
PARAM_VALUE 1 instance->state->unused_service (-2147483647)-s32max
PARAM_VALUE 2 pidx 7594728684169736192
BUF_SIZE 1 instance (-1),26
BUF_SIZE 1 instance (-1),26
CAPPED_DATA 0 state->unused_service 1
CAPPED_DATA 1 &instance->completion_mutex 1
RX_PATH
TASK_NOT_RUNNING

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c vchiq_connect_internal() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state->mutex.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->connected 0
PARAM_VALUE 1 instance->state->mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner (-1)
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 2 pidx 290929704475111424
BUF_SIZE 1 instance s32min-(-1),1-s32max
BUF_SIZE 1 instance s32min-(-1),1-s32max
DATA_SOURCE 0 state $0
DATA_SOURCE 1 instance $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &state->mutex
HALF_LOCKED2 1 &instance->state->mutex
TYPE_LOCK (struct vchiq_state)->mutex

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c vchiq_connect_internal() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state 4096-ptr_max
PARAM_VALUE 0 state->mutex.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 state->unused_service (-2147483647)-s32max
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->connected 0
PARAM_VALUE 1 instance->state->mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner (-1)
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 2 pidx 290929704475111424
BUF_SIZE 1 instance s32min-(-1),1-s32max
BUF_SIZE 1 instance s32min-(-1),1-s32max
CAPPED_DATA 0 state->unused_service 1
DATA_SOURCE 0 state $0
DATA_SOURCE 1 instance $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &state->mutex
HALF_LOCKED2 1 &instance->state->mutex
TYPE_LOCK (struct vchiq_state)->mutex

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c vchiq_shutdown_internal() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state->mutex.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->state->mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 instance->state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner (-1)
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 instance->state->remote->trigger.armed 0-1
PARAM_VALUE 1 instance->state->remote->trigger.fired 0-1
PARAM_VALUE 2 pidx 2239840177294905344
DATA_SOURCE 0 state $0
DATA_SOURCE 1 instance $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 instance unit_array_size
LOCK2 0 &state->mutex
TYPE_LOCK (struct vchiq_state)->mutex

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c vchiq_shutdown_internal() -> next_service_by_instance()

Type Parameter Key Value
PARAM_VALUE 0 state 4096-ptr_max
PARAM_VALUE 0 state->mutex.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 state->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 state->unused_service (-2147483647)-s32max
PARAM_VALUE 1 instance 4096-ptr_max
PARAM_VALUE 1 instance->state 4096-ptr_max
PARAM_VALUE 1 instance->state->mutex.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 instance->state->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 instance->state->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 instance->state->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner (-1)
PARAM_VALUE 1 instance->state->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 instance->state->remote->trigger.armed 0-1
PARAM_VALUE 1 instance->state->remote->trigger.fired 0-1
PARAM_VALUE 2 pidx 2239840177294905344
CAPPED_DATA 0 state->unused_service 1
DATA_SOURCE 0 state $0
DATA_SOURCE 1 instance $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 instance unit_array_size
LOCK2 0 &state->mutex
TYPE_LOCK (struct vchiq_state)->mutex