Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/thermal/thermal_core.c thermal_cooling_device_update() -> thermal_cooling_device_stats_update()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->lock.dep_map->name 0-255
PARAM_VALUE 0 cdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 cdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 cdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 cdev->ops 4096-ptr_max
PARAM_VALUE 0 cdev->stats 0,4096-ptr_max
CAPPED_DATA 0 cdev 1
CAPPED_DATA 0 &cdev->thermal_instances 1
CAPPED_DATA 1 new_state 1
CAPPED_DATA 1 new_state 1
DATA_SOURCE 0 cdev $0
PARAM_COMPARE 0 cdev->max_state >= $1
PARAM_COMPARE 1 new_state <= $0->max_state
NOCHECK_CALL
LOCK2 _T->lock
LOCK2 0 &cdev->lock
TYPE_LOCK (struct thermal_cooling_device)->lock

drivers/thermal/thermal_helpers.c thermal_cdev_set_cur_state() -> thermal_cooling_device_stats_update()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->lock.dep_map->name 0-255
PARAM_VALUE 0 cdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 cdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 cdev->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 cdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 cdev->ops 4096-ptr_max
PARAM_VALUE 1 new_state 0-s32max,18446744071562067968-u64max
CAPPED_DATA 1 new_state 1
DATA_SOURCE 0 cdev $0
DATA_SOURCE 1 new_state $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &cdev->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &tz->lock
TYPE_LOCK (struct thermal_cooling_device)->lock

drivers/thermal/thermal_sysfs.c cur_state_store() -> thermal_cooling_device_stats_update()

Type Parameter Key Value
PARAM_VALUE 0 cdev 4096-ptr_max
PARAM_VALUE 0 cdev->lock.dep_map->name 0-255
PARAM_VALUE 0 cdev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 cdev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 cdev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 cdev->ops 4096-ptr_max
CAPPED_DATA 1 new_state 1
CAPPED_DATA 1 new_state 1
PARAM_COMPARE 0 cdev->max_state >= $1
PARAM_COMPARE 1 new_state <= $0->max_state
NOSPEC 1 new_state
NOSPEC 1 new_state
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 new_state 0-s32max[c]
NO_OVERFLOW_SIMPLE 1 new_state
LOCK2 &of->mutex
LOCK2 0 &cdev->lock
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex
TYPE_LOCK (struct thermal_cooling_device)->lock