lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 18 Jan 2021 04:13:28 +0300 From: Dmitry Osipenko <digetx@...il.com> To: Thierry Reding <thierry.reding@...il.com>, Jonathan Hunter <jonathanh@...dia.com>, Ulf Hansson <ulf.hansson@...aro.org>, Peter Geis <pgwipeout@...il.com>, Nicolas Chauvet <kwizart@...il.com>, "Rafael J. Wysocki" <rjw@...ysocki.net>, Kevin Hilman <khilman@...nel.org>, Peter De Schrijver <pdeschrijver@...dia.com>, Viresh Kumar <vireshk@...nel.org>, Stephen Boyd <sboyd@...nel.org>, Greg Kroah-Hartman <gregkh@...uxfoundation.org>, Matt Merhar <mattmerhar@...tonmail.com> Cc: linux-kernel@...r.kernel.org, linux-tegra@...r.kernel.org, linux-pm@...r.kernel.org Subject: [PATCH v3 1/3] PM: domains: Make set_performance_state() callback optional Make set_performance_state() callback optional in order to remove the need from power domain drivers to implement a dummy callback. If callback isn't implemented by a GENPD driver, then the performance state is passed to the parent domain. Tested-by: Peter Geis <pgwipeout@...il.com> Tested-by: Nicolas Chauvet <kwizart@...il.com> Tested-by: Matt Merhar <mattmerhar@...tonmail.com> Suggested-by: Ulf Hansson <ulf.hansson@...aro.org> Reviewed-by: Ulf Hansson <ulf.hansson@...aro.org> Signed-off-by: Dmitry Osipenko <digetx@...il.com> --- drivers/base/power/domain.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c index 9a14eedacb92..a3e1bfc233d4 100644 --- a/drivers/base/power/domain.c +++ b/drivers/base/power/domain.c @@ -339,9 +339,11 @@ static int _genpd_set_performance_state(struct generic_pm_domain *genpd, goto err; } - ret = genpd->set_performance_state(genpd, state); - if (ret) - goto err; + if (genpd->set_performance_state) { + ret = genpd->set_performance_state(genpd, state); + if (ret) + goto err; + } genpd->performance_state = state; return 0; @@ -399,9 +401,6 @@ int dev_pm_genpd_set_performance_state(struct device *dev, unsigned int state) if (!genpd) return -ENODEV; - if (unlikely(!genpd->set_performance_state)) - return -EINVAL; - if (WARN_ON(!dev->power.subsys_data || !dev->power.subsys_data->domain_data)) return -EINVAL; -- 2.29.2
Powered by blists - more mailing lists