Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

lib/test_kmod.c kmod_config_init() -> __kmod_config_init()

Type Parameter Key Value
PARAM_VALUE 0 test_dev 4096-ptr_max
PARAM_VALUE 0 test_dev->config_mutex.dep_map->name 0-255
PARAM_VALUE 0 test_dev->config_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 test_dev->config_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 test_dev->config_mutex.magic 4096-ptr_max
PARAM_VALUE 0 test_dev->config_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 test_dev->config_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 test_dev->config_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 test_dev->config_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 test_dev->kthreads_done.done 0
PARAM_VALUE 0 test_dev->kthreads_done.wait.lock.magic 3735899821
PARAM_VALUE 0 test_dev->kthreads_done.wait.lock.owner (-1)
PARAM_VALUE 0 test_dev->kthreads_done.wait.lock.owner_cpu u32max
PARAM_VALUE 0 test_dev->kthreads_done.wait.task_list.next 4096-ptr_max
PARAM_VALUE 0 test_dev->kthreads_done.wait.task_list.next->next 4096-ptr_max
PARAM_VALUE 0 test_dev->kthreads_done.wait.task_list.prev 4096-ptr_max
PARAM_VALUE 0 test_dev->kthreads_done.wait.task_list.prev->next 4096-ptr_max
PARAM_VALUE 0 test_dev->kthreads_done.wait.task_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 test_dev->thread_mutex.dep_map->name 0-255
PARAM_VALUE 0 test_dev->thread_mutex.first_waiter 0
PARAM_VALUE 0 test_dev->thread_mutex.magic 4096-ptr_max
PARAM_VALUE 0 test_dev->thread_mutex.osq.tail.counter 0
PARAM_VALUE 0 test_dev->thread_mutex.owner.counter 0
PARAM_VALUE 0 test_dev->trigger_mutex.dep_map->name 0-255
PARAM_VALUE 0 test_dev->trigger_mutex.first_waiter 0
PARAM_VALUE 0 test_dev->trigger_mutex.magic 4096-ptr_max
PARAM_VALUE 0 test_dev->trigger_mutex.owner.counter 0
BUF_SIZE 0 test_dev 712
CAPPED_DATA 0 &test_dev->config_mutex 1
DATA_SOURCE 0 test_dev $0
LOCK2 global &reg_dev_mutex
LOCK2 0 &test_dev->config_mutex
TYPE_LOCK (struct kmod_test_device)->config_mutex

lib/test_kmod.c reset_store() -> __kmod_config_init()

Type Parameter Key Value
PARAM_VALUE 0 test_dev 4096-ptr_max
PARAM_VALUE 0 test_dev->config_mutex.dep_map->name 0-255
PARAM_VALUE 0 test_dev->config_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 test_dev->config_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 test_dev->config_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 test_dev->config_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 test_dev->config_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 test_dev->config_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 test_dev->trigger_mutex.dep_map->name 0-255
PARAM_VALUE 0 test_dev->trigger_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 test_dev->trigger_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 test_dev->trigger_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 test_dev->trigger_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 test_dev->trigger_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 test_dev->trigger_mutex.wait_lock.owner_cpu u32max
CAPPED_DATA 0 &test_dev->config_mutex 1
CAPPED_DATA 0 &test_dev->trigger_mutex 1
DATA_SOURCE 0 test_dev r dev_to_test_dev
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
LOCK2 0 &test_dev->config_mutex
LOCK2 0 &test_dev->trigger_mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct kmod_test_device)->config_mutex
TYPE_LOCK (struct kmod_test_device)->trigger_mutex