All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: steven@liquorix.net
Cc: oe-kbuild-all@lists.linux.dev
Subject: [zen:6.7/prjc 294/431] kernel/sched/alt_core.c:4421:3: error: call to undeclared function 'hrtick_start'; ISO C99 and later do not support implicit function declarations
Date: Mon, 29 Jan 2024 09:45:32 +0800	[thread overview]
Message-ID: <202401290939.dGYMLyML-lkp@intel.com> (raw)

tree:   https://github.com/zen-kernel/zen-kernel 6.7/prjc
head:   31561c8ccf8a088f0c1ccefa592b221423781ce2
commit: 8ba0ab052a7464503f11589aa0248012e7c8ee16 [294/431] sched/alt: [Sync] 95c74abe404d io_uring: move to separate directory
config: um-allnoconfig (https://download.01.org/0day-ci/archive/20240129/202401290939.dGYMLyML-lkp@intel.com/config)
compiler: clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240129/202401290939.dGYMLyML-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/202401290939.dGYMLyML-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from kernel/sched/alt_core.c:16:
   In file included from include/linux/sched/isolation.h:6:
   In file included from include/linux/tick.h:8:
   In file included from include/linux/clockchips.h:14:
   In file included from include/linux/clocksource.h:22:
   In file included from arch/um/include/asm/io.h:24:
   include/asm-generic/io.h:547:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     547 |         val = __raw_readb(PCI_IOBASE + addr);
         |                           ~~~~~~~~~~ ^
   include/asm-generic/io.h:560:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     560 |         val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
         |                                                         ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:37:51: note: expanded from macro '__le16_to_cpu'
      37 | #define __le16_to_cpu(x) ((__force __u16)(__le16)(x))
         |                                                   ^
   In file included from kernel/sched/alt_core.c:16:
   In file included from include/linux/sched/isolation.h:6:
   In file included from include/linux/tick.h:8:
   In file included from include/linux/clockchips.h:14:
   In file included from include/linux/clocksource.h:22:
   In file included from arch/um/include/asm/io.h:24:
   include/asm-generic/io.h:573:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     573 |         val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
         |                                                         ~~~~~~~~~~ ^
   include/uapi/linux/byteorder/little_endian.h:35:51: note: expanded from macro '__le32_to_cpu'
      35 | #define __le32_to_cpu(x) ((__force __u32)(__le32)(x))
         |                                                   ^
   In file included from kernel/sched/alt_core.c:16:
   In file included from include/linux/sched/isolation.h:6:
   In file included from include/linux/tick.h:8:
   In file included from include/linux/clockchips.h:14:
   In file included from include/linux/clocksource.h:22:
   In file included from arch/um/include/asm/io.h:24:
   include/asm-generic/io.h:584:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     584 |         __raw_writeb(value, PCI_IOBASE + addr);
         |                             ~~~~~~~~~~ ^
   include/asm-generic/io.h:594:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     594 |         __raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
         |                                                       ~~~~~~~~~~ ^
   include/asm-generic/io.h:604:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     604 |         __raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
         |                                                       ~~~~~~~~~~ ^
   include/asm-generic/io.h:692:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     692 |         readsb(PCI_IOBASE + addr, buffer, count);
         |                ~~~~~~~~~~ ^
   include/asm-generic/io.h:700:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     700 |         readsw(PCI_IOBASE + addr, buffer, count);
         |                ~~~~~~~~~~ ^
   include/asm-generic/io.h:708:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     708 |         readsl(PCI_IOBASE + addr, buffer, count);
         |                ~~~~~~~~~~ ^
   include/asm-generic/io.h:717:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     717 |         writesb(PCI_IOBASE + addr, buffer, count);
         |                 ~~~~~~~~~~ ^
   include/asm-generic/io.h:726:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     726 |         writesw(PCI_IOBASE + addr, buffer, count);
         |                 ~~~~~~~~~~ ^
   include/asm-generic/io.h:735:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
     735 |         writesl(PCI_IOBASE + addr, buffer, count);
         |                 ~~~~~~~~~~ ^
   In file included from kernel/sched/alt_core.c:42:
   In file included from kernel/sched/sched.h:9:
   kernel/sched/alt_sched.h:481:14: warning: declaration of 'struct cpuidle_state' will not be visible outside of this function [-Wvisibility]
     481 |                                   struct cpuidle_state *idle_state)
         |                                          ^
   kernel/sched/alt_core.c:578:14: error: call to undeclared function 'sched_clock_cpu'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     578 |         s64 delta = sched_clock_cpu(cpu_of(rq)) - rq->clock;
         |                     ^
   kernel/sched/alt_core.c:966:6: warning: no previous prototype for function 'resched_curr' [-Wmissing-prototypes]
     966 | void resched_curr(struct rq *rq)
         |      ^
   kernel/sched/alt_core.c:966:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     966 | void resched_curr(struct rq *rq)
         | ^
         | static 
   kernel/sched/alt_core.c:989:6: warning: no previous prototype for function 'resched_cpu' [-Wmissing-prototypes]
     989 | void resched_cpu(int cpu)
         |      ^
   kernel/sched/alt_core.c:989:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
     989 | void resched_cpu(int cpu)
         | ^
         | static 
   kernel/sched/alt_core.c:3894:2: error: call to undeclared function 'sched_clock_tick'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    3894 |         sched_clock_tick();
         |         ^
   kernel/sched/alt_core.c:3894:2: note: did you mean 'scheduler_tick'?
   kernel/sched/alt_core.c:3887:6: note: 'scheduler_tick' declared here
    3887 | void scheduler_tick(void)
         |      ^
    3888 | {
    3889 |         int cpu __maybe_unused = smp_processor_id();
    3890 |         struct rq *rq = cpu_rq(cpu);
    3891 |         u64 resched_latency;
    3892 | 
    3893 |         arch_scale_freq_tick();
    3894 |         sched_clock_tick();
         |         ~~~~~~~~~~~~~~~~
         |         scheduler_tick
>> kernel/sched/alt_core.c:4421:3: error: call to undeclared function 'hrtick_start'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    4421 |                 hrtick_start(rq, next->time_slice);
         |                 ^
   kernel/sched/alt_core.c:4421:3: note: did you mean 'hrtimer_start'?
   include/linux/hrtimer.h:415:20: note: 'hrtimer_start' declared here
     415 | static inline void hrtimer_start(struct hrtimer *timer, ktime_t tim,
         |                    ^
   kernel/sched/alt_core.c:4440:2: error: call to undeclared function 'hrtick_start'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    4440 |         hrtick_start(rq, next->time_slice);
         |         ^
   kernel/sched/alt_core.c:4558:21: error: use of undeclared identifier 'PF_FROZEN'
    4558 |                                 !(prev->flags & PF_FROZEN);
         |                                                 ^
   kernel/sched/alt_core.c:4674:6: error: call to undeclared function 'tsk_is_pi_blocked'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    4674 |         if (tsk_is_pi_blocked(tsk))
         |             ^
   kernel/sched/alt_core.c:5357:3: error: call to undeclared function 'cpuset_read_lock'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    5357 |                 cpuset_read_lock();
         |                 ^
   kernel/sched/alt_core.c:5357:3: note: did you mean 'cpus_read_lock'?
   include/linux/cpu.h:148:20: note: 'cpus_read_lock' declared here
     148 | static inline void cpus_read_lock(void) { }
         |                    ^
   kernel/sched/alt_core.c:5405:4: error: call to undeclared function 'cpuset_read_unlock'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    5405 |                         cpuset_read_unlock();
         |                         ^
   kernel/sched/alt_core.c:5437:3: error: call to undeclared function 'cpuset_read_unlock'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    5437 |                 cpuset_read_unlock();
         |                 ^
   kernel/sched/alt_core.c:5451:3: error: call to undeclared function 'cpuset_read_unlock'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    5451 |                 cpuset_read_unlock();
         |                 ^
   kernel/sched/alt_core.c:7238:13: warning: no previous prototype for function 'sched_init_smp' [-Wmissing-prototypes]
    7238 | void __init sched_init_smp(void)
         |             ^
   kernel/sched/alt_core.c:7238:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7238 | void __init sched_init_smp(void)
         | ^
         | static 
   kernel/sched/alt_core.c:7278:13: warning: no previous prototype for function 'sched_init' [-Wmissing-prototypes]
    7278 | void __init sched_init(void)
         |             ^
   kernel/sched/alt_core.c:7278:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7278 | void __init sched_init(void)
         | ^
         | static 
   kernel/sched/alt_core.c:7633:20: warning: no previous prototype for function 'sched_create_group' [-Wmissing-prototypes]
    7633 | struct task_group *sched_create_group(struct task_group *parent)
         |                    ^
   kernel/sched/alt_core.c:7633:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7633 | struct task_group *sched_create_group(struct task_group *parent)
         | ^
         | static 
   kernel/sched/alt_core.c:7644:6: warning: no previous prototype for function 'sched_online_group' [-Wmissing-prototypes]
    7644 | void sched_online_group(struct task_group *tg, struct task_group *parent)
         |      ^
   kernel/sched/alt_core.c:7644:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7644 | void sched_online_group(struct task_group *tg, struct task_group *parent)
         | ^
         | static 
   kernel/sched/alt_core.c:7655:6: warning: no previous prototype for function 'sched_destroy_group' [-Wmissing-prototypes]
    7655 | void sched_destroy_group(struct task_group *tg)
         |      ^
   kernel/sched/alt_core.c:7655:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7655 | void sched_destroy_group(struct task_group *tg)
         | ^
         | static 
   kernel/sched/alt_core.c:7661:6: warning: no previous prototype for function 'sched_release_group' [-Wmissing-prototypes]
    7661 | void sched_release_group(struct task_group *tg)
         |      ^
   kernel/sched/alt_core.c:7661:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7661 | void sched_release_group(struct task_group *tg)
         | ^
         | static 
   kernel/sched/alt_core.c:7731:5: warning: no previous prototype for function 'sched_group_set_shares' [-Wmissing-prototypes]
    7731 | int sched_group_set_shares(struct task_group *tg, unsigned long shares)
         |     ^
   kernel/sched/alt_core.c:7731:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
    7731 | int sched_group_set_shares(struct task_group *tg, unsigned long shares)
         | ^
         | static 
   22 warnings and 10 errors generated.


vim +/hrtick_start +4421 kernel/sched/alt_core.c

fbfe8ff6c6b93b Alfred Chen 2019-08-19  4399  
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4400  static inline struct task_struct *
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4401  choose_next_task(struct rq *rq, int cpu, struct task_struct *prev)
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4402  {
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4403  	struct task_struct *next;
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4404  
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4405  	if (unlikely(rq->skip)) {
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4406  		next = rq_runnable_task(rq);
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4407  		if (next == rq->idle) {
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4408  #ifdef	CONFIG_SMP
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4409  			if (!take_other_rq_tasks(rq, cpu)) {
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4410  #endif
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4411  				rq->skip = NULL;
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4412  				schedstat_inc(rq->sched_goidle);
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4413  				return next;
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4414  #ifdef	CONFIG_SMP
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4415  			}
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4416  			next = rq_runnable_task(rq);
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4417  #endif
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4418  		}
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4419  		rq->skip = NULL;
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4420  #ifdef CONFIG_HIGH_RES_TIMERS
fbfe8ff6c6b93b Alfred Chen 2019-08-19 @4421  		hrtick_start(rq, next->time_slice);
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4422  #endif
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4423  		return next;
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4424  	}
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4425  
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4426  	next = sched_rq_first_task(rq);
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4427  	if (next == rq->idle) {
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4428  #ifdef	CONFIG_SMP
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4429  		if (!take_other_rq_tasks(rq, cpu)) {
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4430  #endif
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4431  			schedstat_inc(rq->sched_goidle);
c05e232dfa21b5 Alfred Chen 2020-08-09  4432  			/*printk(KERN_INFO "sched: choose_next_task(%d) idle %px\n", cpu, next);*/
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4433  			return next;
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4434  #ifdef	CONFIG_SMP
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4435  		}
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4436  		next = sched_rq_first_task(rq);
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4437  #endif
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4438  	}
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4439  #ifdef CONFIG_HIGH_RES_TIMERS
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4440  	hrtick_start(rq, next->time_slice);
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4441  #endif
c05e232dfa21b5 Alfred Chen 2020-08-09  4442  	/*printk(KERN_INFO "sched: choose_next_task(%d) next %px\n", cpu,
c05e232dfa21b5 Alfred Chen 2020-08-09  4443  	 * next);*/
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4444  	return next;
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4445  }
fbfe8ff6c6b93b Alfred Chen 2019-08-19  4446  

:::::: The code at line 4421 was first introduced by commit
:::::: fbfe8ff6c6b93b06975504d6aed3ebf3c0a6c25a Project C v5.7.5-r2

:::::: TO: Alfred Chen <cchalpha@gmail.com>
:::::: CC: Alfred Chen <cchalpha@gmail.com>

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

                 reply	other threads:[~2024-01-29  1:45 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202401290939.dGYMLyML-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=steven@liquorix.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.