[lkml]   [2022]   [Apr]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[crng-random:jd/not-zero-entropy 3/12] include/linux/timex.h:83:49: error: implicit declaration of function 'sched_clock'
tree:   git:// jd/not-zero-entropy
head: efec3e2057963ad20223fa50a657b3ca9314ed45
commit: d921ec2a978ab8566577c18abfe20960dd0c6477 [3/12] random: use sched_clock() for random_get_entropy() if no get_cycles()
config: powerpc-allnoconfig (
compiler: powerpc-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add crng-random git://
git fetch --no-tags crng-random jd/not-zero-entropy
git checkout d921ec2a978ab8566577c18abfe20960dd0c6477
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=powerpc SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <>

All errors (new ones prefixed by >>):

In file included from include/linux/time32.h:13,
from include/linux/time.h:60,
from include/linux/jiffies.h:10,
from lib/random32.c:38:
lib/random32.c: In function 'prandom_init_early':
>> include/linux/timex.h:83:49: error: implicit declaration of function 'sched_clock' [-Werror=implicit-function-declaration]
83 | #define random_get_entropy() ((unsigned long)sched_clock())
| ^~~~~~~~~~~
lib/random32.c:469:22: note: in expansion of macro 'random_get_entropy'
469 | v1 = random_get_entropy();
| ^~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors

vim +/sched_clock +83 include/linux/timex.h

67 #ifndef random_get_entropy
68 /*
69 * The random_get_entropy() function is used by the /dev/random driver
70 * in order to extract entropy via the relative unpredictability of
71 * when an interrupt takes places versus a high speed, fine-grained
72 * timing source or cycle counter. Since it will be occurred on every
73 * single interrupt, it must have a very low cost/overhead.
74 *
75 * By default we use get_cycles() for this purpose, but individual
76 * architectures may override this in their asm/timex.h header file.
77 * If a given arch does not have get_cycles(), then we fallback to
78 * using sched_clock().
79 */
80 #ifdef get_cycles
81 #define random_get_entropy() ((unsigned long)get_cycles())
82 #else
> 83 #define random_get_entropy() ((unsigned long)sched_clock())
84 #endif
85 #endif

0-DAY CI Kernel Test Service

 \ /
  Last update: 2022-04-10 19:27    [W:0.022 / U:7.944 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site