[lkml]   [2009]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 6/6] perf_counter: tools: Makefile tweaks for 64-bit powerpc
    Ingo Molnar writes:

    > ah, it does this:
    > /*
    > * This is here because we used to use l64 for 64bit powerpc
    > * and we don't want to impact user mode with our change to ll64
    > * in the kernel.
    > */
    > #if defined(__powerpc64__) && !defined(__KERNEL__)
    > # include <asm-generic/int-l64.h>
    > #else
    > # include <asm-generic/int-ll64.h>
    > #endif
    > That's crappy really.

    We were concerned that changing the userland-visible type of __u64
    from unsigned long to unsigned long long, etc., would be breaking the
    ABI, even if only in a small way - I thought it could possibly change
    C++ mangled function names, for instance, and it would cause fresh
    compile warnings on existing user code that prints __u64 with %lx,
    which has always been the correct thing to do on ppc64.

    A counter-argument would be, I guess, that __u64 et al. are purely for
    use in describing the kernel/user interface, so we have a little more
    latitude than with the type of e.g. u_int64_t. I dunno. I don't
    recall getting much of an answer from the glibc guys about what they
    thought of the idea of changing it.

    Anyway, of the 64-bit architectures, alpha, ia64, and mips64 also have
    __u64 as unsigned long in userspace, so this issue will still crop up
    even if we change it on powerpc.


     \ /
      Last update: 2009-06-17 14:31    [W:0.027 / U:24.312 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site