[PATCH] Fix sparse parse error in lppaca.h
authorBryan O'Sullivan <bos@serpentine.com>
Wed, 18 Jan 2006 01:00:05 +0000 (17:00 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 18 Jan 2006 01:18:25 +0000 (17:18 -0800)
sparse can't parse a struct definition in include/asm-powerpc/lppaca.h,
even though gcc can accept it.  The form looks like this:

        struct __attribute__((whatever)) foo { };

An equivalent that both gcc and sparse can handle is

        struct foo { } __attribute__((whatever));

This is the only definition of this type in the tree, and fixing it is
easier than fixing sparse.

Signed-off-by: Bryan O'Sullivan <bos@serpentine.com>
[ Side note: fixing sparse wouldn't be hard, but the "attribute at the
  end" version is the canonical one, and the one that makes sense. So
  let's just fix the kernel instead. Luc Van Oostenryck already sent
  out a sparse patch to the sparse mailing list in case anybody cares.
               -- Linus ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
include/asm-powerpc/lppaca.h

index cd9f11f..4dc514a 100644 (file)
@@ -31,7 +31,7 @@
 
 /* The Hypervisor barfs if the lppaca crosses a page boundary.  A 1k
  * alignment is sufficient to prevent this */
-struct __attribute__((__aligned__(0x400))) lppaca {
+struct lppaca {
 //=============================================================================
 // CACHE_LINE_1 0x0000 - 0x007F Contains read-only data
 // NOTE: The xDynXyz fields are fields that will be dynamically changed by
@@ -129,7 +129,7 @@ struct __attribute__((__aligned__(0x400))) lppaca {
 // CACHE_LINE_4-5 0x0100 - 0x01FF Contains PMC interrupt data
 //=============================================================================
        u8      pmc_save_area[256];     // PMC interrupt Area           x00-xFF
-};
+} __attribute__((__aligned__(0x400)));
 
 extern struct lppaca lppaca[];