bug-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-glpk] [Fwd: segfault reading a compressed mps file in 4.52]


From: Carlo Baldassi
Subject: Re: [Bug-glpk] [Fwd: segfault reading a compressed mps file in 4.52]
Date: Thu, 28 Nov 2013 10:49:38 +0100

Hello and sorry for the misunderstanding with the bug-glpk list, I have now subscribed (but, as a suggestion for improvement, I'll add that it's not clear that subscription is required to submit bugs from reading the GLPK homepage at http://www.gnu.org/software/glpk/#bug).

Thanks for looking into this; here is the trace from running the code through valgrind; I'm not sure if this suggests a bug in my zlib version:

==28394== Memcheck, a memory error detector
==28394== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==28394== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
==28394== Command: glpktst
==28394==
Reading problem data from `greenbea.gz'...
==28394== Invalid read of size 8
==28394==    at 0x4EE393C: zlib_crc32 (crc32.c:259)
==28394==    by 0x4EEA819: zlib_inflate (inflate.c:1232)
==28394==    by 0x4EE791F: gz_decomp (gzread.c:189)
==28394==    by 0x4EE7AE5: gz_fetch (gzread.c:245)
==28394==    by 0x4EE7CB7: zlib_gzread (gzread.c:339)
==28394==    by 0x4EE7DD2: zlib_gzgetc (gzread.c:398)
==28394==    by 0x4E61494: _glp_lib_xfgetc (glpenv07.c:580)
==28394==    by 0x4E9F70E: read_char (glpmps.c:167)
==28394==    by 0x4E9FCC2: indicator (glpmps.c:214)
==28394==    by 0x4EA0170: glp_read_mps (glpmps.c:395)
==28394==    by 0x400767: main (in /home/carlo/tmp/glpktst)
==28394==  Address 0x6aeb39f4b68 is not stack'd, malloc'd or (recently) free'd
==28394==
==28394==
==28394== Process terminating with default action of signal 11 (SIGSEGV)
==28394==  Access not within mapped region at address 0x6AEB39F4B68
==28394==    at 0x4EE393C: zlib_crc32 (crc32.c:259)
==28394==    by 0x4EEA819: zlib_inflate (inflate.c:1232)
==28394==    by 0x4EE791F: gz_decomp (gzread.c:189)
==28394==    by 0x4EE7AE5: gz_fetch (gzread.c:245)
==28394==    by 0x4EE7CB7: zlib_gzread (gzread.c:339)
==28394==    by 0x4EE7DD2: zlib_gzgetc (gzread.c:398)
==28394==    by 0x4E61494: _glp_lib_xfgetc (glpenv07.c:580)
==28394==    by 0x4E9F70E: read_char (glpmps.c:167)
==28394==    by 0x4E9FCC2: indicator (glpmps.c:214)
==28394==    by 0x4EA0170: glp_read_mps (glpmps.c:395)
==28394==    by 0x400767: main (in /home/carlo/tmp/glpktst)
==28394==  If you believe this happened as a result of a stack
==28394==  overflow in your program's main thread (unlikely but
==28394==  possible), you can try to increase the size of the
==28394==  main thread stack using the --main-stacksize= flag.
==28394==  The main thread stack size used in this run was 8388608.
==28394==
==28394== HEAP SUMMARY:
==28394==     in use at exit: 73,880 bytes in 20 blocks
==28394==   total heap usage: 24 allocs, 4 frees, 77,108 bytes allocated
==28394==
==28394== LEAK SUMMARY:
==28394==    definitely lost: 0 bytes in 0 blocks
==28394==    indirectly lost: 0 bytes in 0 blocks
==28394==      possibly lost: 0 bytes in 0 blocks
==28394==    still reachable: 73,880 bytes in 20 blocks
==28394==         suppressed: 0 bytes in 0 blocks
==28394== Rerun with --leak-check=full to see details of leaked memory
==28394==
==28394== For counts of detected and suppressed errors, rerun with: -v
==28394== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 2 from 2)
Segmentation fault (core dumped)

As an additional (even though probably irrelevant) detail, I'll add that the file type flag (GLP_MPS_DECK vs GLP_MPS_FILE) does not make any difference.

On Thu, Nov 28, 2013 at 1:48 AM, Heinrich Schuchardt <address@hidden> wrote:
Hello Carlo,

your mail had to be forwarded manually because you were not subscribed to the list, see
https://lists.gnu.org/mailman/listinfo/bug-glpk

I was not able to reproduce the issue with GLPK 4.52 on Debian Jessie.

Please, run the program with valgrind to identify where the segmentation fault occurs.

Best regards

Heinrich Schuchardt

http://www.xypron.de


> Gesendet: Mittwoch, 27. November 2013 um 08:18 Uhr
> Von: "Andrew Makhorin" <address@hidden>
> An: address@hidden
> Betreff: [Bug-glpk] [Fwd: segfault reading a compressed mps file in 4.52]
>
> -------- Forwarded Message --------
> To: address@hidden
> Subject: segfault reading a compressed mps file in 4.52
> Date: Tue, 26 Nov 2013 19:08:35 +0100
>
> Using GLPK 4.52, glp_read_mps fails with a segfault on this file:
>
> https://github.com/mlubin/SimplexBenchmarks/raw/master/GenerateData/greenbea.gz
>
>
> uncompressing it works fine. Also, GLPK 4.48 works fine on the
> compressed file, so the bug was introduced between these versions.
>
>
> I'm testing on 64bit Linux (Ubuntu 13.04). zlib version is 1.2.7.
>
>
> Here is a sample C file which reproduces the problem:
>
> #include <stdio.h>
> #include <stdlib.h>
> #include <glpk.h>
>
> int main()
> {
>    glp_prob * lp;
>    lp = glp_create_prob();
>    glp_read_mps(lp, GLP_MPS_DECK, NULL, "greenbea.gz");
>    glp_delete_prob(lp);
>    return 0;
> }
>
>
>
> Here is the output:
>
> $ glpktst
> Reading problem data from `greenbea.gz'...
> Segmentation fault (core dumped)
>
>
> Best regards
>
> Carlo Baldassi

--
Diese E-Mail wurde aus dem Sicherheitsverbund E-Mail made in
Germany versendet: http://www.gmx.net/e-mail-made-in-germany


reply via email to

[Prev in Thread] Current Thread [Next in Thread]