Page MenuHomePhabricator

Ecore Exe SIGABRT on EFL 1.20.X
Closed, ResolvedPublic

Description

This issue is getting me crazy!!

I have this crash in all the 1.20.X efl releases while it work without issue in all the previous one.

I finally managed to make it happen in a simple test case, just download the 2 attached files and build the test with:

gcc -o test_exe test_exe.c `pkg-config --cflags --libs ecore`


This test is really simple: the vimeo.py is a script that fetch some info from the vimeo site and print them on stdout (you can also run it manually and see the whole output in your term)
The C file just run the python script using ecore_exe and (should) receive the info.

It is not vimeo related, it happend with other scrapers too, what I have noticed it that it crash when the output of the py script is big enough, something around 8k seems the dead line.

running the test on all of my machines (debian under virtualbox, arch linux on x86-64 and arch linux under RPI) endup with the following BT

$ gdb test_exe
GNU gdb (GDB) 8.0
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from test_exe...(no debugging symbols found)...done.
(gdb) run
Starting program: /home/dave/github/davemds/epymc/test_exe
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7fd73e146700 (LWP 1578)]
The child process has PID:1579
*** Error in `/home/dave/github/davemds/epymc/test_exe': realloc(): invalid next size: 0x0000555555788440 ***
======= Backtrace: =========
/usr/lib/libc.so.6(+0x72bdd)[0x7fd740752bdd]
/usr/lib/libc.so.6(+0x792ec)[0x7fd7407592ec]
/usr/lib/libc.so.6(+0x7cf53)[0x7fd74075cf53]
/usr/lib/libc.so.6(realloc+0x15e)[0x7fd74075dc2e]
/usr/local/lib/libecore.so.1(+0x3c08b)[0x7fd740f3b08b]
/usr/local/lib/libecore.so.1(+0x1dc0a)[0x7fd740f1cc0a]
/usr/local/lib/libecore.so.1(ecore_main_loop_begin+0xb7)[0x7fd740f1d0b7]
/home/dave/github/davemds/epymc/test_exe(+0xb11)[0x555555554b11]
/usr/lib/libc.so.6(__libc_start_main+0xea)[0x7fd7407004ca]
/home/dave/github/davemds/epymc/test_exe(+0x92a)[0x55555555492a]
======= Memory map: ========
555555554000-555555555000 r-xp 00000000 08:04 785516                     /home/dave/github/davemds/epymc/test_exe
555555755000-555555756000 r--p 00001000 08:04 785516                     /home/dave/github/davemds/epymc/test_exe
555555756000-555555757000 rw-p 00002000 08:04 785516                     /home/dave/github/davemds/epymc/test_exe
555555757000-555555799000 rw-p 00000000 00:00 0                          [heap]
7fd738000000-7fd738021000 rw-p 00000000 00:00 0
7fd738021000-7fd73c000000 ---p 00000000 00:00 0
7fd73d0b5000-7fd73d0b8000 r-xp 00000000 08:04 2142157                    /usr/local/lib/ecore/system/systemd/v-1.20/module.so
7fd73d0b8000-7fd73d2b7000 ---p 00003000 08:04 2142157                    /usr/local/lib/ecore/system/systemd/v-1.20/module.so
7fd73d2b7000-7fd73d2b8000 r--p 00002000 08:04 2142157                    /usr/local/lib/ecore/system/systemd/v-1.20/module.so
7fd73d2b8000-7fd73d2b9000 rw-p 00003000 08:04 2142157                    /usr/local/lib/ecore/system/systemd/v-1.20/module.so
7fd73d2b9000-7fd73d306000 r-xp 00000000 08:04 2105485                    /usr/lib/libdbus-1.so.3.14.13
7fd73d306000-7fd73d505000 ---p 0004d000 08:04 2105485                    /usr/lib/libdbus-1.so.3.14.13
7fd73d505000-7fd73d507000 r--p 0004c000 08:04 2105485                    /usr/lib/libdbus-1.so.3.14.13
7fd73d507000-7fd73d508000 rw-p 0004e000 08:04 2105485                    /usr/lib/libdbus-1.so.3.14.13
7fd73d508000-7fd73d541000 r-xp 00000000 08:04 2140779                    /usr/local/lib/libeldbus.so.1.20.99
7fd73d541000-7fd73d740000 ---p 00039000 08:04 2140779                    /usr/local/lib/libeldbus.so.1.20.99
7fd73d740000-7fd73d741000 r--p 00038000 08:04 2140779                    /usr/local/lib/libeldbus.so.1.20.99
7fd73d741000-7fd73d742000 rw-p 00039000 08:04 2140779                    /usr/local/lib/libeldbus.so.1.20.99
7fd73d742000-7fd73d745000 r-xp 00000000 08:04 2142158                    /usr/local/lib/ecore/system/upower/v-1.20/module.so
7fd73d745000-7fd73d944000 ---p 00003000 08:04 2142158                    /usr/local/lib/ecore/system/upower/v-1.20/module.so
7fd73d944000-7fd73d945000 r--p 00002000 08:04 2142158                    /usr/local/lib/ecore/system/upower/v-1.20/module.so
7fd73d945000-7fd73d946000 rw-p 00003000 08:04 2142158                    /usr/local/lib/ecore/system/upower/v-1.20/module.so
7fd73d946000-7fd73d947000 ---p 00000000 00:00 0
7fd73d947000-7fd73e147000 rw-p 00000000 00:00 0
7fd73e147000-7fd73e15b000 r-xp 00000000 08:04 2105287                    /usr/lib/libgpg-error.so.0.22.0
7fd73e15b000-7fd73e35a000 ---p 00014000 08:04 2105287                    /usr/lib/libgpg-error.so.0.22.0
7fd73e35a000-7fd73e35b000 r--p 00013000 08:04 2105287                    /usr/lib/libgpg-error.so.0.22.0
7fd73e35b000-7fd73e35c000 rw-p 00014000 08:04 2105287                    /usr/lib/libgpg-error.so.0.22.0
7fd73e35c000-7fd73e372000 r-xp 00000000 08:04 2096726                    /usr/lib/libgcc_s.so.1
7fd73e372000-7fd73e571000 ---p 00016000 08:04 2096726                    /usr/lib/libgcc_s.so.1
7fd73e571000-7fd73e572000 r--p 00015000 08:04 2096726                    /usr/lib/libgcc_s.so.1
7fd73e572000-7fd73e573000 rw-p 00016000 08:04 2096726                    /usr/lib/libgcc_s.so.1
7fd73e573000-7fd73e587000 r-xp 00000000 08:04 2140787                    /usr/lib/liblz4.so.1.8.0
7fd73e587000-7fd73e786000 ---p 00014000 08:04 2140787                    /usr/lib/liblz4.so.1.8.0
7fd73e786000-7fd73e787000 r--p 00013000 08:04 2140787                    /usr/lib/liblz4.so.1.8.0
7fd73e787000-7fd73e788000 rw-p 00014000 08:04 2140787                    /usr/lib/liblz4.so.1.8.0
7fd73e788000-7fd73e7ad000 r-xp 00000000 08:04 2105314                    /usr/lib/liblzma.so.5.2.3
7fd73e7ad000-7fd73e9ac000 ---p 00025000 08:04 2105314                    /usr/lib/liblzma.so.5.2.3
7fd73e9ac000-7fd73e9ad000 r--p 00024000 08:04 2105314                    /usr/lib/liblzma.so.5.2.3
7fd73e9ad000-7fd73e9ae000 rw-p 00025000 08:04 2105314                    /usr/lib/liblzma.so.5.2.3
7fd73e9ae000-7fd73eac4000 r-xp 00000000 08:04 2105295                    /usr/lib/libgcrypt.so.20.2.0
7fd73eac4000-7fd73ecc3000 ---p 00116000 08:04 2105295                    /usr/lib/libgcrypt.so.20.2.0
7fd73ecc3000-7fd73ecc5000 r--p 00115000 08:04 2105295                    /usr/lib/libgcrypt.so.20.2.0
7fd73ecc5000-7fd73ecca000 rw-p 00117000 08:04 2105295                    /usr/lib/libgcrypt.so.20.2.0
7fd73ecca000-7fd73eccb000 rw-p 00000000 00:00 0
7fd73eccb000-7fd73ed3c000 r-xp 00000000 08:04 2108331                    /usr/lib/libpcre.so.1.2.9
7fd73ed3c000-7fd73ef3c000 ---p 00071000 08:04 2108331                    /usr/lib/libpcre.so.1.2.9
7fd73ef3c000-7fd73ef3d000 r--p 00071000 08:04 2108331                    /usr/lib/libpcre.so.1.2.9
7fd73ef3d000-7fd73ef3e000 rw-p 00072000 08:04 2108331                    /usr/lib/libpcre.so.1.2.9
7fd73ef3e000-7fd73f04f000 r-xp 00000000 08:04 2095748                    /usr/lib/libm-2.25.so
7fd73f04f000-7fd73f24e000 ---p 00111000 08:04 2095748                    /usr/lib/libm-2.25.so
7fd73f24e000-7fd73f24f000 r--p 00110000 08:04 2095748                    /usr/lib/libm-2.25.so
7fd73f24f000-7fd73f250000 rw-p 00111000 08:04 2095748                    /usr/lib/libm-2.25.so
7fd73f250000-7fd73f253000 r-xp 00000000 08:04 2095740                    /usr/lib/libdl-2.25.so
7fd73f253000-7fd73f452000 ---p 00003000 08:04 2095740                    /usr/lib/libdl-2.25.so
7fd73f452000-7fd73f453000 r--p 00002000 08:04 2095740                    /usr/lib/libdl-2.25.so
7fd73f453000-7fd73f454000 rw-p 00003000 08:04 2095740                    /usr/lib/libdl-2.25.so
7fd73f454000-7fd73f45f000 r-xp 00000000 08:04 2121724                    /usr/lib/libunwind.so.8.0.1
7fd73f45f000-7fd73f65e000 ---p 0000b000 08:04 2121724                    /usr/lib/libunwind.so.8.0.1
7fd73f65e000-7fd73f65f000 r--p 0000a000 08:04 2121724                    /usr/lib/libunwind.so.8.0.1
7fd73f65f000-7fd73f660000 rw-p 0000b000 08:04 2121724                    /usr/lib/libunwind.so.8.0.1
7fd73f660000-7fd73f66e000 rw-p 00000000 00:00 0
7fd73f66e000-7fd73f67e000 r-xp 00000000 08:04 2121727                    /usr/lib/libunwind-x86_64.so.8.0.1
7fd73f67e000-7fd73f87d000 ---p 00010000 08:04 2121727                    /usr/lib/libunwind-x86_64.so.8.0.1
7fd73f87d000-7fd73f87e000 r--p 0000f000 08:04 2121727                    /usr/lib/libunwind-x86_64.so.8.0.1
7fd73f87e000-7fd73f87f000 rw-p 00010000 08:04 2121727                    /usr/lib/libunwind-x86_64.so.8.0.1
7fd73f87f000-7fd73f88d000 rw-p 00000000 00:00 0
7fd73f88d000-7fd73f894000 r-xp 00000000 08:04 2095672                    /usr/lib/librt-2.25.so
7fd73f894000-7fd73fa93000 ---p 00007000 08:04 2095672                    /usr/lib/librt-2.25.so
7fd73fa93000-7fd73fa94000 r--p 00006000 08:04 2095672                    /usr/lib/librt-2.25.so
7fd73fa94000-7fd73fa95000 rw-p 00007000 08:04 2095672                    /usr/lib/librt-2.25.so
7fd73fa95000-7fd73fb18000 r-xp 00000000 08:04 2140621                    /usr/lib/libsystemd.so.0.19.0
7fd73fb18000-7fd73fd17000 ---p 00083000 08:04 2140621                    /usr/lib/libsystemd.so.0.19.0
7fd73fd17000-7fd73fd1a000 r--p 00082000 08:04 2140621                    /usr/lib/libsystemd.so.0.19.0
7fd73fd1a000-7fd73fd1b000 rw-p 00085000 08:04 2140621                    /usr/lib/libsystemd.so.0.19.0
7fd73fd1b000-7fd73fd1c000 rw-p 00000000 00:00 0
7fd73fd1c000-7fd73fda3000 r-xp 00000000 08:04 2131272                    /usr/local/lib/libeina.so.1.20.99
7fd73fda3000-7fd73ffa3000 ---p 00087000 08:04 2131272                    /usr/local/lib/libeina.so.1.20.99
7fd73ffa3000-7fd73ffa5000 r--p 00087000 08:04 2131272                    /usr/local/lib/libeina.so.1.20.99
7fd73ffa5000-7fd73ffa7000 rw-p 00089000 08:04 2131272                    /usr/local/lib/libeina.so.1.20.99
7fd73ffa7000-7fd73ffac000 rw-p 00000000 00:00 0
7fd73ffac000-7fd73ffca000 r-xp 00000000 08:04 2133772                    /usr/local/lib/libeo.so.1.20.99
7fd73ffca000-7fd7401c9000 ---p 0001e000 08:04 2133772                    /usr/local/lib/libeo.so.1.20.99
7fd7401c9000-7fd7401ca000 r--p 0001d000 08:04 2133772                    /usr/local/lib/libeo.so.1.20.99
7fd7401ca000-7fd7401cb000 rw-p 0001e000 08:04 2133772                    /usr/local/lib/libeo.so.1.20.99
7fd7401cb000-7fd7402dc000 r-xp 00000000 08:04 2108531                    /usr/lib/libglib-2.0.so.0.5200.3
7fd7402dc000-7fd7404db000 ---p 00111000 08:04 2108531                    /usr/lib/libglib-2.0.so.0.5200.3
7fd7404db000-7fd7404dc000 r--p 00110000 08:04 2108531                    /usr/lib/libglib-2.0.so.0.5200.3
7fd7404dc000-7fd7404dd000 rw-p 00111000 08:04 2108531                    /usr/lib/libglib-2.0.so.0.5200.3
7fd7404dd000-7fd7404de000 rw-p 00000000 00:00 0
7fd7404de000-7fd7404df000 r-xp 00000000 08:04 2108533                    /usr/lib/libgthread-2.0.so.0.5200.3
7fd7404df000-7fd7406de000 ---p 00001000 08:04 2108533                    /usr/lib/libgthread-2.0.so.0.5200.3
7fd7406de000-7fd7406df000 r--p 00000000 08:04 2108533                    /usr/lib/libgthread-2.0.so.0.5200.3
7fd7406df000-7fd7406e0000 rw-p 00001000 08:04 2108533                    /usr/lib/libgthread-2.0.so.0.5200.3
7fd7406e0000-7fd74087d000 r-xp 00000000 08:04 2095705                    /usr/lib/libc-2.25.so
7fd74087d000-7fd740a7c000 ---p 0019d000 08:04 2095705                    /usr/lib/libc-2.25.so
7fd740a7c000-7fd740a80000 r--p 0019c000 08:04 2095705                    /usr/lib/libc-2.25.so
7fd740a80000-7fd740a82000 rw-p 001a0000 08:04 2095705                    /usr/lib/libc-2.25.so
7fd740a82000-7fd740a86000 rw-p 00000000 00:00 0
7fd740a86000-7fd740a9f000 r-xp 00000000 08:04 2095675                    /usr/lib/libpthread-2.25.so
7fd740a9f000-7fd740c9e000 ---p 00019000 08:04 2095675                    /usr/lib/libpthread-2.25.so
7fd740c9e000-7fd740c9f000 r--p 00018000 08:04 2095675                    /usr/lib/libpthread-2.25.so
7fd740c9f000-7fd740ca0000 rw-p 00019000 08:04 2095675                    /usr/lib/libpthread-2.25.so
7fd740ca0000-7fd740ca4000 rw-p 00000000 00:00 0
7fd740ca4000-7fd740cfb000 r-xp 00000000 08:04 2139123                    /usr/local/lib/libefl.so.1.20.99
7fd740cfb000-7fd740efa000 ---p 00057000 08:04 2139123                    /usr/local/lib/libefl.so.1.20.99
7fd740efa000-7fd740efd000 r--p 00056000 08:04 2139123                    /usr/local/lib/libefl.so.1.20.99
7fd740efd000-7fd740eff000 rw-p 00059000 08:04 2139123                    /usr/local/lib/libefl.so.1.20.99
7fd740eff000-7fd740f50000 r-xp 00000000 08:04 2140749                    /usr/local/lib/libecore.so.1.20.99
7fd740f50000-7fd74114f000 ---p 00051000 08:04 2140749                    /usr/local/lib/libecore.so.1.20.99
7fd74114f000-7fd741151000 r--p 00050000 08:04 2140749                    /usr/local/lib/libecore.so.1.20.99
7fd741151000-7fd741153000 rw-p 00052000 08:04 2140749                    /usr/local/lib/libecore.so.1.20.99
7fd741153000-7fd741161000 rw-p 00000000 00:00 0
7fd741161000-7fd741184000 r-xp 00000000 08:04 2095695                    /usr/lib/ld-2.25.so
7fd7411af000-7fd741347000 r--p 00000000 08:04 2127700                    /usr/lib/locale/locale-archive
7fd741347000-7fd741359000 rw-p 00000000 00:00 0
7fd74136f000-7fd74137f000 rw-p 00000000 00:00 0
7fd74137f000-7fd741382000 r--p 00000000 00:00 0                          [vvar]
7fd741382000-7fd741384000 r-xp 00000000 00:00 0                          [vdso]
7fd741384000-7fd741385000 r--p 00023000 08:04 2095695                    /usr/lib/ld-2.25.so
7fd741385000-7fd741386000 rw-p 00024000 08:04 2095695                    /usr/lib/ld-2.25.so
7fd741386000-7fd741387000 rw-p 00000000 00:00 0
7ffffffde000-7ffffffff000 rw-p 00000000 00:00 0                          [stack]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]

Thread 1 "test_exe" received signal SIGABRT, Aborted.
0x00007fd7407138c0 in raise () from /usr/lib/libc.so.6


(gdb) bt full
#0  0x00007fd7407138c0 in raise () from /usr/lib/libc.so.6
No symbol table info available.
#1  0x00007fd740714f72 in abort () from /usr/lib/libc.so.6
No symbol table info available.
#2  0x00007fd740752be2 in __libc_message () from /usr/lib/libc.so.6
No symbol table info available.
#3  0x00007fd7407592ec in malloc_printerr () from /usr/lib/libc.so.6
No symbol table info available.
#4  0x00007fd74075cf53 in _int_realloc () from /usr/lib/libc.so.6
No symbol table info available.
#5  0x00007fd74075dc2e in realloc () from /usr/lib/libc.so.6
No symbol table info available.
#6  0x00007fd740f3b08b in _ecore_exe_data_generic_handler (data=0x80000000f9495bf2, fd_handler=<optimized out>,
    flags=ECORE_EXE_PIPE_READ) at lib/ecore/ecore_exe_posix.c:1161
        num = <optimized out>
        lost_exe = 0
        buf = "\nCHANNEL: Into the Wild\n", '#' <repeats 60 times>, "\nIt's the magazine on social media. I curate the best creative work from the most promising platforms: sidetrackedma"...
        inbuf = 0x555555788440 '#' <repeats 60 times>, "eedesktop.UPower',path='/org/freedesktop/UPower',interface='org.freedesktop.DBus.Properties',member='PropertiesChanged',arg0='org.freedeskto"...
        temp = 0x555555788440 '#' <repeats 60 times>, "eedesktop.UPower',path='/org/freedesktop/UPower',interface='org.freedesktop.DBus.Properties',member='PropertiesChanged',arg0='org.freedeskto"...
        inbuf_num = 60
        obj = 0x80000000f9495bf2
        child_fd = 19
        event_type = 14
        eo_event = 0x7fd741150630 <_ECORE_EXE_EVENT_DATA_GET>
        exe = 0x555555794960
        __FUNCTION__ = "_ecore_exe_data_generic_handler"
#7  0x00007fd740f1cc0a in _ecore_call_fd_cb (fd_handler=0x5555557704e0, data=<optimized out>, func=<optimized out>)
    at lib/ecore/ecore_private.h:347
No locals.
#8  _ecore_main_fd_handlers_call () at lib/ecore/ecore_main.c:2014
        fdh = 0x5555557704e0
#9  _ecore_main_loop_iterate_internal (once_only=once_only@entry=0) at lib/ecore/ecore_main.c:2402
        next_time = <optimized out>
        f = <optimized out>
        p = <optimized out>
#10 0x00007fd740f1d0b7 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1308
No locals.
#11 0x0000555555554b11 in main ()
No symbol table info available.
(gdb)
DaveMDS created this task.Sep 14 2017, 10:57 AM
DaveMDS updated the task description. (Show Details)Sep 14 2017, 11:03 AM
cedric triaged this task as Showstopper Issues priority.Sep 14 2017, 11:04 AM
cedric added a subscriber: stefan_schmidt.