Linux DTrace development list
 help / color / mirror / Atom feed
From: Kris Van Hees <noreply@github.com>
To: dtrace@lists.linux.dev
Subject: [oracle/dtrace] 47928b: uprobe: fix memory leak
Date: Wed, 29 Apr 2026 13:01:23 -0700	[thread overview]
Message-ID: <oracle/dtrace/push/refs/heads/dev-queue/505124-d3fd10@github.com> (raw)

  Branch: refs/heads/dev-queue
  Home:   https://github.com/oracle/dtrace
  Commit: 47928b7beb2f1804577d3429754dacb7939bb18c
      https://github.com/oracle/dtrace/commit/47928b7beb2f1804577d3429754dacb7939bb18c
  Author: Kris Van Hees <kris.van.hees@oracle.com>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    M libdtrace/dt_prov_uprobe.c

  Log Message:
  -----------
  uprobe: fix memory leak

Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
Reviewed-by: Nick Alcock <nick.alcock@oracle.com>


  Commit: c99827553e77a127b2d94b55e2e6f356948190af
      https://github.com/oracle/dtrace/commit/c99827553e77a127b2d94b55e2e6f356948190af
  Author: Kris Van Hees <kris.van.hees@oracle.com>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    M libdtrace/dt_btf.c
    M libdtrace/dt_btf.h

  Log Message:
  -----------
  btf: btf argument to dt_btf_get_string() should be const

Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
Reviewed-by: Nick Alcock <nick.alcock@oracle.com>


  Commit: 47e40f1a1754a4562911cd9bc7e3ec78529d3b49
      https://github.com/oracle/dtrace/commit/47e40f1a1754a4562911cd9bc7e3ec78529d3b49
  Author: Kris Van Hees <kris.van.hees@oracle.com>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    M libdtrace/dt_btf.c

  Log Message:
  -----------
  btf: use dt_btf_real_type_by_id() to resolve types

Functions that need to check type data operate on the real type rather
than a typedef or a type with modifiers.  Similarly, when a type of a
function is needed, the prototype (BTF type BTF_KIND_PROTO) is what is
really needed.

Introducing dt_btf_real_type_by_id() removed duplication of code in other
functions.

Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
Reviewed-by: Nick Alcock <nick.alcock@oracle.com>


  Commit: d846ba88e5142d212fb13244a02e5311e904d58b
      https://github.com/oracle/dtrace/commit/d846ba88e5142d212fb13244a02e5311e904d58b
  Author: Kris Van Hees <kris.van.hees@oracle.com>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    M libdtrace/dt_btf.c
    M libdtrace/dt_btf.h

  Log Message:
  -----------
  btf: add dt_btf_func_is_traceable()

Add a function to determine whether a function (given by BTF id) can be
traced using BPF fentry/fexit probes.  It implements checks inspired by
btf_distill_func_proto() in kernel/bpf/btf.c.

Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
Reviewed-by: Nick Alcock <nick.alcock@oracle.com>


  Commit: 208b194ea51ac4bad2afeb218638b0df05f4ac64
      https://github.com/oracle/dtrace/commit/208b194ea51ac4bad2afeb218638b0df05f4ac64
  Author: Kris Van Hees <kris.van.hees@oracle.com>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    M libdtrace/dt_prov_fbt.c

  Log Message:
  -----------
  fbt: do not provide untraceable functions (for fprobes)

Ensure that we do not provide FBT probes for functions that cannot be
probed using BPF fentry/fexit probes if fprobes are the default.

The provide_probe() function now takes a dt_module_t argument so that
dt_btf_func_is_traceable() can be called.

Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
Reviewed-by: Nick Alcock <nick.alcock@oracle.com>


  Commit: d3fd1018dc550b01dff15d90adad64c97d3fc616
      https://github.com/oracle/dtrace/commit/d3fd1018dc550b01dff15d90adad64c97d3fc616
  Author: Kris Van Hees <kris.van.hees@oracle.com>
  Date:   2026-04-29 (Wed, 29 Apr 2026)

  Changed paths:
    M libdtrace/dt_prov_fbt.c
    A test/unittest/codegen/tst.fbt-return.d
    A test/unittest/codegen/tst.fbt-return.r

  Log Message:
  -----------
  fbt: retrieve function return value using helper

We were causing BPF verifier errors when trying to access the return value
of some functions due to incorrect calculation of the offset to read from.
Rather than implementing the more complex logic needed to calculate the
proper offset of the return value, we can just use the bpf_get_func_ret()
BPF helper.  This does not impose a performance decrease because that
helper gets inlined by the BPF verifier.

Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
Reviewed-by: Nick Alcock <nick.alcock@oracle.com>


Compare: https://github.com/oracle/dtrace/compare/5051249e1bd0...d3fd1018dc55

To unsubscribe from these emails, change your notification settings at https://github.com/oracle/dtrace/settings/notifications

                 reply	other threads:[~2026-04-29 20:01 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=oracle/dtrace/push/refs/heads/dev-queue/505124-d3fd10@github.com \
    --to=noreply@github.com \
    --cc=dtrace@lists.linux.dev \
    /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