glibc detected corrupted double-linked list (Defect #87)


Added by Matthias Bach over 6 years ago. Updated over 3 years ago.


Status:Done Start date:16 Feb 2011
Priority:Normal Due date:
Assignee:Matthias Bach % Done:

80%

Category:-
Target version:- Estimated time:2.00 hours

Description

Execution on openSUSE 11.3 fails. The relevant output is:

writing gaugefield to lime-file...
        The ENDIANNESS of the system is little, bytes must be reversed
*** glibc detected *** ./hmc.v0.1: corrupted double-linked list: 0x00000000015b9520 ***

(gdb) backtrace
#0 0x00007ffff69b39e5 in raise () from /lib64/libc.so.6
#1 0x00007ffff69b4ee6 in abort () from /lib64/libc.so.6
#2 0x00007ffff69eec53 in __libc_message () from /lib64/libc.so.6
#3 0x00007ffff69f4226 in malloc_printerr () from /lib64/libc.so.6
#4 0x00007ffff69f5156 in _int_free () from /lib64/libc.so.6
#5 0x00007ffff69f8fcc in free () from /lib64/libc.so.6
#6 0x00000000004181f8 in make_binary_data_double (array=0x132a460,
out=0x15a7df0 "\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\177\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377"..., array_size=18432, num_entries=73728) at host_writegaugefield.cpp:69
#7 0x0000000000418329 in write_gaugefield (array=0x132a460, array_size=18432, lx=4, ly=4, lz=4, lt=4, prec=64, trajectorynr=10,
plaquettevalue=-nan(0x7fffff), beta=6, kappa=0.150000006, mu=4, c2_rec=0, epsilonbar=0, mubar=0, hmc_version=0x621428 "0.1",
filename=0xe9d578 "conf.00001") at host_writegaugefield.cpp:104
#8 0x0000000000417d93 in save_gaugefield (gaugefield=0x623720, parameters=0x7fffffffe1a0, number=10) at host_gaugefieldoperations.cpp:71
#9 0x00000000004040b0 in main (argc=2, argv=0x7fffffffe338) at hmc.cpp:74


History

Updated by Matthias Bach over 6 years ago

It seems to work to use export MALLOC_CHECK_=0 as a workaround. This does not fix the bug, but only disables the check.

Updated by Matthias Bach over 6 years ago

Bug is fixed in d49d9690, however a test should be added to verfy readback and ensure it doesn't reappear.

  • % Done changed from 0 to 80
  • Status changed from New to Code Review

Updated by Matthias Bach about 6 years ago

  • % Done changed from 80 to 100
  • Status changed from Code Review to Done

Updated by Matthias Bach about 6 years ago

  • % Done changed from 100 to 80
  • Status changed from Done to Code Review

Updated by Matthias Kretz over 3 years ago

  • Status changed from Code Review to Done

Also available in: Atom PDF