Linux Perf Users
 help / color / mirror / Atom feed
From: Milian Wolff <milian.wolff@kdab.com>
To: linux-perf-users@vger.kernel.org,
	Arnaldo Carvalho de Melo <acme@kenel.org>
Subject: perf 6.9-1 (archlinux) crashes during recording of cycles + raw_syscalls
Date: Tue, 04 Jun 2024 13:44:18 +0200	[thread overview]
Message-ID: <23879991.0LEYPuXRzz@milian-workstation> (raw)

Hey all,

the following command crashes perf for me, is this still an issue upstream and 
should I report it to arch for backporting? I cannot build the official perf/
core branch, so I am afraid I cannot test it myself there:

```
sudo /usr/bin/perf record -z --call-graph dwarf -e cycles -e 
raw_syscalls:sys_enter ls
...
[ perf record: Woken up 3 times to write data ]
malloc(): invalid next size (unsorted)
Aborted
```

Backtrace with GDB + debuginfod:
```
malloc(): invalid next size (unsorted)

Thread 1 "perf" received signal SIGABRT, Aborted.
__pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, 
no_tid=no_tid@entry=0) at pthread_kill.c:44
Downloading source file /usr/src/debug/glibc/glibc/nptl/pthread_kill.c
44            return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO 
(ret) : 0;                                                                                                                                                                     
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, 
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007ffff6ea8eb3 in __pthread_kill_internal (threadid=<optimized out>, 
signo=6) at pthread_kill.c:78
#2  0x00007ffff6e50a30 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/
raise.c:26
#3  0x00007ffff6e384c3 in __GI_abort () at abort.c:79
#4  0x00007ffff6e39354 in __libc_message_impl (fmt=fmt@entry=0x7ffff6fc22ea 
"%s\n") at ../sysdeps/posix/libc_fatal.c:132
#5  0x00007ffff6eb3085 in malloc_printerr (str=str@entry=0x7ffff6fc5850 
"malloc(): invalid next size (unsorted)") at malloc.c:5772
#6  0x00007ffff6eb657c in _int_malloc (av=av@entry=0x7ffff6ff6ac0 
<main_arena>, bytes=bytes@entry=368) at malloc.c:4081
#7  0x00007ffff6eb877e in __libc_calloc (n=<optimized out>, 
elem_size=<optimized out>) at malloc.c:3754
#8  0x000055555569bdb6 in perf_session.do_write_header ()
#9  0x00005555555a373a in __cmd_record.constprop.0 ()
#10 0x00005555555a6846 in cmd_record ()
#11 0x000055555564db7f in run_builtin ()
#12 0x000055555558ed77 in main ()
```

Valgrind memcheck:
```
==45136== Invalid write of size 8
==45136==    at 0x2B38A5: perf_event__synthesize_id_sample (in /usr/bin/perf)
==45136==    by 0x157069: __cmd_record.constprop.0 (in /usr/bin/perf)
==45136==    by 0x15A845: cmd_record (in /usr/bin/perf)
==45136==    by 0x201B7E: run_builtin (in /usr/bin/perf)
==45136==    by 0x142D76: main (in /usr/bin/perf)
==45136==  Address 0x6a866a8 is 0 bytes after a block of size 40 alloc'd
==45136==    at 0x4849BF3: calloc (vg_replace_malloc.c:1675)
==45136==    by 0x3574AB: zalloc (in /usr/bin/perf)
==45136==    by 0x1570E0: __cmd_record.constprop.0 (in /usr/bin/perf)
==45136==    by 0x15A845: cmd_record (in /usr/bin/perf)
==45136==    by 0x201B7E: run_builtin (in /usr/bin/perf)
==45136==    by 0x142D76: main (in /usr/bin/perf)
==45136== 
==45136== Syscall param write(buf) points to unaddressable byte(s)
==45136==    at 0x575953D: __libc_write (write.c:26)
==45136==    by 0x575953D: write (write.c:24)
==45136==    by 0x35761F: ion (in /usr/bin/perf)
==45136==    by 0x357778: writen (in /usr/bin/perf)
==45136==    by 0x1548F7: record__write (in /usr/bin/perf)
==45136==    by 0x15708A: __cmd_record.constprop.0 (in /usr/bin/perf)
==45136==    by 0x15A845: cmd_record (in /usr/bin/perf)
==45136==    by 0x201B7E: run_builtin (in /usr/bin/perf)
==45136==    by 0x142D76: main (in /usr/bin/perf)
==45136==  Address 0x6a866a8 is 0 bytes after a block of size 40 alloc'd
==45136==    at 0x4849BF3: calloc (vg_replace_malloc.c:1675)
==45136==    by 0x3574AB: zalloc (in /usr/bin/perf)
==45136==    by 0x1570E0: __cmd_record.constprop.0 (in /usr/bin/perf)
==45136==    by 0x15A845: cmd_record (in /usr/bin/perf)
==45136==    by 0x201B7E: run_builtin (in /usr/bin/perf)
==45136==    by 0x142D76: main (in /usr/bin/perf)
==45136==
```

Thanks
-- 
Milian Wolff | milian.wolff@kdab.com | Senior Software Engineer
KDAB (Deutschland) GmbH, a KDAB Group company
Tel: +49-30-521325470
KDAB - The Qt, C++ and OpenGL Experts


             reply	other threads:[~2024-06-04 11:44 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-04 11:44 Milian Wolff [this message]
2024-06-04 13:49 ` perf 6.9-1 (archlinux) crashes during recording of cycles + raw_syscalls Arnaldo Carvalho de Melo
2024-06-04 14:12   ` Arnaldo Carvalho de Melo
2024-06-04 18:48     ` Ian Rogers
2024-06-04 19:02       ` Arnaldo Carvalho de Melo
2024-06-06 22:20         ` Namhyung Kim
2024-06-06 23:17           ` Ian Rogers
2024-06-07 18:26             ` Namhyung Kim
2024-06-04 20:04     ` Milian Wolff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=23879991.0LEYPuXRzz@milian-workstation \
    --to=milian.wolff@kdab.com \
    --cc=acme@kenel.org \
    --cc=linux-perf-users@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox