2.4.24 asm/timex.h

From: Eyal Lebedinsky (eyal_at_eyal.emu.id.au)
Date: 01/06/04

  • Next message: Eric W. Biederman: "Re: PCI memory allocation bug with CONFIG_HIGHMEM"
    Date:	Wed, 07 Jan 2004 09:49:14 +1100
    To: list linux-kernel <linux-kernel@vger.kernel.org>, valgrind-developers list <valgrind-developers@lists.sourceforge.net>
    
    

    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/
    

  • Next message: Eric W. Biederman: "Re: PCI memory allocation bug with CONFIG_HIGHMEM"

    Relevant Pages