mirror of https://gitee.com/openkylin/linux.git
b19c23551b
The list_kref reaches a count of 0 when all the static OPPs are removed,
for example when dev_pm_opp_of_cpumask_remove_table() is called, though
the actual OPP table may not get freed as it may still be referenced by
other parts of the kernel, like from a call to
dev_pm_opp_set_supported_hw(). And if we call
dev_pm_opp_of_cpumask_add_table() again at this point, we must
reinitialize the list_kref otherwise the kernel will hit a WARN() in
kref infrastructure for incrementing a kref with value 0.
Fixes:
|
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
core.c | ||
cpu.c | ||
debugfs.c | ||
of.c | ||
opp.h | ||
ti-opp-supply.c |