* [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h.
@ 2011-08-14 17:45 Rob Landley
2011-08-14 18:03 ` Stefan Richter
0 siblings, 1 reply; 6+ messages in thread
From: Rob Landley @ 2011-08-14 17:45 UTC (permalink / raw)
To: linux-kernel, Artem.Bityutskiy, busybox
"make headers_install" copies include/mtd/ubi_user.h to userspace, where
things like busybox link against it. With 3.0, building defconfig
busybox gets this error:
In file included from miscutils/ubi_tools.c:63:
/home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:329:
error: conflicting types for '__packed'
/home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:313:
error: previous declaration of '__packed' was here
This is due to the Linux 3.0 commit in the title:
UBI: use __packed instead of __attribute__((packed))
This relies on __packed being defined in:
include/linux/compiler-gcc.h:
#define __packed __attribute__((packed))
Which is not exported to userspace.
I.E. this "cleanup" broke the ability for userspace to use this header,
even though the header is exported to userspace by headers_install.
Rob
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h. 2011-08-14 17:45 [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h Rob Landley @ 2011-08-14 18:03 ` Stefan Richter 2011-08-14 19:11 ` Rob Landley 2011-08-14 19:16 ` Rob Landley 0 siblings, 2 replies; 6+ messages in thread From: Stefan Richter @ 2011-08-14 18:03 UTC (permalink / raw) To: Rob Landley; +Cc: linux-kernel, Artem.Bityutskiy, busybox On Aug 14 Rob Landley wrote: > "make headers_install" copies include/mtd/ubi_user.h to userspace, where > things like busybox link against it. With 3.0, building defconfig > busybox gets this error: > > In file included from miscutils/ubi_tools.c:63: > /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:329: > error: conflicting types for '__packed' > /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:313: > error: previous declaration of '__packed' was here > > This is due to the Linux 3.0 commit in the title: > > UBI: use __packed instead of __attribute__((packed)) > > This relies on __packed being defined in: > > include/linux/compiler-gcc.h: > #define __packed __attribute__((packed)) > > Which is not exported to userspace. > > I.E. this "cleanup" broke the ability for userspace to use this header, > even though the header is exported to userspace by headers_install. As far as I can tell, the __packed or __attribute__((packed)) qualifications are superfluous in include/mtd/ubi-user.h anyway. -- Stefan Richter -=====-==-== =--- -===- http://arcgraph.de/sr/ ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h. 2011-08-14 18:03 ` Stefan Richter @ 2011-08-14 19:11 ` Rob Landley 2011-08-14 19:16 ` Rob Landley 1 sibling, 0 replies; 6+ messages in thread From: Rob Landley @ 2011-08-14 19:11 UTC (permalink / raw) To: Stefan Richter; +Cc: linux-kernel, Artem Bityutskiy, Adrian Hunter, busybox On 08/14/2011 01:03 PM, Stefan Richter wrote: > On Aug 14 Rob Landley wrote: >> "make headers_install" copies include/mtd/ubi_user.h to userspace, where >> things like busybox link against it. With 3.0, building defconfig >> busybox gets this error: >> >> In file included from miscutils/ubi_tools.c:63: >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:329: >> error: conflicting types for '__packed' >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:313: >> error: previous declaration of '__packed' was here >> >> This is due to the Linux 3.0 commit in the title: >> >> UBI: use __packed instead of __attribute__((packed)) >> >> This relies on __packed being defined in: >> >> include/linux/compiler-gcc.h: >> #define __packed __attribute__((packed)) >> >> Which is not exported to userspace. >> >> I.E. this "cleanup" broke the ability for userspace to use this header, >> even though the header is exported to userspace by headers_install. > > As far as I can tell, the __packed or __attribute__((packed)) > qualifications are superfluous in include/mtd/ubi-user.h anyway. And the email address he signed-off-by the broken commit from bounced, trying again with the one out of MAINTAINERS. Rob ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h. 2011-08-14 18:03 ` Stefan Richter 2011-08-14 19:11 ` Rob Landley @ 2011-08-14 19:16 ` Rob Landley 2011-08-15 3:39 ` Artem Bityutskiy 1 sibling, 1 reply; 6+ messages in thread From: Rob Landley @ 2011-08-14 19:16 UTC (permalink / raw) To: Stefan Richter; +Cc: linux-kernel, Artem Bityutskiy, busybox On 08/14/2011 01:03 PM, Stefan Richter wrote: > On Aug 14 Rob Landley wrote: >> "make headers_install" copies include/mtd/ubi_user.h to userspace, where >> things like busybox link against it. With 3.0, building defconfig >> busybox gets this error: >> >> In file included from miscutils/ubi_tools.c:63: >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:329: >> error: conflicting types for '__packed' >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:313: >> error: previous declaration of '__packed' was here >> >> This is due to the Linux 3.0 commit in the title: >> >> UBI: use __packed instead of __attribute__((packed)) >> >> This relies on __packed being defined in: >> >> include/linux/compiler-gcc.h: >> #define __packed __attribute__((packed)) >> >> Which is not exported to userspace. >> >> I.E. this "cleanup" broke the ability for userspace to use this header, >> even though the header is exported to userspace by headers_install. > > As far as I can tell, the __packed or __attribute__((packed)) > qualifications are superfluous in include/mtd/ubi-user.h anyway. And Adrian Hunter <adrian.hunter@nokia.com> (the other listed UBI maintainer) also bounces. Did the developer exodus after Nokia decided to cozy up to The Black Widow take 'em both out? Rob ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h. 2011-08-14 19:16 ` Rob Landley @ 2011-08-15 3:39 ` Artem Bityutskiy 2011-08-15 3:42 ` Artem Bityutskiy 0 siblings, 1 reply; 6+ messages in thread From: Artem Bityutskiy @ 2011-08-15 3:39 UTC (permalink / raw) To: Rob Landley, Michal Marek, Adrian.Hunter Cc: Stefan Richter, linux-kernel, busybox On Sun, 2011-08-14 at 14:16 -0500, Rob Landley wrote: > On 08/14/2011 01:03 PM, Stefan Richter wrote: > > On Aug 14 Rob Landley wrote: > >> "make headers_install" copies include/mtd/ubi_user.h to userspace, where > >> things like busybox link against it. With 3.0, building defconfig > >> busybox gets this error: > >> > >> In file included from miscutils/ubi_tools.c:63: > >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:329: > >> error: conflicting types for '__packed' > >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:313: > >> error: previous declaration of '__packed' was here > >> > >> This is due to the Linux 3.0 commit in the title: > >> > >> UBI: use __packed instead of __attribute__((packed)) > >> > >> This relies on __packed being defined in: > >> > >> include/linux/compiler-gcc.h: > >> #define __packed __attribute__((packed)) > >> > >> Which is not exported to userspace. > >> > >> I.E. this "cleanup" broke the ability for userspace to use this header, > >> even though the header is exported to userspace by headers_install. > > > > As far as I can tell, the __packed or __attribute__((packed)) > > qualifications are superfluous in include/mtd/ubi-user.h anyway. > > And Adrian Hunter <adrian.hunter@nokia.com> (the other listed UBI > maintainer) also bounces. Did the developer exodus after Nokia decided > to cozy up to The Black Widow take 'em both out? Yes, both of us have left Nokia recently. Adrian should fix the "MAINTAINERS" file. WRT to the breakage - yes, it was my mistake to follow the new trend in the Linux kernel - the commit message has a reference to the other commit which inspired the check, and you can find out that some other projects made a similar change. Moreover, checkpatch.pl prints the following warning "WARN("__packed is preferred over __attribute__((packed))". So you hardly can blame :-) Anyways, this problem was discussed in the "__packed vs. __attribute__((packed)) in kernel headers" thread in LKML. Then a fix has been sent, see the "{PATCH] fix __packed in exported kernel headers" thread in LKML. This fix was accepted by "Michal Marek <mmarek@suse.cz>", whom I put to CC. -- Best Regards, Artem Bityutskiy (Битюцкий Артём) ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h. 2011-08-15 3:39 ` Artem Bityutskiy @ 2011-08-15 3:42 ` Artem Bityutskiy 0 siblings, 0 replies; 6+ messages in thread From: Artem Bityutskiy @ 2011-08-15 3:42 UTC (permalink / raw) To: Rob Landley Cc: Michal Marek, Adrian.Hunter, Stefan Richter, linux-kernel, busybox On Mon, 2011-08-15 at 06:39 +0300, Artem Bityutskiy wrote: > On Sun, 2011-08-14 at 14:16 -0500, Rob Landley wrote: > > On 08/14/2011 01:03 PM, Stefan Richter wrote: > > > On Aug 14 Rob Landley wrote: > > >> "make headers_install" copies include/mtd/ubi_user.h to userspace, where > > >> things like busybox link against it. With 3.0, building defconfig > > >> busybox gets this error: > > >> > > >> In file included from miscutils/ubi_tools.c:63: > > >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:329: > > >> error: conflicting types for '__packed' > > >> /home/landley/aboriginal/aboriginal/build/simple-cross-compiler-i686/bin/../include/mtd/ubi-user.h:313: > > >> error: previous declaration of '__packed' was here > > >> > > >> This is due to the Linux 3.0 commit in the title: > > >> > > >> UBI: use __packed instead of __attribute__((packed)) > > >> > > >> This relies on __packed being defined in: > > >> > > >> include/linux/compiler-gcc.h: > > >> #define __packed __attribute__((packed)) > > >> > > >> Which is not exported to userspace. > > >> > > >> I.E. this "cleanup" broke the ability for userspace to use this header, > > >> even though the header is exported to userspace by headers_install. > > > > > > As far as I can tell, the __packed or __attribute__((packed)) > > > qualifications are superfluous in include/mtd/ubi-user.h anyway. > > > > And Adrian Hunter <adrian.hunter@nokia.com> (the other listed UBI > > maintainer) also bounces. Did the developer exodus after Nokia decided > > to cozy up to The Black Widow take 'em both out? > > Yes, both of us have left Nokia recently. Adrian should fix the > "MAINTAINERS" file. > > WRT to the breakage - yes, it was my mistake to follow the new trend in > the Linux kernel - the commit message has a reference to the other > commit which inspired the check, and you can find out that some other > projects made a similar change. Moreover, checkpatch.pl prints the > following warning "WARN("__packed is preferred over > __attribute__((packed))". So you hardly can blame :-) > > Anyways, this problem was discussed in the "__packed vs. > __attribute__((packed)) in kernel headers" thread in LKML. > > Then a fix has been sent, see the "{PATCH] fix __packed in exported > kernel headers" thread in LKML. This fix was accepted by "Michal Marek > <mmarek@suse.cz>", whom I put to CC. And the fix is upstream, see: commit f210735fe2f17a6225432ee3d1239bcf23a8659c Author: Markus Trippelsdorf <markus@trippelsdorf.de> Date: Fri Jun 24 15:51:00 2011 +0200 Probably someone can ping the -stable team and ask them to take it to linux-3.0-stable? -- Best Regards, Artem Bityutskiy (Битюцкий Артём) ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-08-15 3:42 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-08-14 17:45 [BUG] Linux 3.0 commit 3627924acf70a broke include/mtd/ubi_user.h Rob Landley 2011-08-14 18:03 ` Stefan Richter 2011-08-14 19:11 ` Rob Landley 2011-08-14 19:16 ` Rob Landley 2011-08-15 3:39 ` Artem Bityutskiy 2011-08-15 3:42 ` Artem Bityutskiy
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox