[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: crash when pretty-printing
From: |
Dan Čermák |
Subject: |
Re: crash when pretty-printing |
Date: |
Sun, 07 Jun 2020 20:00:10 +0200 |
Out of curiosity: is ASAN also able to find the crash location?
Bruno Haible <bruno@clisp.org> writes:
> gdb couldn't tell me where the program is crashing. But valgrind can.
>
> $ valgrind --tool=memcheck --num-callers=20 --leak-check=yes
> --leak-resolution=high --show-reachable=yes poke/poke 2>&1 | tee valgrindlog
> ...
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B1E6: GC_promote_black_lists (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4A037: GC_try_to_collect_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AA1B: GC_collect_or_expand (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AC41: GC_allocobj (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E5002E: GC_generic_malloc_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E51297: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46EC8C: pvm_make_long_ulong (pvm-val.c:54)
> by 0x46ED0D: pvm_make_ulong (pvm-val.c:70)
> by 0x4834D4: pvm_execute_or_initialize (pvm.jitter:1680)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
> by 0x406C93: pk_cmd_exec (pk-cmd.c:626)
> by 0x40591C: pk_repl (pk-repl.c:339)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B20B: GC_promote_black_lists (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4A037: GC_try_to_collect_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AA1B: GC_collect_or_expand (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AC41: GC_allocobj (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E5002E: GC_generic_malloc_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E51297: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46EC8C: pvm_make_long_ulong (pvm-val.c:54)
> by 0x46ED0D: pvm_make_ulong (pvm-val.c:70)
> by 0x4834D4: pvm_execute_or_initialize (pvm.jitter:1680)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
> by 0x406C93: pk_cmd_exec (pk-cmd.c:626)
> by 0x40591C: pk_repl (pk-repl.c:339)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B251: GC_promote_black_lists (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4A037: GC_try_to_collect_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AA1B: GC_collect_or_expand (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AC41: GC_allocobj (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E5002E: GC_generic_malloc_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E51297: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46EC8C: pvm_make_long_ulong (pvm-val.c:54)
> by 0x46ED0D: pvm_make_ulong (pvm-val.c:70)
> by 0x4834D4: pvm_execute_or_initialize (pvm.jitter:1680)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
> by 0x406C93: pk_cmd_exec (pk-cmd.c:626)
> by 0x40591C: pk_repl (pk-repl.c:339)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B072: GC_is_black_listed (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48C2A: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48E90: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E511CA: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46F6C6: pvm_make_type (pvm-val.c:243)
> by 0x46F727: pvm_make_integral_type (pvm-val.c:256)
> by 0x48E29D: pvm_execute_or_initialize (pvm.jitter:4203)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
> by 0x406C93: pk_cmd_exec (pk-cmd.c:626)
> by 0x40591C: pk_repl (pk-repl.c:339)
> by 0x404D06: main (poke.c:681)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B07B: GC_is_black_listed (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48C2A: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48E90: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E511CA: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46F6C6: pvm_make_type (pvm-val.c:243)
> by 0x46F727: pvm_make_integral_type (pvm-val.c:256)
> by 0x48E29D: pvm_execute_or_initialize (pvm.jitter:4203)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
> by 0x406C93: pk_cmd_exec (pk-cmd.c:626)
> by 0x40591C: pk_repl (pk-repl.c:339)
> by 0x404D06: main (poke.c:681)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B03F: GC_is_black_listed (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48C2A: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48F75: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E56B77: GC_new_hblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AC01: GC_allocobj (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E5002E: GC_generic_malloc_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E51297: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46ED50: pvm_make_string (pvm-val.c:85)
> by 0x472716: pvm_make_exception (pvm-val.c:1206)
> by 0x46B7B5: pkl_asm_new (pkl-asm.c:1115)
> by 0x47262A: pvm_call_pretty_printer (pvm-val.c:1179)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x49C59E: pvm_execute_or_initialize (pvm.jitter:1216)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B09F: GC_is_black_listed (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48C2A: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48F75: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E56B77: GC_new_hblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E4AC01: GC_allocobj (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E5002E: GC_generic_malloc_inner (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E51297: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46ED50: pvm_make_string (pvm-val.c:85)
> by 0x472716: pvm_make_exception (pvm-val.c:1206)
> by 0x46B7B5: pkl_asm_new (pkl-asm.c:1115)
> by 0x47262A: pvm_call_pretty_printer (pvm-val.c:1179)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x49C59E: pvm_execute_or_initialize (pvm.jitter:1216)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B03F: GC_is_black_listed (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48C2A: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48E90: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E511CA: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46ED50: pvm_make_string (pvm-val.c:85)
> by 0x472724: pvm_make_exception (pvm-val.c:1207)
> by 0x46B7B5: pkl_asm_new (pkl-asm.c:1115)
> by 0x47262A: pvm_call_pretty_printer (pvm-val.c:1179)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x49C59E: pvm_execute_or_initialize (pvm.jitter:1216)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E48CBB: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48E90: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E511CA: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46ED50: pvm_make_string (pvm-val.c:85)
> by 0x472724: pvm_make_exception (pvm-val.c:1207)
> by 0x46B7B5: pkl_asm_new (pkl-asm.c:1115)
> by 0x47262A: pvm_call_pretty_printer (pvm-val.c:1179)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x49C59E: pvm_execute_or_initialize (pvm.jitter:1216)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B03F: GC_is_black_listed (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48C2A: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48F75: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E511CA: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46ED50: pvm_make_string (pvm-val.c:85)
> by 0x472724: pvm_make_exception (pvm-val.c:1207)
> by 0x46B7B5: pkl_asm_new (pkl-asm.c:1115)
> by 0x47262A: pvm_call_pretty_printer (pvm-val.c:1179)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x49C59E: pvm_execute_or_initialize (pvm.jitter:1216)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
>
> Conditional jump or move depends on uninitialised value(s)
> at 0x4E4B09F: GC_is_black_listed (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48C2A: GC_allochblk_nth (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E48F75: GC_allochblk (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E511CA: GC_generic_malloc_many (in
> /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x4E59654: GC_malloc (in /usr/lib/x86_64-linux-gnu/libgc.so.1.0.3)
> by 0x472B40: pvm_alloc (pvm-alloc.c:28)
> by 0x46ED26: pvm_make_box (pvm-val.c:76)
> by 0x46ED50: pvm_make_string (pvm-val.c:85)
> by 0x472724: pvm_make_exception (pvm-val.c:1207)
> by 0x46B7B5: pkl_asm_new (pkl-asm.c:1115)
> by 0x47262A: pvm_call_pretty_printer (pvm-val.c:1179)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x49C59E: pvm_execute_or_initialize (pvm.jitter:1216)
> by 0x482E08: pvm_execute_executable_routine (pvm.jitter:527)
> by 0x47C155: pvm_execute_routine (pvm.jitter:711)
> by 0x46E946: pvm_run (pvm.c:125)
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
>
> Jump to the invalid address stated on the next line
> at 0x434BD200000: ???
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
> by 0x406C93: pk_cmd_exec (pk-cmd.c:626)
> by 0x40591C: pk_repl (pk-repl.c:339)
> by 0x404D06: main (poke.c:681)
> Address 0x434bd200000 is not stack'd, malloc'd or (recently) free'd
>
>
> Process terminating with default action of signal 11 (SIGSEGV)
> Bad permissions for mapped region at address 0x434BD200000
> at 0x434BD200000: ???
> by 0x4726B1: pvm_call_pretty_printer (pvm-val.c:1192)
> by 0x471244: pvm_print_val_1 (pvm-val.c:856)
> by 0x471E25: pvm_print_val (pvm-val.c:1038)
> by 0x4159F2: pk_print_val (libpoke.c:789)
> by 0x406C93: pk_cmd_exec (pk-cmd.c:626)
> by 0x40591C: pk_repl (pk-repl.c:339)
> by 0x404D06: main (poke.c:681)
signature.asc
Description: PGP signature