[Bug optimization/13379] [tree-ssa] miscompiles 2.6.0-test11 Linux kernel
mingo at elte dot hu
gcc-bugzilla@gcc.gnu.org
Fri Jan 30 15:19:00 GMT 2004
------- Additional Comments From mingo at elte dot hu 2004-01-30 15:19 -------
for details please see the attached files i just posted.
i happen to be the author of most of the code in bootmem.c - it really does
nothing weird or unexpected. It just uses a big flat bitmap to do
page-granularity allocation at boot-time - with some additional
track-last-partially-allocated-page code to not waste too much RAM on small,
continuous allocations. (it also has multiple flat bitmaps when there are NUMA
nodes, but that code is essentially turned off on x86, where the failure
happens. On x86 we have only a single node, and thus a single bootmem bitmap.)
The hang is caused by an assert triggering in the last few lines of
__alloc_bootmem_core() [provably this is the only miscompiled function in this
module], the last BUG() hits [the bitmap has already been set] - which most
likely indicates that the bitmap arithmetics are off somewhere.
this code never triggered compiler problems before.
it is near 100% sure that the miscompilation is in __alloc_bootmem_core() itself
- the assert can only be caused by incorrect code in that function, it does not
assume anything about the bitmap or other external state.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13379
More information about the Gcc-bugs
mailing list