glibc detected: double free or corruption

Dear all,

  I have upgraded to latest lammps version, and encountered the following problem. The script worked on lammps version 5789, but it failed while running latest stable lammps or svn version. My computation needs LJ pairwise potential and PPPM method to do Coulomb potential.

  Here is some errors. The script is also attached.

input (1.78 KB)

input.lammps (183 KB)

Dear all,

   I have upgraded to latest lammps version, and encountered the following problem\. The script worked on lammps version 5789, but it failed while running latest stable lammps or svn version\.  My computation needs LJ pairwise potential and PPPM method to do Coulomb potential\.

   Here is some errors\. The script is also attached\.

thanks for the report. i can confirm the error.

steve has done some restructuring of the memory allocation code.
so this has to be related. while not desired, oversights might happen,
or the change might have exposed a previously hidden bug.

if you need a working code, i recommend to go back a few revisions
before the changes to memory.h and memory.cpp or wait until a patch
is released.

thanks,
    axel.

I'm about to post a patch that I think will fix this.
Please try it out and see.

Steve

You are welcome.
  Thanks for your efforts. I very appreciate it.

Best wishes,
Yangpeng

在 Mar 22, 2011,11:23 AM, Steve Plimpton 写道:

Dear all,

Me and my PhD student have similar issues with the latest svn revision
(5821, lammps version 25 Mar 2011). Simulations involving water and LJ
walls, which where working with earlier revisions, generate various
errors. For instance the enclosed input and data files (a simple box
of TIP3P water) generate various errors depending for instance on the
number of mpi tasks:

* serial:
Setting up run ...
*** glibc detected *** /data/lammps_new/lmp_24Mar11_mpi: double free
or corruption (!prev): 0x00000000018b69e0 ***

* parallel: goes fine until the end:
Dangerous builds = 0
segmentation fault

Any updates on this issue?

Best,
Laurent

in.simple (870 Bytes)

data.simple (27.2 KB)

For my previous run-time error problem, the new patch file memory.h and memory.cpp has already fixed it.

Best wishes,
Yangpeng

在 Mar 24, 2011,7:05 AM, Laurent Joly 写道:

yes - Laurent - plesase see if the problem persists
with the latest patched version. If so, let me know.

Steve

2011/3/24 Yangpeng Ou <[email protected]...>:

Yes, the problem persists when I run the attached example input file
with the 25 Mar 2011 version:

Setting up run ...
*** glibc detected *** /data/lammps_new/lammps-25Mar11/src/lmp_pc247:
double free or corruption (!prev): 0x0000000002667760 ***

Best,
Laurent

in.simple (870 Bytes)

data.simple (27.2 KB)

Hi,
  The problem still happened for my runs when I constrained atoms in smaller box. But it is fine to run for low density case.

  Here is script, and input. Change filename "dilute-input.lammps" to "input.lammps" and you could run it for lower density case.

Best wishes,
Yangpeng

input (2.17 KB)

input.lammps (183 KB)

dilute-input.lammps (183 KB)

One more patch - I think this will fix it. I was
trying to be too clever about freeing 0-length arrays.

Thanks,
Steve

Thanks a lot, everything works fine with 26 Mar 2011 version.

Best,
Laurent

Thanks . It works very well right now.

Best wishes,
Yangpeng

在 Mar 25, 2011,6:02 AM, Laurent Joly 写道: