diff --git a/patches/linux/3.0.8/100-headers_install-fix-__packed-in-exported-kernel-head.patch b/patches/linux/3.0.8/100-headers_install-fix-__packed-in-exported-kernel-head.patch new file mode 100644 index 00000000..8c187c57 --- /dev/null +++ b/patches/linux/3.0.8/100-headers_install-fix-__packed-in-exported-kernel-head.patch @@ -0,0 +1,38 @@ +commit f210735fe2f17a6225432ee3d1239bcf23a8659c +Author: Markus Trippelsdorf +Date: Fri Jun 24 15:51:00 2011 +0200 + + headers_install: fix __packed in exported kernel headers + + checkpatch.pl 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 header_install.pl script. + + Cc: Artem Bityutskiy + CC: Joe Perches + Signed-off-by: Markus Trippelsdorf + Signed-off-by: Michal Marek + +diff --git a/scripts/headers_install.pl b/scripts/headers_install.pl +index efb3be1..48462be 100644 +--- a/scripts/headers_install.pl ++++ b/scripts/headers_install.pl +@@ -35,6 +35,7 @@ foreach my $file (@files) { + $line =~ s/([\s(])__iomem\s/$1/g; + $line =~ s/\s__attribute_const__\s/ /g; + $line =~ s/\s__attribute_const__$//g; ++ $line =~ s/\b__packed\b/__attribute__((packed))/g; + $line =~ s/^#include //; + $line =~ s/(^|\s)(inline)\b/$1__$2__/g; + $line =~ s/(^|\s)(asm)\b(\s|[(]|$)/$1__$2__$3/g;