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() -> vchiq_release_service_internal()

Type Parameter Key Value
PARAM_VALUE 0 service 4096-ptr_max
PARAM_VALUE 0 service->instance 4096-ptr_max
PARAM_VALUE 0 service->ref_count.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 service->srvstate s32min-(-1),1-s32max
DATA_SOURCE 0 service r find_service_for_instance

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c close_service_complete() -> vchiq_release_service_internal()

Type Parameter Key Value
PARAM_VALUE 0 service 4096-ptr_max
PARAM_VALUE 0 service->base.callback 4096-ptr_max
PARAM_VALUE 0 service->ref_count.refcount.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 service->srvstate 2,8-9
PARAM_VALUE 0 service->state->local->sync_release.armed 0-1
PARAM_VALUE 0 service->state->local->sync_release.fired 0-1
PARAM_VALUE 0 service->state->local->trigger.armed 0-1
PARAM_VALUE 0 service->state->local->trigger.fired 0-1
PARAM_VALUE 0 service->state->remote->recycle.armed 0-1
PARAM_VALUE 0 service->state->remote->recycle.fired 0-1
PARAM_VALUE 0 service->state->remote->slot_first 0,2,33-34
PARAM_VALUE 0 service->state->remote->slot_last 0,31-32,63-64
PARAM_VALUE 0 service->state->remote->sync_release.fired 0-1
PARAM_VALUE 0 service->state->remote->trigger.fired 0-1
PARAM_VALUE 0 *service->state->remote->slot_queue s32min-s32max
DATA_SOURCE 0 service $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c vchiq_open_service_internal() -> vchiq_release_service_internal()

Type Parameter Key Value
PARAM_VALUE 0 service 4096-ptr_max
PARAM_VALUE 0 service->auto_close 1
PARAM_VALUE 0 service->base.callback 1-u64max
PARAM_VALUE 0 service->base.fourcc s32min-(-1),1-s32max
PARAM_VALUE 0 service->bulk_mutex.dep_map->name 0-255
PARAM_VALUE 0 service->bulk_mutex.first_waiter 0
PARAM_VALUE 0 service->bulk_mutex.magic 4096-ptr_max
PARAM_VALUE 0 service->bulk_mutex.osq.tail.counter 0
PARAM_VALUE 0 service->bulk_mutex.owner.counter 0
PARAM_VALUE 0 service->bulk_remove_event.done 0
PARAM_VALUE 0 service->bulk_remove_event.wait.lock.magic 3735899821
PARAM_VALUE 0 service->bulk_remove_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->bulk_remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->instance 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.done 0
PARAM_VALUE 0 service->msg_queue_pop.wait.lock.magic 3735899821
PARAM_VALUE 0 service->msg_queue_pop.wait.lock.owner (-1)
PARAM_VALUE 0 service->msg_queue_pop.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.done 0
PARAM_VALUE 0 service->msg_queue_push.wait.lock.magic 3735899821
PARAM_VALUE 0 service->msg_queue_push.wait.lock.owner (-1)
PARAM_VALUE 0 service->msg_queue_push.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->poll_flags.counter 0
PARAM_VALUE 0 service->ref_count.refcount.refs.counter 1
PARAM_VALUE 0 service->remoteport 4096
PARAM_VALUE 0 service->remove_event.done 0-4294967293,u32max
PARAM_VALUE 0 service->remove_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 service->remove_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->remove_event.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->srvstate 3
PARAM_VALUE 0 service->state 4096-ptr_max
PARAM_VALUE 0 service->state->data_quota_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 service->state->data_quota_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->state->data_quota_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->state->data_quota_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->state->data_quota_event.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 service->state->dev 4096-ptr_max
PARAM_VALUE 0 service->state->local->sync_release.armed 0-1
PARAM_VALUE 0 service->state->local->sync_release.fired 0-1
PARAM_VALUE 0 service->state->local->trigger.armed 0-1
PARAM_VALUE 0 service->state->local->trigger.fired 0-1
PARAM_VALUE 0 service->state->quota_spinlock.rlock.dep_map->name 0-255
PARAM_VALUE 0 service->state->remote->trigger.fired 1
PARAM_VALUE 0 service->state->slot_available_event.done 0-4294967293,u32max
PARAM_VALUE 0 service->state->slot_available_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 service->state->slot_available_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->state->slot_available_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->state->slot_available_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->state->slot_available_event.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 service->state->slot_mutex.dep_map->name 0-255
PARAM_VALUE 0 service->state->slot_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 service->state->slot_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 service->state->tx_data 4096-ptr_max
PARAM_VALUE 0 service->userdata_term 0,36024145200467968
BUF_SIZE 0 service 2448
BUF_SIZE 0 service->base.userdata 235432
BUF_SIZE 0 service->instance s32min-(-1),1-s32max
DATA_SOURCE 0 service $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/platform/raspberrypi/vchiq-interface/vchiq_core.c vchiq_open_service_internal() -> vchiq_release_service_internal()

Type Parameter Key Value
PARAM_VALUE 0 service 4096-ptr_max
PARAM_VALUE 0 service->auto_close 1
PARAM_VALUE 0 service->base.callback 1-u64max
PARAM_VALUE 0 service->base.fourcc s32min-(-1),1-s32max
PARAM_VALUE 0 service->bulk_mutex.dep_map->name 0-255
PARAM_VALUE 0 service->bulk_mutex.first_waiter 0
PARAM_VALUE 0 service->bulk_mutex.magic 4096-ptr_max
PARAM_VALUE 0 service->bulk_mutex.osq.tail.counter 0
PARAM_VALUE 0 service->bulk_mutex.owner.counter 0
PARAM_VALUE 0 service->bulk_remove_event.done 0
PARAM_VALUE 0 service->bulk_remove_event.wait.lock.magic 3735899821
PARAM_VALUE 0 service->bulk_remove_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->bulk_remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->bulk_remove_event.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->instance 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.done 0
PARAM_VALUE 0 service->msg_queue_pop.wait.lock.magic 3735899821
PARAM_VALUE 0 service->msg_queue_pop.wait.lock.owner (-1)
PARAM_VALUE 0 service->msg_queue_pop.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_pop.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.done 0
PARAM_VALUE 0 service->msg_queue_push.wait.lock.magic 3735899821
PARAM_VALUE 0 service->msg_queue_push.wait.lock.owner (-1)
PARAM_VALUE 0 service->msg_queue_push.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->msg_queue_push.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->poll_flags.counter 0
PARAM_VALUE 0 service->ref_count.refcount.refs.counter 1
PARAM_VALUE 0 service->remoteport 4096
PARAM_VALUE 0 service->remove_event.done 0-4294967293,u32max
PARAM_VALUE 0 service->remove_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 service->remove_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->remove_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->remove_event.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 service->remove_event.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 service->srvstate 3
PARAM_VALUE 0 service->state 4096-ptr_max
PARAM_VALUE 0 service->state->data_quota_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 service->state->data_quota_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->state->data_quota_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->state->data_quota_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->state->data_quota_event.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 service->state->dev 4096-ptr_max
PARAM_VALUE 0 service->state->local->sync_release.armed 0-1
PARAM_VALUE 0 service->state->local->sync_release.fired 0-1
PARAM_VALUE 0 service->state->local->trigger.armed 0-1
PARAM_VALUE 0 service->state->local->trigger.fired 0-1
PARAM_VALUE 0 service->state->quota_spinlock.rlock.dep_map->name 0-255
PARAM_VALUE 0 service->state->remote->trigger.fired 1
PARAM_VALUE 0 service->state->slot_available_event.done 0-4294967293,u32max
PARAM_VALUE 0 service->state->slot_available_event.wait.lock.dep_map->name 0-255
PARAM_VALUE 0 service->state->slot_available_event.wait.lock.owner (-1)
PARAM_VALUE 0 service->state->slot_available_event.wait.lock.owner_cpu u32max
PARAM_VALUE 0 service->state->slot_available_event.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 service->state->slot_available_event.wait.task_list.prev->next->next 4096-ptr_max
PARAM_VALUE 0 service->state->slot_mutex.dep_map->name 0-255
PARAM_VALUE 0 service->state->slot_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 service->state->slot_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 service->state->tx_data 4096-ptr_max
PARAM_VALUE 0 service->userdata_term 0,36024145200467968
BUF_SIZE 0 service 2448
BUF_SIZE 0 service->base.userdata 235432
BUF_SIZE 0 service->instance s32min-(-1),1-s32max
DATA_SOURCE 0 service $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL