[DTrace-devel] [External] : [oracle/dtrace] e1487c: syscall: fix syscall probe argument handling
Kris Van Hees
noreply at github.com
Wed Mar 25 19:33:01 UTC 2026
Branch: refs/heads/dev-debian
Home: https://github.com/oracle/dtrace
Commit: e1487c82763c72e59a68deeefc5936dc742431b9
https://github.com/oracle/dtrace/commit/e1487c82763c72e59a68deeefc5936dc742431b9
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M libdtrace/dt_prov_dtrace.c
M libdtrace/dt_prov_fbt.c
M libdtrace/dt_prov_sdt.c
M libdtrace/dt_prov_syscall.c
M libdtrace/dt_provider_tp.c
M libdtrace/dt_provider_tp.h
Log Message:
-----------
syscall: fix syscall probe argument handling
Kernel commit a544d9a66bdf
("tracing: Have syscall trace events read user space string") (added in
6.19-rc1) causes special fields to be added to the tracepoint format
file for data strings that are faulted in. We need to account for this
when determining the number of arguments for syscall tracepoints.
We introduce support for a valid_arg() callback function that providers
can implement to support skipping initial non-common fields and also to
stop processing fields as arguments. The syscall provider uses this to
skip the __syscall_nr field, and to stop argument processing when the
first dynamic string field is found.
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: aa97325ebbc8f6057af1e9b867dd255e27ff7561
https://github.com/oracle/dtrace/commit/aa97325ebbc8f6057af1e9b867dd255e27ff7561
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M libdtrace/dt_pid.c
Log Message:
-----------
pid: USDT probes cannot have "-" as function name
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: 947536cc6f15c58a51d81d143d779b42a247e4eb
https://github.com/oracle/dtrace/commit/947536cc6f15c58a51d81d143d779b42a247e4eb
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M test/unittest/consumer/tst.merge_ranges_bug25767469.x
Log Message:
-----------
test: skip when /proc/kallmodsyms is not present
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: 18cbc6520da63397369cb93ca2e772e00d31f3da
https://github.com/oracle/dtrace/commit/18cbc6520da63397369cb93ca2e772e00d31f3da
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M include/sys/sol_procfs.h
M libdtrace/dt_pid.c
M libproc/Psymtab.c
Log Message:
-----------
pid: ensure pid offset probes perform lookup with adjusted address
For PIE executables and libraries, pid offset probes need to have the
address adjusted based on the actual segment load address.
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Nick Alcock <nick.alcock at oracle.com>
Commit: 4bf1c03c97698a1ecef592bd0ced181a3579dabf
https://github.com/oracle/dtrace/commit/4bf1c03c97698a1ecef592bd0ced181a3579dabf
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M test/unittest/pid/tst.dash.sh
Log Message:
-----------
test: make tst.dash.sh work for position-independent code
When code is compiled as position-independent code, the logic for
comparing the reported PC at probe firing needs to adjust for the
fact that the reported addresses are absolute whereas the addresses
obtained from the executable are relative to the mapping base
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: 2e218dbd9b59c424f2db0518413ec60da705c930
https://github.com/oracle/dtrace/commit/2e218dbd9b59c424f2db0518413ec60da705c930
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M test/unittest/usdt/tst.pidprobes.sh
Log Message:
-----------
test: adjust tst.pidprobes.sh to account for PIE executables
When the test executable is compiled as position independent code,
the comparison with expected results fails unless the reported PC
values are adjusted based on the actual load address. This is safe
to do in general, because for non-PIE cases the adjustment will be
0.
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: e92a01d0468d5a5b10d337272d6ac4564797aa9d
https://github.com/oracle/dtrace/commit/e92a01d0468d5a5b10d337272d6ac4564797aa9d
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M dtrace.spec
R test/unittest/arrays/tst.ctf-dynsized-bounds-runtime.d
A test/unittest/arrays/tst.ctf-dynsized-bounds-runtime.sh
Log Message:
-----------
test: account for member name change in mm_struct
The flexible array at the end of the mm_struct has changed name in newer
kernels. Rather than depending on a particular name, we can simply get
the name of the last member (since that is there the flexible array is
always found) and try to use that.
The testsuite gains a dependency on bpftool for this test.
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: 8b318163c51a1eae14a2d1757c7309531be99dca
https://github.com/oracle/dtrace/commit/8b318163c51a1eae14a2d1757c7309531be99dca
Author: Eugene Loh <eugene.loh at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M libdtrace/dt_pid.c
Log Message:
-----------
Fix init_disassemble_info typo
Signed-off-by: Eugene Loh <eugene.loh at oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>
Commit: 8f10a0fee5d8904e1dab39635602d5dd0cfa4da2
https://github.com/oracle/dtrace/commit/8f10a0fee5d8904e1dab39635602d5dd0cfa4da2
Author: Eugene Loh <eugene.loh at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M NEWS
Log Message:
-----------
NEWS: Fix indentation
Signed-off-by: Eugene Loh <eugene.loh at oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>
Commit: f98c151c341b12e4fa16bfab1bae751d37064b3d
https://github.com/oracle/dtrace/commit/f98c151c341b12e4fa16bfab1bae751d37064b3d
Author: Eugene Loh <eugene.loh at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M NEWS
M dtrace.spec
Log Message:
-----------
NEWS/dtrace.spec: 2.0.5-2 release
Update version to 2.0.5-2 in a few overlooked places.
Signed-off-by: Eugene Loh <eugene.loh at oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>
Commit: 104e8b1df16c7d49378bf74958c17145b3be4390
https://github.com/oracle/dtrace/commit/104e8b1df16c7d49378bf74958c17145b3be4390
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
R uts/common/sys/mnttab.h
Log Message:
-----------
uts: remove unused header file
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Nick Alcock <nick.alcock at oracle.com>
Commit: dfaa55f90f881c0248c983aaa564ad8579742057
https://github.com/oracle/dtrace/commit/dfaa55f90f881c0248c983aaa564ad8579742057
Author: Eugene Loh <eugene.loh at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M dtprobed/dtprobed.c
Log Message:
-----------
dtprobed: use /proc/$pid/map_files, not the filename of the mapping
Instead of using prf->prf_mapname (which resolves to the mapped file's
target), use Pmap_mapfile_name() to get the actual
/proc/$pid/map_files/* path. These magic symlinks can be opened even
when their corresponding files are deleted or in an inaccessible
filesystem namespace, ensuring we can read the mapping contents
reliably. DTrace already does this to read mappings during USDT probe
lookup.
(We still use prf->prf_mapname to determine the module name used in the
dof helper, and thus ultimately in the probespec, because that should be
an actual user-readable module name, not some random address-space-like
filename: it doesn't matter that that name might not exist on the
filesystem. Thanks to Eugene Loh for spotting this and Kris van Hees
for fixing it.)
Fixes issues with probes in paths like /home when dtprobed
is sandboxed by systemd.
Tested on both systemd and non-systemd (non-jailed) systems, with USDT
programs running out of /tmp, /usr/local and /home.
Signed-off-by: Nick Alcock <nick.alcock at oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>
Commit: 9a9f58ec52e4656bb9c63c84fc8e62d843d76bf7
https://github.com/oracle/dtrace/commit/9a9f58ec52e4656bb9c63c84fc8e62d843d76bf7
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M test/unittest/arrays/err.D_UNKNOWN.uregs_toobig.aarch64.x
M test/unittest/arrays/err.D_UNKNOWN.uregs_toobig.x86_64.x
M test/unittest/codegen/err.deref_0.r.p
M test/unittest/codegen/err.deref_1.r.p
M test/unittest/codegen/err.deref_i0.r.p
M test/unittest/codegen/err.deref_i1.r.p
M test/unittest/codegen/err.deref_string-assoc.r.p
M test/unittest/codegen/err.deref_string-gvar.r.p
M test/unittest/codegen/err.deref_string-lvar.r.p
M test/unittest/codegen/err.deref_string-tvar.r.p
M test/unittest/preprocessor/err.ifdefincomp.r.p
M test/unittest/preprocessor/err.incompelse.r.p
M test/utils/clean_probes.sh
Log Message:
-----------
Adjust paths for common executables
Favour /bin/* over /usr/bin/* for things like bash and sed.
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: 0c310d3a3c3ca34604a604be1ee904a82f1c8d26
https://github.com/oracle/dtrace/commit/0c310d3a3c3ca34604a604be1ee904a82f1c8d26
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M libdtrace/dt_link.c
A test/unittest/usdt/err.prov-too-long.r
A test/unittest/usdt/err.prov-too-long.sh
Log Message:
-----------
usdt: enforce provider name size limit
Since USDT provider names have a PID appended to them, the base provider
name cannot be longer than 53 characters (PID can take up to 10 chars).
This patch also fixes error reporting for linker errors.
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: afe1f3c984b699b67f9747b845b542802707a277
https://github.com/oracle/dtrace/commit/afe1f3c984b699b67f9747b845b542802707a277
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M Makefunctions
M configure
Log Message:
-----------
configure: add support for --(disable|enable)-dependency-tracking
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: 8bd5dd1bb1e0ee22677346c255557a2e1c2518c8
https://github.com/oracle/dtrace/commit/8bd5dd1bb1e0ee22677346c255557a2e1c2518c8
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M configure
Log Message:
-----------
configure: add support for --disable-option-checking
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Reviewed-by: Eugene Loh <eugene.loh at oracle.com>
Commit: 0c3bf8a5bc50988bb12114d4ba27c024ef3e5340
https://github.com/oracle/dtrace/commit/0c3bf8a5bc50988bb12114d4ba27c024ef3e5340
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
M configure
Log Message:
-----------
configure: accept standard installation directory options
Even though we do not use them, the GNU Coding Standards expect configure
to accept the following installation directory options as well:
--infodir=PREFIX/share/info Info documentation directory
--sysconfdir=PREFIX/etc System configuration directory
--localstatedir=PREFIX/var Runtime system data directory
--runstatedir=PREFIX/var/run Per-process data directory
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Commit: 61f29b63dd1b1b9b0323ded00bb6d360711a4973
https://github.com/oracle/dtrace/commit/61f29b63dd1b1b9b0323ded00bb6d360711a4973
Author: Kris Van Hees <kris.van.hees at oracle.com>
Date: 2026-03-25 (Wed, 25 Mar 2026)
Changed paths:
A dists/Build
A dists/debian/changelog
A dists/debian/control
A dists/debian/copyright
A dists/debian/dtrace-tests.install
A dists/debian/dtrace-tests.lintian-overrides
A dists/debian/dtrace.docs
A dists/debian/dtrace.install
A dists/debian/dtrace.lintian-overrides
A dists/debian/dtrace.manpages
A dists/debian/libdtrace2-dev.install
A dists/debian/libdtrace2.install
A dists/debian/libdtrace2.lintian-overrides
A dists/debian/libdtrace2.manpages
A dists/debian/mkChangelog
A dists/debian/patches/debian-configure.patch
A dists/debian/patches/series
A dists/debian/rules
A dists/debian/source/format
Log Message:
-----------
Add packaging configuration for Debian
Packaging configuration files for Debian are provided in dists/debian.
Sample steps to build DEB packages:
- make dist
- cp dtrace-x.y.z.tar.bz2 $D/dtrace_x.y.z.orig.tar.bz2
- cd $D
- tar -jxpSf dtrace_x.y.z.orig.tar.bz2
- cd dtrace-x.y.z
- make prep-debian
- debuild
Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
Compare: https://github.com/oracle/dtrace/compare/112f2c960b4d...61f29b63dd1b
To unsubscribe from these emails, change your notification settings at https://github.com/oracle/dtrace/settings/notifications
More information about the DTrace-devel
mailing list