Messages in this thread Patch in this message | | | Date | Wed, 07 Jan 2004 09:49:14 +1100 | From | Eyal Lebedinsky <> | Subject | 2.4.24 asm/timex.h |
| |
This is part of the current patch:
--- linux-2.4.24/include/asm-i386/timex.h 2002-11-28 23:53:15.000000000 +0000 +++ linux-2.4.25-pre4/include/asm-i386/timex.h 2004-01-06 12:43:33.000000000 +0000 @@ -40,14 +40,10 @@ static inline cycles_t get_cycles (void) { -#ifndef CONFIG_X86_TSC - return 0; -#else - unsigned long long ret; - - rdtscll(ret); + unsigned long long ret = 0; + if(cpu_has_tsc) + rdtscll(ret); return ret; -#endif } extern unsigned long cpu_khz; Building valgrind, it includes <linux/timex.h> and then tries to use the adjtimex syscall. This ends up with an undefined error for 'cpu_has_tsc'. This did not happen with earlier kernels.
In file included from /usr/include/linux/timex.h:152, from vg_unsafe.h:66, from vg_syscalls.c:35: /usr/include/asm/timex.h: In function `get_cycles': /usr/include/asm/timex.h:44: `cpu_has_tsc' undeclared (first use in this function)
Is this a problem with 2.4-pre or is valgrind inappropriately messing with kernel headers?
For the moment I hacked it badly in coregrind/vg_unsafe.h: #define cpu_has_tsc 1 #include <linux/timex.h>
-- Eyal Lebedinsky (eyal@eyal.emu.id.au) <http://samba.org/eyal/> - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |