llvm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [qais-yousef:uclamp-max-aggregation 11/13] kernel/sched/core.c:4877:7: error: call to undeclared function 'ignore_task_perf'; ISO C99 and later do not support implicit function declarations
@ 2024-04-07 17:35 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-04-07 17:35 UTC (permalink / raw)
  To: Qais Yousef; +Cc: llvm, oe-kbuild-all

tree:   https://github.com/qais-yousef/linux uclamp-max-aggregation
head:   3173a853e6c16e1dcb09d392ef1e9b5a06448696
commit: e3d0c229d3ce487080291ad232b68805d3c9f830 [11/13] sched/schedutil: Ignore perf requests for short running tasks
config: arm-allnoconfig (https://download.01.org/0day-ci/archive/20240408/202404080137.MLcZDEhs-lkp@intel.com/config)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project 233c030dcb18880d5f0a749573f11f96f35e76b8)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240408/202404080137.MLcZDEhs-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/202404080137.MLcZDEhs-lkp@intel.com/

Note: the qais-yousef/uclamp-max-aggregation HEAD 3173a853e6c16e1dcb09d392ef1e9b5a06448696 builds fine.
      It only hurts bisectability.

All errors (new ones prefixed by >>):

   In file included from kernel/sched/core.c:9:
   In file included from include/linux/highmem.h:8:
   In file included from include/linux/cacheflush.h:5:
   In file included from arch/arm/include/asm/cacheflush.h:10:
   In file included from include/linux/mm.h:2208:
   include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
     522 |         return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
         |                               ~~~~~~~~~~~ ^ ~~~
   kernel/sched/core.c:4869:24: error: no member named 'decayed' in 'struct cfs_rq'
    4869 |                 if (unlikely(rq->cfs.decayed)) {
         |                              ~~~~~~~ ^
   include/linux/compiler.h:77:42: note: expanded from macro 'unlikely'
      77 | # define unlikely(x)    __builtin_expect(!!(x), 0)
         |                                             ^
   kernel/sched/core.c:4870:12: error: no member named 'decayed' in 'struct cfs_rq'
    4870 |                         rq->cfs.decayed = false;
         |                         ~~~~~~~ ^
>> kernel/sched/core.c:4877:7: error: call to undeclared function 'ignore_task_perf'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    4877 |                 if (ignore_task_perf(current))
         |                     ^
   kernel/sched/core.c:4883:21: error: no member named 'avg' in 'struct cfs_rq'
    4883 |                 rq_util = rq->cfs.avg.util_avg;
         |                           ~~~~~~~ ^
   1 warning and 4 errors generated.


vim +/ignore_task_perf +4877 kernel/sched/core.c

  4850	
  4851	static inline void update_cpufreq_ctx_switch(struct rq *rq)
  4852	{
  4853		if (unlikely(current->sched_class == &stop_sched_class))
  4854			return;
  4855	
  4856		if (unlikely(current->sched_class == &idle_sched_class))
  4857			return;
  4858	
  4859		if (unlikely(task_has_idle_policy(current)))
  4860			return;
  4861	
  4862		if (likely(fair_policy(current->policy))) {
  4863			unsigned long uclamp_min, uclamp_max;
  4864			unsigned long rq_util;
  4865	
  4866			/*
  4867			 * Allow cpufreq updates once for every update_load_avg() decay.
  4868			 */
  4869			if (unlikely(rq->cfs.decayed)) {
  4870				rq->cfs.decayed = false;
  4871				goto force_update;
  4872			}
  4873	
  4874			if (unlikely(current->in_iowait))
  4875				goto force_update;
  4876	
> 4877			if (ignore_task_perf(current))
  4878				return;
  4879	
  4880			/* Force an update if perf hints are required to be applied */
  4881			uclamp_min = uclamp_eff_value(current, UCLAMP_MIN);
  4882			uclamp_max = uclamp_eff_value(current, UCLAMP_MAX);
  4883			rq_util = rq->cfs.avg.util_avg;
  4884	
  4885			if (uclamp_min > rq_util || uclamp_max < rq_util)
  4886				goto force_update;
  4887	
  4888			return;
  4889		}
  4890	
  4891		/* RT and DL should always send a freq update */
  4892	
  4893		/* XXX ignore updates for sugov worker thread */
  4894	
  4895	force_update:
  4896	
  4897		/*
  4898		 * Request freq update after __balance_callbacks to take into account
  4899		 * any changes to rq.
  4900		 */
  4901		cpufreq_update_util(rq, current->in_iowait ? SCHED_CPUFREQ_IOWAIT : 0);
  4902	}
  4903	

-- 
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:[~2024-04-07 17:36 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-07 17:35 [qais-yousef:uclamp-max-aggregation 11/13] kernel/sched/core.c:4877:7: error: call to undeclared function 'ignore_task_perf'; ISO C99 and later do not support implicit function declarations kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).