Le 10/04/2026 à 14:19, Thomas Gleixner a écrit :
Most architectures define cycles_t as unsigned long execpt:

  - x86 requires it to be 64-bit independent of the 32-bit/64-bit build.

  - parisc and mips define it as unsigned int

    parisc has no real reason to do so as there are only a few usage sites
    which either expand it to a 64-bit value or utilize only the lower
    32bits.

    mips has no real requirement either.

Move the typedef to types.h and provide a config switch to enforce the
64-bit type for x86.

Signed-off-by: Thomas Gleixner <[email protected]>
---
  arch/Kconfig                       |    4 ++++
  arch/alpha/include/asm/timex.h     |    3 ---
  arch/arm/include/asm/timex.h       |    1 -
  arch/loongarch/include/asm/timex.h |    2 --
  arch/m68k/include/asm/timex.h      |    2 --
  arch/mips/include/asm/timex.h      |    2 --
  arch/nios2/include/asm/timex.h     |    2 --
  arch/parisc/include/asm/timex.h    |    2 --
  arch/powerpc/include/asm/timex.h   |    4 +---
  arch/riscv/include/asm/timex.h     |    2 --
  arch/s390/include/asm/timex.h      |    2 --
  arch/sparc/include/asm/timex_64.h  |    1 -
  arch/x86/Kconfig                   |    1 +
  arch/x86/include/asm/tsc.h         |    2 --
  include/asm-generic/timex.h        |    1 -
  include/linux/types.h              |    6 ++++++
  16 files changed, 12 insertions(+), 25 deletions(-)

--- a/arch/powerpc/include/asm/timex.h
+++ b/arch/powerpc/include/asm/timex.h
@@ -11,9 +11,7 @@
  #include <asm/cputable.h>
  #include <asm/vdso/timebase.h>
-typedef unsigned long cycles_t;
-
-static inline cycles_t get_cycles(void)
+ostatic inline cycles_t get_cycles(void)

What is 'ostatic' ?

  {
        return mftb();
  }

Reply via email to