lkml.org 
[lkml]   [2003]   [Nov]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] 2.4.21-rc1: byteorder.h breaks with __STRICT_ANSI__ defined (trivial)
    On Thu, 06 Nov 2003 22:29:12 +0200
    Martin Schlemmer <azarah@gentoo.org> wrote:

    > If you look at asm/types.h, u64 is kernel only namespace, so in
    > theory that code will not be in userspace.

    Replace u64 with __u64 in my examples, the point still stances.


    > #else
    > <code without __u64>
    > ..
    > #endif

    This may not be possible. You cannot account for every internal
    thing that kernel header routines might need to do or work with.
    Many structures, which the userspace can't control the layout
    of etc., makes use of the __u64 type, and we can't just turn off
    all those things just because -ansi was specified.

    We're talking about things like structures that define the userspace
    ABI into the kernel, they use things like __u64. So what effectively
    this means is that when you compile with -ansi you are effectively
    turning off access to several userspace ABIs into the kernel.

    And this isn't going to be only some obscrure feature like some
    CDROM ioctl or whatever, things like "struct stat" use the 64-bit types
    either directly or indirectly.
    -
    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/

    \
     
     \ /
      Last update: 2005-03-22 13:58    [W:0.022 / U:29.924 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site