linux-trace-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Federico Di Pierro <nierro92@gmail.com>
To: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: linux-trace-users <linux-trace-users@vger.kernel.org>
Subject: Re: arm64 execve/clone sys_exit tracepoints
Date: Thu, 17 Mar 2022 15:02:29 +0100	[thread overview]
Message-ID: <CAMZm_CneZ+Cd4r2Z22KinWzoZYmBrG50SnLUDkize+CZDKyR0A@mail.gmail.com> (raw)
In-Reply-To: <1491155105.129307.1646751686676.JavaMail.zimbra@efficios.com>

Sorry for the late reply, I had a (very nice!) laser eye surgery last week :)

> I'm not sure about your clone issue, but wrt execve, I know there
> may be some discrepancy when exec turns a non-compat executable into
> a compat one and vice-versa. Do you exec a binary with a different
> bitness, and therefore a different syscall table, on return from exec ?

I double checked, and it seems like we are calling normal 64bit executables.
To test, I just used a simple C script that when run without arguments,
calls itself with execve + 1 argument (to avoid the recursion),
therefore a 64bit executable that calls another 64bit executable.
Unfortunately the issue is still present.
Thanks for the hint though, it was very helpful!

Federico

Il giorno mar 8 mar 2022 alle ore 16:01 Mathieu Desnoyers
<mathieu.desnoyers@efficios.com> ha scritto:
>
> ----- On Mar 8, 2022, at 5:11 AM, Federico Di Pierro nierro92@gmail.com wrote:
>
> > Hi everyone,
> >
> > While testing Falco on arm64 my team and I encountered some weird
> > issues; basically, it seems like execve() exit tracepoint is never
> > called.
> > Moreover, the clone() exit tracepoint referred to the child process is
> > also missing.
> > The issue is present on both the kmod and eBPF probe.
> >
> > I tested on amznlinux2 with kernel 5.10.96-90.460.amzn2.aarch64, but
> > other team members tested on other kernel versions too (down to
> > 4.14.X).
> > I was also able to reproduce the problem using bpftrace tool: hooking
> > on tracepoint:syscalls:sys_exit_execve; no event is received:
> >
> > bpftrace -e 'tracepoint:syscalls:sys_exit_execve { printf("execve!\n"); }'
> >
> > Since sys_enter tracepoints are indeed called, we'd expect the
> > sys_exit ones to be called too, just like it happens on x86.
> > The question is: are we missing anything obvious here?
>
> I'm not sure about your clone issue, but wrt execve, I know there
> may be some discrepancy when exec turns a non-compat executable into
> a compat one and vice-versa. Do you exec a binary with a different
> bitness, and therefore a different syscall table, on return from exec ?
>
> Thanks,
>
> Mathieu
>
>
> >
> > Thank you very much for your time,
> > Regards
> > Federico
>
> --
> Mathieu Desnoyers
> EfficiOS Inc.
> http://www.efficios.com

  reply	other threads:[~2022-03-17 14:02 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-08 10:11 arm64 execve/clone sys_exit tracepoints Federico Di Pierro
2022-03-08 15:01 ` Mathieu Desnoyers
2022-03-17 14:02   ` Federico Di Pierro [this message]
2022-04-05 13:21 ` Federico Di Pierro

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=CAMZm_CneZ+Cd4r2Z22KinWzoZYmBrG50SnLUDkize+CZDKyR0A@mail.gmail.com \
    --to=nierro92@gmail.com \
    --cc=linux-trace-users@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    /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;
as well as URLs for NNTP newsgroup(s).