Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 1 files:

Smatch caller information:

net/bluetooth/hci_core.c hci_release_dev() -> msft_release()

Type Parameter Key Value
PARAM_VALUE 0 hdev 4096-ptr_max
PARAM_VALUE 0 hdev->adv_instance_cnt 0
PARAM_VALUE 0 hdev->adv_instance_timeout 0
PARAM_VALUE 0 hdev->adv_monitors_idr.idr_rt.xa_flags 0,33554432-u32max
PARAM_VALUE 0 hdev->adv_monitors_idr.idr_rt.xa_head 0
PARAM_VALUE 0 hdev->cur_adv_instance 0
PARAM_VALUE 0 hdev->debugfs 0,4096-u64max
PARAM_VALUE 0 hdev->debugfs->d_fsdata->management_timer.flags 0-4294967295
PARAM_VALUE 0 hdev->debugfs->d_inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->debugfs->d_sb->s_fs_info->lookup_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->debugfs->d_sb->s_roots_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->dev_flags 4096-ptr_max
PARAM_VALUE 0 hdev->discovery.report_invalid_rssi 1
PARAM_VALUE 0 hdev->discovery.result_filtering 0
PARAM_VALUE 0 hdev->discovery.rssi 127
PARAM_VALUE 0 hdev->discovery.uuid_count 0
PARAM_VALUE 0 hdev->discovery.uuids 0
PARAM_VALUE 0 hdev->lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 hdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->lock.wait_lock.owner (-1)
PARAM_VALUE 0 hdev->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 hdev->req_workqueue 4096-ptr_max
PARAM_VALUE 0 hdev->req_workqueue->flags 0-4294967295
PARAM_VALUE 0 hdev->req_workqueue->flush_color s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->nr_drainers s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->nr_pwqs_to_flush.counter s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->rescuer 0
PARAM_VALUE 0 hdev->req_workqueue->work_color s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev 0
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev->driver_data->cis_virt (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.devres_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->callback->add 5235430000054906880
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->callback->early_resume 6956900869090054144
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->callback->remove 1719268733136482304
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->callback->requery 4713442613417914368
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->callback->resume 5068206944467017728
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->callback->suspend 2738892915008757760
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->callback->validate 4934365872137547776
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->cis_mem.flags 0,2-254
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->d_ref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->detaching.counter s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.kobj.kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.kobj.release.cpu s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.flags 0-4294967295
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->dev.parent->kobj.release.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->device_count 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->ops_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->sfd_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->sfd_lock.raw_lock.cnts.counter s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->skt_mutex.dep_map->name 0-255
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.driver_data->skt_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.p->dead 1
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.p->knode_class.n_ref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.p->knode_parent.n_ref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.power.completion.done 4294967295
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.power.last_status s32min-0,2,4-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.power.qos (-19),0
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.power.runtime_status 2
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.power.usage_count.counter 0-s32max
PARAM_VALUE 0 hdev->req_workqueue->wq_dev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 hdev->workqueue 4096-ptr_max
PARAM_VALUE 0 hdev->workqueue->flags 0-4294967295
PARAM_VALUE 0 hdev->workqueue->flush_color s32min-s32max
PARAM_VALUE 0 hdev->workqueue->nr_drainers s32min-s32max
PARAM_VALUE 0 hdev->workqueue->nr_pwqs_to_flush.counter s32min-s32max
PARAM_VALUE 0 hdev->workqueue->rescuer 0
PARAM_VALUE 0 hdev->workqueue->work_color s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev 0
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev->driver_data->cis_virt (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.devres_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->callback->add 5235430000054906880
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->callback->early_resume 6956900869090054144
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->callback->remove 1719268733136482304
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->callback->requery 4713442613417914368
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->callback->resume 5068206944467017728
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->callback->suspend 2738892915008757760
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->callback->validate 4934365872137547776
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->cdev->kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->cis_mem.flags 0,2-254
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->d_ref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->detaching.counter s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.kobj.kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.kobj.release.cpu s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.flags 0-4294967295
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->dev.parent->kobj.release.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->device_count 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->ops_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->ops_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->ops_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->sfd_lock.dep_map->name 0-255
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->sfd_lock.raw_lock.cnts.counter s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->skt_mutex.dep_map->name 0-255
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->skt_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->skt_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.driver_data->skt_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.kobj.release.timer.is_hard 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.kobj.release.timer.is_lazy 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.kobj.release.timer.is_queued 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.kobj.release.timer.is_soft 0-1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.p->dead 1
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.p->knode_class.n_ref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.p->knode_parent.n_ref.refcount.refs.counter s32min-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.power.completion.done 4294967295
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.power.last_status s32min-0,2,4-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.power.qos (-19),0
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.power.runtime_status 2
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.power.usage_count.counter 0-s32max
PARAM_VALUE 0 hdev->workqueue->wq_dev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 *hdev->req_workqueue->lockdep_map->name 0-255
PARAM_VALUE 0 *hdev->workqueue->lockdep_map->name 0-255
CAPPED_DATA 0 hdev->adv_monitors_idr.idr_base 1
CAPPED_DATA 0 hdev->debugfs 1
CAPPED_DATA 0 hdev->fw_info 1
CAPPED_DATA 0 hdev->hw_info 1
CAPPED_DATA 0 &hdev->accept_list 1
CAPPED_DATA 0 &hdev->le_accept_list 1
CAPPED_DATA 0 &hdev->le_resolv_list 1
CAPPED_DATA 0 &hdev->local_codecs 1
CAPPED_DATA 0 &hdev->lock 1
CAPPED_DATA 0 &hdev->reject_list 1
DATA_SOURCE 0 hdev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &hdev->lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &subsys->su_mutex
TYPE_LOCK (struct hci_dev)->lock