crash with master when plotting the profile

Dirk Hohndel dirk at hohndel.org
Mon Jan 7 14:59:18 PST 2013


Linus Torvalds <torvalds at linux-foundation.org> writes:

> On Mon, Jan 7, 2013 at 2:44 PM, Dirk Hohndel <dirk at hohndel.org> wrote:
>>
>> Here's the sequence:
>>
>> No dives loaded (Ctrl-W). Start planner.
>>
>> 50m   5  20/30
>> 50m  10  20/30
>> 20m   3  TAB-> CRASH
>
> Ok, I can re-create, am looking at it.
>
> But I don't actually get the crash in the same location, I get it at
> free() time, when glibc complains about freeing a free'd memory data
> structure. It happens on the
>
>     free((void *)last_pi_entry);
>
> for me (profile.c:1901), long before it even gets to the point you see.

This may be because I have other preference settings than you (metric
vs. imperial, differen GFlow/high). Or that before hitting Ctrl-W I
obviously loaded a different data file, so the memory map is different.

> And I suspect your crash is really the same, it's just that the heap
> is corrupted and you get it at a different place when you use a
> dynamic allocation.

Yes - that's why I ran Valgrind against it - I assumed it was some
memory corruption bug.

>> (gdb) p cylinderindex
>> $82 = 20910
>>
>> (wow... that's a LOT of cylinders you are carrying...)
>
> I think it's just memory corruption, nothing quite as interesting at that.

And here I was hoping this was a sign of your secret next-gen dive gear
project where you dive with thousands of micro tanks... :-)

> Will look at it.

Thanks.

/D


More information about the subsurface mailing list