Comment 18 for bug 1049650

Revision history for this message
Matthias Klose (doko) wrote :

the pointer to binutils unfortunately wasn't the right one. I always was able to reproduce the issue with any binutils version.
there were section sizes for the .videocards section. 0 (the buggy one), 84 (the correct one), and an even bigger one from comment #8. It was agreed not investigate the even bigger one, as it was only seen by one developer and couldn't be reproduced.

The root cause was a bug in the gcc-4.7 4.7.1-8ubuntu1 package, that the unused video_cards static variables were optimized away, even while the files were built using -fno-toplevel-reorder (which unfortunately was hidden, because quiet build logs were turned on by default). It is likely that Debian #687448 is the same issue. -7 and -7ubuntu1 didn't show the issue, while -8 and -8ubuntu1 did show it, the only change between these two versions being branch updates, however it couldn't be reproduced with an upstream build. The issue couldn't be seen with an update to the recent 4.7 branch (4.7.2 release candidate), which did land as -9ubuntu1 in the archive.

The suggested kernel fix to explicitly mark the video_cards variables as used isn't wrong, but maybe not needed. Please consider rebuilding the linux package using -9ubuntu1/2 when this is available in the archive for all architectures (even armel), so that files which may be affected from the issue are correctly rebuilt.