tree f2b275db2e425b1441f9a1ab40a377a232c2bc38
parent 2664b25051f7ab96b22b199aa2f5ef6a949a4296
author Bryan O'Sullivan <bos@serpentine.com> 1137546005 -0800
committer Linus Torvalds <torvalds@g5.osdl.org> 1137547105 -0800

[PATCH] Fix sparse parse error in lppaca.h

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>
