`make dep' with clock skew detected loops forever
Noticed something on a fresh FC16 based install on a test server in our lab. Autotest by default runs make dep and it seems the clock is pretty badly skewed on this server, resulting in an infinite loop of:
01:09:37 DEBUG| Running 'make dep' 01:09:38 DEBUG| [stderr] make: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112143 s in the future 01:09:38 DEBUG| [stderr] make[1]: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112143 s in the future 01:09:38 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112143 s in the future 01:09:38 DEBUG| [stdout] HOSTCC scripts/basic/fixdep 01:09:38 DEBUG| [stderr] make[2]: warning: Clock skew detected. Your build may be incomplete. 01:09:38 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112143 s in the future 01:09:38 DEBUG| [stdout] HOSTCC scripts/kconfig/conf.o 01:09:38 DEBUG| [stdout] SHIPPED scripts/kconfig/zconf.tab.c 01:09:38 DEBUG| [stdout] SHIPPED scripts/kconfig/zconf.lex.c 01:09:38 DEBUG| [stdout] SHIPPED scripts/kconfig/zconf.hash.c 01:09:39 DEBUG| [stdout] HOSTCC scripts/kconfig/zconf.tab.o 01:09:39 DEBUG| [stdout] HOSTLD scripts/kconfig/conf 01:09:39 DEBUG| [stdout] scripts/kconfig/conf --silentoldconfig Kconfig 01:09:39 DEBUG| [stderr] make[2]: warning: Clock skew detected. Your build may be incomplete. 01:09:39 DEBUG| [stderr] make[1]: warning: Clock skew detected. Your build may be incomplete. 01:09:39 DEBUG| [stderr] make: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112142 s in the future 01:09:39 DEBUG| [stderr] make[1]: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112142 s in the future 01:09:39 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112142 s in the future 01:09:39 DEBUG| [stdout] HOSTCC scripts/basic/fixdep 01:09:40 DEBUG| [stderr] make[2]: warning: Clock skew detected. Your build may be incomplete. 01:09:40 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112141 s in the future 01:09:40 DEBUG| [stdout] HOSTCC scripts/kconfig/conf.o 01:09:40 DEBUG| [stdout] SHIPPED scripts/kconfig/zconf.tab.c 01:09:40 DEBUG| [stdout] SHIPPED scripts/kconfig/zconf.lex.c 01:09:40 DEBUG| [stdout] SHIPPED scripts/kconfig/zconf.hash.c 01:09:40 DEBUG| [stdout] HOSTCC scripts/kconfig/zconf.tab.o 01:09:40 DEBUG| [stdout] HOSTLD scripts/kconfig/conf 01:09:40 DEBUG| [stdout] scripts/kconfig/conf --silentoldconfig Kconfig
Anyone know why that happens? Obvious fixes are to either not run make dep or to install an NTP client, and I can do that, but figured I'd report the above.
Thanks,
Nish
Signature · 2 lines
Nishanth Aravamudan <[email protected]> IBM Linux Technology Center
Quoted 11 lines · Nishanth Aravamudan
Noticed something on a fresh FC16 based install on a test server in our lab. Autotest by default runs
make depand it seems the clock is pretty badly skewed on this server, resulting in an infinite loop of:01:09:37 DEBUG| Running 'make dep' 01:09:38 DEBUG| [stderr] make: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112143 s in the future 01:09:38 DEBUG| [stderr] make[1]: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112143 s in the future 01:09:38 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112143 s in the future 01:09:38 DEBUG| [stdout] HOSTCC scripts/basic/fixdep 01:09:38 DEBUG| [stderr] make[2]: warning: Clock skew detected. Your build may be incomplete. 01:09:38 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112143 s in the future
[...]
Quoted 1 line
Anyone know why that happens?
Because the system time time is several hours, if not days, behind, so generated files are older than source files and thus dependencies cannot work. You need to fix the system time to be at least ahead of the mtime of the sources.
Quoted 1 line
Obvious fixes are to either not run
make dep
I don't think this is limited to make dep.
Michal
Quoted 12 lines · Michal Marek
Quoted 11 lines · Nishanth Aravamudan
Noticed something on a fresh FC16 based install on a test server in our lab. Autotest by default runs
make depand it seems the clock is pretty badly skewed on this server, resulting in an infinite loop of:01:09:37 DEBUG| Running 'make dep' 01:09:38 DEBUG| [stderr] make: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112143 s in the future 01:09:38 DEBUG| [stderr] make[1]: Warning: File `/usr/local/autotest/tmp/build/linux/arch/powerpc/Makefile' has modification time 112143 s in the future 01:09:38 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112143 s in the future 01:09:38 DEBUG| [stdout] HOSTCC scripts/basic/fixdep 01:09:38 DEBUG| [stderr] make[2]: warning: Clock skew detected. Your build may be incomplete. 01:09:38 DEBUG| [stderr] make[2]: Warning: File `scripts/Makefile.host' has modification time 112143 s in the future
Quoted 8 lines
[...]
Quoted 1 line
Anyone know why that happens?
Because the system time time is several hours, if not days, behind, so generated files are older than source files and thus dependencies cannot work. You need to fix the system time to be at least ahead of the mtime of the sources.
That makes sense.
Quoted 3 lines
Quoted 1 line
Obvious fixes are to either not run
make depI don't think this is limited to make dep.
Well, killing make dep, which was just looping, and executing make -j16 vmlinux did seem to complete. But it was a while ago and maybe I'm mis-remembering.
Ah well, I've fixed up my testing scripts to ensure an ntp run is performed before trying to build.
Thanks,
Nish
Signature · 2 lines
Nishanth Aravamudan <[email protected]> IBM Linux Technology Center