All of lore.kernel.org
 help / color / mirror / Atom feed
* [android-common:android13-5.10-lts 6/6] drivers/base/power/domain_governor.c:259: warning: Function parameter or member 'now' not described in '_default_power_down_ok'
@ 2026-11-14  7:08 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-11-14  7:08 UTC (permalink / raw)
  To: cros-kernel-buildreports; +Cc: oe-kbuild-all

tree:   https://android.googlesource.com/kernel/common android13-5.10-lts
head:   c73351b2e985e893999227194b401cb06613cd81
commit: 283e3271641ff0fd3067020f483db5b3857eca37 [6/6] FROMLIST: PM / Domains: use device's next wakeup to determine domain idle state
config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20261114/202611141445.oOrHlncb-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 16.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261114/202611141445.oOrHlncb-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611141445.oOrHlncb-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/base/power/domain_governor.c:259: warning: Function parameter or member 'now' not described in '_default_power_down_ok'
   drivers/base/power/domain_governor.c:402: warning: cannot understand function prototype: 'struct dev_power_governor pm_domain_always_on_gov = '


vim +259 drivers/base/power/domain_governor.c

221e9b58380abd Rafael J. Wysocki   2011-12-01  251  
268cd2ed3d4413 Krzysztof Kozlowski 2017-06-28  252  /**
283e3271641ff0 Lina Iyer           2020-06-26  253   * _default_power_down_ok - Default generic PM domain power off governor routine.
268cd2ed3d4413 Krzysztof Kozlowski 2017-06-28  254   * @pd: PM domain to check.
268cd2ed3d4413 Krzysztof Kozlowski 2017-06-28  255   *
268cd2ed3d4413 Krzysztof Kozlowski 2017-06-28  256   * This routine must be executed under the PM domain's lock.
268cd2ed3d4413 Krzysztof Kozlowski 2017-06-28  257   */
283e3271641ff0 Lina Iyer           2020-06-26  258  static bool _default_power_down_ok(struct dev_pm_domain *pd, ktime_t now)
fc5cbf0c94b6f7 Axel Haslam         2016-02-15 @259  {
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  260  	struct generic_pm_domain *genpd = pd_to_genpd(pd);
283e3271641ff0 Lina Iyer           2020-06-26  261  	int state_idx = genpd->state_count - 1;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  262  	struct gpd_link *link;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  263  
283e3271641ff0 Lina Iyer           2020-06-26  264  	/*
283e3271641ff0 Lina Iyer           2020-06-26  265  	 * Find the next wakeup from devices that can determine their own wakeup
283e3271641ff0 Lina Iyer           2020-06-26  266  	 * to find when the domain would wakeup and do it for every device down
283e3271641ff0 Lina Iyer           2020-06-26  267  	 * the hierarchy. It is not worth while to sleep if the state's residency
283e3271641ff0 Lina Iyer           2020-06-26  268  	 * cannot be met.
283e3271641ff0 Lina Iyer           2020-06-26  269  	 */
283e3271641ff0 Lina Iyer           2020-06-26  270  	update_domain_next_wakeup(genpd, now);
283e3271641ff0 Lina Iyer           2020-06-26  271  	if (genpd->next_wakeup != KTIME_MAX) {
283e3271641ff0 Lina Iyer           2020-06-26  272  		/* Let's find out the deepest domain idle state, the devices prefer */
283e3271641ff0 Lina Iyer           2020-06-26  273  		while (state_idx >= 0) {
283e3271641ff0 Lina Iyer           2020-06-26  274  			if (next_wakeup_allows_state(genpd, state_idx, now)) {
283e3271641ff0 Lina Iyer           2020-06-26  275  				genpd->max_off_time_changed = true;
283e3271641ff0 Lina Iyer           2020-06-26  276  				break;
283e3271641ff0 Lina Iyer           2020-06-26  277  			}
283e3271641ff0 Lina Iyer           2020-06-26  278  			state_idx--;
283e3271641ff0 Lina Iyer           2020-06-26  279  		}
283e3271641ff0 Lina Iyer           2020-06-26  280  
283e3271641ff0 Lina Iyer           2020-06-26  281  		if (state_idx < 0) {
283e3271641ff0 Lina Iyer           2020-06-26  282  			state_idx = 0;
283e3271641ff0 Lina Iyer           2020-06-26  283  			genpd->cached_power_down_ok = false;
283e3271641ff0 Lina Iyer           2020-06-26  284  			goto done;
283e3271641ff0 Lina Iyer           2020-06-26  285  		}
283e3271641ff0 Lina Iyer           2020-06-26  286  	}
283e3271641ff0 Lina Iyer           2020-06-26  287  
e94999688e3aa3 Ulf Hansson         2019-04-11  288  	if (!genpd->max_off_time_changed) {
e94999688e3aa3 Ulf Hansson         2019-04-11  289  		genpd->state_idx = genpd->cached_power_down_state_idx;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  290  		return genpd->cached_power_down_ok;
e94999688e3aa3 Ulf Hansson         2019-04-11  291  	}
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  292  
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  293  	/*
8d87ae48ced2df Kees Cook           2020-07-08  294  	 * We have to invalidate the cached results for the parents, so
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  295  	 * use the observation that default_power_down_ok() is not
8d87ae48ced2df Kees Cook           2020-07-08  296  	 * going to be called for any parent until this instance
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  297  	 * returns.
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  298  	 */
8d87ae48ced2df Kees Cook           2020-07-08  299  	list_for_each_entry(link, &genpd->child_links, child_node)
8d87ae48ced2df Kees Cook           2020-07-08  300  		link->parent->max_off_time_changed = true;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  301  
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  302  	genpd->max_off_time_ns = -1;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  303  	genpd->max_off_time_changed = false;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  304  	genpd->cached_power_down_ok = true;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  305  
283e3271641ff0 Lina Iyer           2020-06-26  306  	/*
283e3271641ff0 Lina Iyer           2020-06-26  307  	 * Find a state to power down to, starting from the state
283e3271641ff0 Lina Iyer           2020-06-26  308  	 * determined by the next wakeup.
283e3271641ff0 Lina Iyer           2020-06-26  309  	 */
283e3271641ff0 Lina Iyer           2020-06-26  310  	while (!__default_power_down_ok(pd, state_idx)) {
283e3271641ff0 Lina Iyer           2020-06-26  311  		if (state_idx == 0) {
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  312  			genpd->cached_power_down_ok = false;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  313  			break;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  314  		}
283e3271641ff0 Lina Iyer           2020-06-26  315  		state_idx--;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  316  	}
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  317  
283e3271641ff0 Lina Iyer           2020-06-26  318  done:
283e3271641ff0 Lina Iyer           2020-06-26  319  	genpd->state_idx = state_idx;
e94999688e3aa3 Ulf Hansson         2019-04-11  320  	genpd->cached_power_down_state_idx = genpd->state_idx;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  321  	return genpd->cached_power_down_ok;
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  322  }
fc5cbf0c94b6f7 Axel Haslam         2016-02-15  323  

:::::: The code at line 259 was first introduced by commit
:::::: fc5cbf0c94b6f7fd62fdddff892207290510945d PM / Domains: Support for multiple states

:::::: TO: Axel Haslam <ahaslam+renesas@baylibre.com>
:::::: CC: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-11-14  7:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-14  7:08 [android-common:android13-5.10-lts 6/6] drivers/base/power/domain_governor.c:259: warning: Function parameter or member 'now' not described in '_default_power_down_ok' kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.