Linux Perf Users
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Milian Wolff <milian.wolff@kdab.com>
Cc: linux-perf-users@vger.kernel.org,
	Namhyung Kim <namhyung@kernel.org>,
	Arnaldo Carvalho de Melo <acme@kenel.org>
Subject: Re: perf 6.9-1 (archlinux) crashes during recording of cycles + raw_syscalls
Date: Tue, 4 Jun 2024 10:49:57 -0300	[thread overview]
Message-ID: <Zl8bhWfHSXxs35r2@x1> (raw)
In-Reply-To: <23879991.0LEYPuXRzz@milian-workstation>

On Tue, Jun 04, 2024 at 01:44:18PM +0200, Milian Wolff wrote:
> 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)

I reproduced this all the way back to 6.8, trying to bisect now, thanks
for the report,

- Arnaldo
 
> 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 13:50 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-04 11:44 perf 6.9-1 (archlinux) crashes during recording of cycles + raw_syscalls Milian Wolff
2024-06-04 13:49 ` Arnaldo Carvalho de Melo [this message]
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=Zl8bhWfHSXxs35r2@x1 \
    --to=acme@kernel.org \
    --cc=acme@kenel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=milian.wolff@kdab.com \
    --cc=namhyung@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