tree: https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux.git release head: 47867cc6f3cc2df53cb75eb105c08515cd7e1874 commit: 4fef2dedbdf5565eeb1affd053f714efbad9dec8 [1/7] x86: Calculate MHz using APERF/MPERF for cpuinfo and scaling_cur_freq config: i386-tinyconfig (attached as .config) reproduce: git checkout 4fef2dedbdf5565eeb1affd053f714efbad9dec8 # save the attached .config to linux build tree make ARCH=i386 Note: the acpi/release HEAD 47867cc6f3cc2df53cb75eb105c08515cd7e1874 builds fine. It only hurts bisectibility. All errors (new ones prefixed by >>): arch/x86/kernel/cpu/aperfmperf.c: In function 'aperfmperf_snapshot_khz': >> arch/x86/kernel/cpu/aperfmperf.c:38:6: error: implicit declaration of function 'time_before' [-Werror=implicit-function-declaration] if (time_before(jiffies, s->jiffies + HZ/10)) ^ >> arch/x86/kernel/cpu/aperfmperf.c:38:18: error: 'jiffies' undeclared (first use in this function) if (time_before(jiffies, s->jiffies + HZ/10)) ^ arch/x86/kernel/cpu/aperfmperf.c:38:18: note: each undeclared identifier is reported only once for each function it appears in >> arch/x86/kernel/cpu/aperfmperf.c:38:40: error: 'HZ' undeclared (first use in this function) if (time_before(jiffies, s->jiffies + HZ/10)) ^ >> arch/x86/kernel/cpu/aperfmperf.c:54:14: error: 'cpu_khz' undeclared (first use in this function) numerator = cpu_khz * aperf_delta; ^ arch/x86/kernel/cpu/aperfmperf.c: In function 'aperfmperf_khz_on_cpu': arch/x86/kernel/cpu/aperfmperf.c:66:7: error: 'cpu_khz' undeclared (first use in this function) if (!cpu_khz) ^ cc1: some warnings being treated as errors vim +/time_before +38 arch/x86/kernel/cpu/aperfmperf.c 32 unsigned long long aperf, aperf_delta; 33 unsigned long long mperf, mperf_delta; 34 unsigned long long numerator; 35 struct aperfmperf_sample *s = &get_cpu_var(samples); 36 37 /* Cache KHz for 100 ms */ > 38 if (time_before(jiffies, s->jiffies + HZ/10)) 39 goto out; 40 41 rdmsrl(MSR_IA32_APERF, aperf); 42 rdmsrl(MSR_IA32_MPERF, mperf); 43 44 aperf_delta = aperf - s->aperf; 45 mperf_delta = mperf - s->mperf; 46 47 /* 48 * There is no architectural guarantee that MPERF 49 * increments faster than we can read it. 50 */ 51 if (mperf_delta == 0) 52 goto out; 53 > 54 numerator = cpu_khz * aperf_delta; 55 s->khz = div64_u64(numerator, mperf_delta); 56 s->jiffies = jiffies; 57 s->aperf = aperf; --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: Binary data