Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 2 files as a function:
- drivers/cpufreq/cpufreq.c, line 233 (as a function)
- include/linux/cpufreq.h, line 226 (as a function)
Referenced in 14 files:
- arch/arm64/kernel/topology.c
- arch/x86/kvm/x86.c, line 6829
- drivers/cpufreq/amd-pstate-ut.c
- drivers/cpufreq/cpufreq.c, line 237
- drivers/cpufreq/longhaul.c, line 974
- drivers/cpufreq/powernv-cpufreq.c
- drivers/devfreq/governor_passive.c
- drivers/gpu/drm/i915/gt/intel_llc.c, line 40
- drivers/macintosh/windfarm_cpufreq_clamp.c, line 82
- drivers/powercap/dtpm_cpu.c
- drivers/thermal/imx_thermal.c
- drivers/thermal/ti-soc-thermal/ti-thermal-common.c
- include/linux/cpufreq.h, line 230
- kernel/power/energy_model.c
Smatch caller information:
drivers/thermal/ti-soc-thermal/ti-thermal-common.c ti_thermal_register_cpu_cooling() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->constraints.max_freq.list.node_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/thermal/ti-soc-thermal/ti-thermal-common.c ti_thermal_unregister_cpu_cooling() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &_dev->mutex |
drivers/cpufreq/amd-pstate-ut.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | _T->lock |
drivers/cpufreq/amd-pstate-ut.c amd_pstate_ut_epp() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->driver_data | 0,4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| NOCHECK_CALL |
drivers/cpufreq/amd-pstate-ut.c amd_pstate_ut_epp() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->driver_data | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->rwsem.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | policy->rwsem.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | policy->rwsem.first_waiter->list.next | 2624917664208203776 |
| PARAM_VALUE | 0 | policy->rwsem.first_waiter->list.prev | 2624917664208203776 |
| PARAM_VALUE | 0 | policy->rwsem.first_waiter->type | 0-1 |
| PARAM_VALUE | 0 | policy->rwsem.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | policy->rwsem.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | policy->rwsem.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | policy->rwsem.wait_lock.owner_cpu | u32max |
| CAPPED_DATA | 0 | &policy->rwsem | 1 |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| NOCHECK_CALL |
drivers/devfreq/governor_passive.c cpufreq_passive_register_notifier() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &devfreq_list_lock |
drivers/devfreq/governor_passive.c cpufreq_passive_register_notifier() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &devfreq_list_lock |
drivers/devfreq/governor_passive.c cpufreq_passive_register_notifier() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &devfreq_list_lock |
drivers/devfreq/governor_passive.c get_target_freq_with_cpufreq() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &devfreq->lock | ||
| TYPE_LOCK | (struct devfreq)->lock |
drivers/devfreq/governor_passive.c get_target_freq_with_cpufreq() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &devfreq->lock | ||
| TYPE_LOCK | (struct devfreq)->lock |
drivers/devfreq/governor_passive.c get_target_freq_with_cpufreq() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &devfreq->lock | ||
| TYPE_LOCK | (struct devfreq)->lock |
drivers/cpufreq/s5pv210-cpufreq.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| NOCHECK_CALL |
drivers/cpufreq/mediatek-cpufreq.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| NOCHECK_CALL |
drivers/powercap/dtpm_cpu.c __dtpm_cpu_setup() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->constraints.max_freq.list.node_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->related_cpus | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &dtpm_lock |
drivers/powercap/dtpm_cpu.c __dtpm_cpu_setup() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->related_cpus | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &dtpm_lock |
drivers/powercap/dtpm_cpu.c pd_release() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->related_cpus | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &pool->lock |
drivers/acpi/processor_thermal.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &cdev->lock |
drivers/cpufreq/brcmstb-avs-cpufreq.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &policy->rwsem | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &cpufreq_driver_lock |
kernel/power/energy_model.c em_check_capacity_update() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/power/energy_model.c em_cpufreq_update_efficiencies() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &em_pd_mutex |
drivers/cpufreq/cpufreq.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &policy->rwsem | ||
| HALF_LOCKED2 | _T->lock |
drivers/cpufreq/intel_pstate.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/cpufreq/amd-pstate.c __free_put_cpufreq_policy() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 1-u64max |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| BIT_INFO | 0 | policy | 0x0,0x7fffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
arch/x86/kvm/x86.c kvm_timer_init() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| LOCK2 | _T->lock |
drivers/thermal/imx_thermal.c imx_thermal_register_legacy_cooling() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->constraints.max_freq.list.node_list.next | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/thermal/imx_thermal.c imx_thermal_unregister_legacy_cooling() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &_dev->mutex |
drivers/gpu/drm/i915/gt/intel_llc.c cpu_max_MHz() -> cpufreq_cpu_put()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | policy | 4096-ptr_max |
| PARAM_VALUE | 0 | policy->cpus->bits | 4096-ptr_max |
| DATA_SOURCE | 0 | policy | r cpufreq_cpu_get |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | __flags |