• Arnd Bergmann's avatar
    vdso: Use CONFIG_PAGE_SHIFT in vdso/datapage.h · cffaefd1
    Arnd Bergmann authored
    Both the vdso rework and the CONFIG_PAGE_SHIFT changes were merged during
    the v6.9 merge window, so it is now possible to use CONFIG_PAGE_SHIFT
    instead of including asm/page.h in the vdso.
    
    This avoids the workaround for arm64 - commit 8b3843ae ("vdso/datapage:
    Quick fix - use asm/page-def.h for ARM64") and addresses a build warning
    for powerpc64:
    
    In file included from <built-in>:4:
    In file included from /home/arnd/arm-soc/arm-soc/lib/vdso/gettimeofday.c:5:
    In file included from ../include/vdso/datapage.h:25:
    arch/powerpc/include/asm/page.h:230:9: error: result of comparison of constant 13835058055282163712 with expression of type 'unsigned long' is always true [-Werror,-Wtautological-constant-out-of-range-compare]
      230 |         return __pa(kaddr) >> PAGE_SHIFT;
          |                ^~~~~~~~~~~
    arch/powerpc/include/asm/page.h:217:37: note: expanded from macro '__pa'
      217 |         VIRTUAL_WARN_ON((unsigned long)(x) < PAGE_OFFSET);              \
          |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
    arch/powerpc/include/asm/page.h:202:73: note: expanded from macro 'VIRTUAL_WARN_ON'
      202 | #define VIRTUAL_WARN_ON(x)      WARN_ON(IS_ENABLED(CONFIG_DEBUG_VIRTUAL) && (x))
          |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
    arch/powerpc/include/asm/bug.h:88:25: note: expanded from macro 'WARN_ON'
       88 |         int __ret_warn_on = !!(x);                              \
          |                                ^
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Reviewed-by: default avatarKees Cook <keescook@chromium.org>
    Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
    Link: https://lore.kernel.org/r/20240320180228.136371-1-arnd@kernel.org
    cffaefd1
gettimeofday.h 4.21 KB