Full diff: http://pastebin.com/BJS2EXcH On Tue, Jun 19, 2012 at 4:39 PM, Peter Senna Tschudin <peter.senna@xxxxxxxxx> wrote: > Hans, > > I've: > [peter@ace tmp]$ diff linux-2.6.35.13/scripts/mod/file2alias.c > linux-3.4.3/scripts/mod/file2alias.c > > And found: > 727a840 >> ADD_TO_DEVTABLE("i2c", struct i2c_device_id, do_i2c_entry); > > This line only exists on 3.4.3 version of file2alias.c. Isn't this why > it successfully compile with newer Kernel? > > []'s > > Peter > > > On Tue, Jun 19, 2012 at 11:03 AM, Hans Verkuil <hverkuil@xxxxxxxxx> wrote: >> On Tue 19 June 2012 14:50:09 Ezequiel Garcia wrote: >>> Hi Hans, >>> >>> On Tue, Jun 19, 2012 at 3:34 AM, Hans Verkuil <hverkuil@xxxxxxxxx> wrote: >>> > Hi all, >>> > >>> > Yesterday I upgraded the gcc version I use to compile the daily build to >>> > 4.7.1. >>> > >>> > This causes very strange errors when compiling 2.6.39 - 3.3: >>> > >>> > FATAL: media_build/v4l/tuner: sizeof(struct i2c_device_id)=32 is not a >>> > modulo of the size of section __mod_i2c_device_table=18. >>> > Fix definition of struct i2c_device_id in mod_devicetable.h >>> > >>> > This error does not appear when compiling with gcc 4.6.3, and I see >>> > absolutely nothing >>> > wrong with mod_devicetable.h. >>> > >>> > I tried very hard to figure out what is going on and why older and newer >>> > kernels >>> > are not affected, but I still have no idea. >>> > >>> > The error itself it reported by scripts/mod/file2alias.c. I can suppress >>> > that error >>> > but that will just lead to a modpost crash later in the compile process. >>> > >>> > The tuner.o file always causes this. Commenting tuner.o in the Makefile will >>> > cause >>> > the same problems in other modules (cafe_ccic), but there are also i2c >>> > modules that >>> > compile just fine. >>> > >>> > Does anyone have an insight into this? Did something magical change in >>> > kernel 3.4 >>> > that fixed this? >>> > >>> >>> Perhaps this thread could be useful: >>> >>> https://lkml.org/lkml/2012/6/15/323 >> >> Yeah, I read that as well. But there there is a clear change that caused the >> problem. As far as I can tell include/linux/mod_devicetable.h has identical >> i2c_device_id structs for linux-3.0/1/2/3/4, yet all compile fine with gcc-4.6.3, >> but for gcc-4.7.1 only linux-3.4 compiles. >> >> I'm stumped. >> >> Regards, >> >> Hans >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-media" in >> the body of a message to majordomo@xxxxxxxxxxxxxxx >> More majordomo info at http://vger.kernel.org/majordomo-info.html > > > > -- > Peter Senna Tschudin > peter.senna@xxxxxxxxx > gpg id: 48274C36 -- Peter Senna Tschudin peter.senna@xxxxxxxxx gpg id: 48274C36 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html