On Tue, 1 Oct 2019 11:32:36 -0400
Kurt Mosiejczuk <k...@cranky.work> wrote:
> On Tue, Oct 01, 2019 at 04:15:51PM +0100, Stuart Henderson wrote:
>> On 2019/10/01 11:13, Kurt Mosiejczuk wrote:
>> > Unfortunately on my test amd64 box, valgrind still just abort traps on
>> > launch.
> 
>> > eisenhower$ valgrind
>> > Abort trap
>> > eisenhower$ valgrind /bin/ls
>> > Abort trap
>> > eisenhower$ valgrind python2.7
>> > Abort trap
>> > eisenhower$ valgrind python3.7
>> > Abort trap
>> > eisenhower$ valgrind /bin/true
>> > Abort trap
>> > eisenhower$
> 
>> Not sure about the pythons, but most things in base won't work due to pledge
> 
> True. However, it doesn't run even with a bare commandline. Even there
> it Abort traps.

Those problem don't repeat on my box.  Did you apply second diff from Asou?

valgrind /usr/bin/true

==95029== Memcheck, a memory error detector
==95029== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==95029== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
==95029== Command: /usr/bin/true
==95029== 
==95029== Invalid write of size 1
==95029==    at 0x4106F2C: ???
==95029==    by 0x4103968: ???
==95029==    by 0x4102F8E: ???
==95029==    by 0x4103C35: ???
==95029==  Address 0x4005310 is not stack'd, malloc'd or (recently) free'd
(snip)
==95029== Use of uninitialised value of size 8
==95029==    at 0x4A7C48C: _thread_finalize (stdlib/atexit.c:131)
==95029==    by 0x4A7C48C: __cxa_finalize (stdlib/atexit.c:153)
==95029==    by 0x4A60630: exit (stdlib/exit.c:54)
==95029==    by 0x109141: ??? (in /usr/bin/true)
==95029== 
==95029== 
==95029== FILE DESCRIPTORS: 3 open at exit.
==95029== Open file descriptor 2:
==95029==    <inherited from parent>
==95029== 
==95029== Open file descriptor 1:
==95029==    <inherited from parent>
==95029== 
==95029== Open file descriptor 0:
==95029==    <inherited from parent>
==95029== 
==95029== 
==95029== HEAP SUMMARY:
==95029==     in use at exit: 0 bytes in 0 blocks
==95029==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==95029== 
==95029== All heap blocks were freed -- no leaks are possible
==95029== 
==95029== For counts of detected and suppressed errors, rerun with: -v
==95029== Use --track-origins=yes to see where uninitialised values come from
==95029== ERROR SUMMARY: 3120 errors from 536 contexts (suppressed: 0 from 0)

* * *
valgrind python -c print('hello')

==98951== Memcheck, a memory error detector
==98951== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==98951== Using Valgrind-3.10.1 and LibVEX; rerun with -h for copyright info
==98951== Command: python -c print('hello')
==98951== 
==98951== Invalid write of size 1
==98951==    at 0x4106F2C: ???
==98951==    by 0x4103968: ???
==98951==    by 0x4102F8E: ???
==98951==    by 0x4103C35: ???
==98951==  Address 0x4005bd0 is not stack'd, malloc'd or (recently) free'd
==98951== 
(snip)
==98951== Invalid read of size 4
==98951==    at 0x4BDB965: PyObject_Free (in /usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4B7C76D: PyGrammar_RemoveAccelerators (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C6CD68: Py_Finalize (in /usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C84E01: Py_Main (in /usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x109141: ??? (in /usr/local/bin/python)
==98951==  Address 0x4f09020 is 272 bytes inside a block of size 556 free'd
==98951==    at 0x404D79A: realloc (in 
/usr/local/lib/valgrind/vgpreload_memcheck-amd64-openbsd.so)
==98951==    by 0x4B810C5: PyTokenizer_FromString (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4B7DD04: PyParser_ParseStringFlagsFilenameEx (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C6EBB9: PyParser_ASTFromString (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C6DE40: PyRun_StringFlags (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C46D20: PyEval_EvalFrameEx (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C3DCD5: PyEval_EvalCodeEx (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C496CA: fast_function (in /usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C407EC: PyEval_EvalFrameEx (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C3DCD5: PyEval_EvalCodeEx (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C496CA: fast_function (in /usr/local/lib/libpython2.7.so.0.0)
==98951==    by 0x4C407EC: PyEval_EvalFrameEx (in 
/usr/local/lib/libpython2.7.so.0.0)
==98951== 
==98951== Use of uninitialised value of size 8
==98951==    at 0x4A7C48C: _thread_finalize (stdlib/atexit.c:131)
==98951==    by 0x4A7C48C: __cxa_finalize (stdlib/atexit.c:153)
==98951==    by 0x4A60630: exit (stdlib/exit.c:54)
==98951==    by 0x109148: ??? (in /usr/local/bin/python)
==98951== 
==98951== 
==98951== FILE DESCRIPTORS: 3 open at exit.
==98951== Open file descriptor 2:
==98951==    <inherited from parent>
==98951== 
==98951== Open file descriptor 1:
==98951==    <inherited from parent>
==98951== 
==98951== Open file descriptor 0:
==98951==    <inherited from parent>
==98951== 
==98951== 
==98951== HEAP SUMMARY:
==98951==     in use at exit: 888,239 bytes in 447 blocks
==98951==   total heap usage: 3,093 allocs, 2,646 frees, 3,363,017 bytes 
allocated
==98951== 
==98951== LEAK SUMMARY:
==98951==    definitely lost: 0 bytes in 0 blocks
==98951==    indirectly lost: 0 bytes in 0 blocks
==98951==      possibly lost: 528 bytes in 1 blocks
==98951==    still reachable: 887,711 bytes in 446 blocks
==98951==         suppressed: 0 bytes in 0 blocks
==98951== Rerun with --leak-check=full to see details of leaked memory
==98951== 
==98951== For counts of detected and suppressed errors, rerun with: -v
==98951== Use --track-origins=yes to see where uninitialised values come from
==98951== ERROR SUMMARY: 16352 errors from 876 contexts (suppressed: 0 from 0)

Reply via email to