display crashes inconsistently
Posted: 2011-06-15T10:52:09-07:00
Here's my issue... I can run 'display' which lives on a gpfs (ibm clustering filesystem) filesystem on the host in question. When I run it, I'm also sitting in a different gpfs filesystem where the .gif files I'm working with live. There are 24 .gif files, all with long filenames... approx. 44 characters in the name (47 if you count the .gif part). I mention the length of the filenames because it seems to be making an issue.
To test further, I've copied these 24 .gif files into my home directory. I then run (just like the user I'm testing for does) a 'display *.gif' and keep hitting the space bar to move through the files in the window that opens up. When it gets to the last file I get a 'bus error' and the display window dies. Other times I see this:
(and I'm not showing the entire output.. )
be312[~/testing/dir4]display *.gif
*** glibc detected *** display: corrupted double-linked list: 0x000000000051c180 ***
======= Backtrace: =========
/lib64/libc.so.6[0x2b6b03e8b4fe]
/lib64/libc.so.6[0x2b6b03e8c9b7]
/lib64/libc.so.6(__libc_free+0x6c)[0x2b6b03e8cb7c]
/SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/lib/libMagickCore.so.2(RelinquishMagickMemory+0xf)[0x2b6b02c7064f]
/SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/lib/libMagickCore.so.2(XSetWindows+0x16)[0x2b6b02cf0346]
/SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/lib/libMagickCore.so.2(MagickCoreTerminus+0x9)[0x2b6b02c6f409]
display(DisplayImageCommand+0x1a5)[0x4009dd]
/lib64/libc.so.6(__libc_start_main+0xf4)[0x2b6b03e3d164]
display(DisplayImageCommand+0xa1)[0x4008d9]
======= Memory map: ========
00400000-00401000 r-xp 00000000 00:17 99934525 /SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/bin/display
00500000-00501000 rw-p 00000000 00:17 99934525 /SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/bin/display
00501000-006f0000 rw-p 00501000 00:00 0 [heap]
2b6b02a61000-2b6b02a7c000 r-xp 00000000 08:02 14482 /lib64/ld-2.4.so
So here comes my confusion. Just so it would be easier to follow my testing and have easier filenames, I took the 24 files and copied them to another test directory and changed the names to 01.gif, 02.gif... 24.gif that way I could be sure what file it was on when it crashed. But to my surprise, when I did a 'display *.gif' on these same files with the shortened names, it did not crash at all. When the last file was shown the display window disappeared cleanly and I got my prompt back.
It seems like there's an issue with the length of the filename perhaps? Is this a bug? I need help.
Here's the version of the software:
be312[~]/usr/local/bin/display -version
Version: ImageMagick 6.5.8-8 2010-02-05 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2010 ImageMagick Studio LLC
Features:
Thanks in advance,
-chris
To test further, I've copied these 24 .gif files into my home directory. I then run (just like the user I'm testing for does) a 'display *.gif' and keep hitting the space bar to move through the files in the window that opens up. When it gets to the last file I get a 'bus error' and the display window dies. Other times I see this:
(and I'm not showing the entire output.. )
be312[~/testing/dir4]display *.gif
*** glibc detected *** display: corrupted double-linked list: 0x000000000051c180 ***
======= Backtrace: =========
/lib64/libc.so.6[0x2b6b03e8b4fe]
/lib64/libc.so.6[0x2b6b03e8c9b7]
/lib64/libc.so.6(__libc_free+0x6c)[0x2b6b03e8cb7c]
/SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/lib/libMagickCore.so.2(RelinquishMagickMemory+0xf)[0x2b6b02c7064f]
/SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/lib/libMagickCore.so.2(XSetWindows+0x16)[0x2b6b02cf0346]
/SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/lib/libMagickCore.so.2(MagickCoreTerminus+0x9)[0x2b6b02c6f409]
display(DisplayImageCommand+0x1a5)[0x4009dd]
/lib64/libc.so.6(__libc_start_main+0xf4)[0x2b6b03e3d164]
display(DisplayImageCommand+0xa1)[0x4008d9]
======= Memory map: ========
00400000-00401000 r-xp 00000000 00:17 99934525 /SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/bin/display
00500000-00501000 rw-p 00000000 00:17 99934525 /SPG_ops/utils/x86_64/ImageMagick/ImageMagick-6.5.8-8/bin/display
00501000-006f0000 rw-p 00501000 00:00 0 [heap]
2b6b02a61000-2b6b02a7c000 r-xp 00000000 08:02 14482 /lib64/ld-2.4.so
So here comes my confusion. Just so it would be easier to follow my testing and have easier filenames, I took the 24 files and copied them to another test directory and changed the names to 01.gif, 02.gif... 24.gif that way I could be sure what file it was on when it crashed. But to my surprise, when I did a 'display *.gif' on these same files with the shortened names, it did not crash at all. When the last file was shown the display window disappeared cleanly and I got my prompt back.
It seems like there's an issue with the length of the filename perhaps? Is this a bug? I need help.
Here's the version of the software:
be312[~]/usr/local/bin/display -version
Version: ImageMagick 6.5.8-8 2010-02-05 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2010 ImageMagick Studio LLC
Features:
Thanks in advance,
-chris