[lkml]   [2011]   [Jun]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: {PATCH] fix __packed in exported kernel headers
    On Fri, Jun 24, 2011 at 12:33, Arnd Bergmann wrote:
    > On Friday 24 June 2011, Markus Trippelsdorf wrote:
    >> warns about using __attribute__((packed)) in kernel
    >> headers: "__packed is preferred over __attribute__((packed))". If one
    >> follows that advice it could cause problems in the exported header
    >> files, because the outside world doesn't know about this shortcut.
    >> For example busybox will fail to compile:
    >>  CC      miscutils/ubi_attach_detach.o
    >>  In file included from miscutils/ubi_attach_detach.c:27:0:
    >>  /usr/include/mtd/ubi-user.h:330:3: error: conflicting types for ‘__packed’
    >>  /usr/include/mtd/ubi-user.h:314:3: note: previous declaration of ‘__packed’ was here
    >> ...
    >> Fix the problem by substituting __packed with __attribute__((packed)) in
    >> the script.
    > No objections to the patch, but it should probably be noted that user
    > visible data structures should ideally not have any attributes, because
    > that requires building all applictions using that interface with gcc.
    > We generally try to add no such requirements on user applications.

    the only real solution there is to export the compiler.h headers too

    plus, many compilers nowadays (like icc/llvm) tend to include support
    for common gcc attributes ...
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2011-06-24 19:03    [W:0.024 / U:69.944 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site