diff mbox series

[AUH] strace: upgrading to 7.3 SUCCEEDED

Message ID 010101a1674f2fc0-7fd53689-cb2a-4a6e-aeab-b5e03c78b75c-000000@us-west-2.amazonses.com
State New
Headers show
Series [AUH] strace: upgrading to 7.3 SUCCEEDED | expand

Commit Message

auh@yoctoproject.org Oct. 23, 2026, 5:50 a.m. UTC
Hello,

this email is a notification from the Auto Upgrade Helper
that the automatic attempt to upgrade the recipe(s) *strace* to *7.3* has Succeeded.

Next steps:
    - apply the patch: git am 0001-strace-upgrade-7.2-7.3.patch
    - check the changes to upstream patches and summarize them in the commit message,
    - compile an image that contains the package
    - perform some basic sanity tests
    - amend the patch and sign it off: git commit -s --reset-author --amend
    - send it to the appropriate mailing list

Alternatively, if you believe the recipe should not be upgraded at this time,
you can fill RECIPE_NO_UPDATE_REASON in respective recipe file so that
automatic upgrades would no longer be attempted.

Please review the attached files for further information and build/update failures.
Any problem please file a bug at https://bugzilla.yoctoproject.org/enter_bug.cgi?product=Automated%20Update%20Handler

Regards,
The Upgrade Helper

-- >8 --
From 064e6744ab06836ab4095af82ede35dbda186891 Mon Sep 17 00:00:00 2001
From: Upgrade Helper <auh@yoctoproject.org>
Date: Fri, 23 Oct 2026 05:41:11 +0000
Subject: [PATCH] strace: upgrade 7.2 -> 7.3

Prepare for 7.3 release.

Update copyright headers.
Headers updated automatically using maint/update_copyright_years.sh
script.

Fix preprocessor indentation.
Indent the C preprocessor directives to reflect their nesting
using the following script:

$ cppi -l $(git grep -El '^[[:space:]]*#[[:space:]]*(if|ifdef|ifndef|elif|else|e
ndif|define|pragma)[[:space:]]' src tests |grep -Ev '\.(in|md|sh|test)$') |while
read f; do
cppi < "$f" > "$f".cppi; mv "$f".cppi "$f"
done

time: decode auxiliary clock IDs.
Linux kernel commit 9094c72c3d81 ("time: Introduce auxiliary
POSIX clocks") reserves CLOCK_AUX through CLOCK_AUX_LAST for
auxiliary clocks.  Decode those IDs in all xlat modes.

Keep the helpers that include <linux/time.h> in separate
translation units to avoid conflicts with libc time definitions.

Assisted-by: OpenCode:gpt-6-sol

bundled: add linux/time.h from Linux v7.3.
Auxiliary clock IDs were introduced by Linux kernel commit
9094c72c3d81 ("time: Introduce auxiliary POSIX clocks").  Bundle
the UAPI header so CLOCK_AUX and its range are available when the
host kernel headers predate this change.

time: always decode dynamic clock IDs.
The dynamic clock decoder is conditional on CLOCKID_TO_FD, which is
not defined by the UAPI headers, glibc, or musl.  Supply local
definitions so these IDs are decoded on those systems.  Define
CPUCLOCK_CLOCK_MASK separately for systems that provide CLOCKID_TO_FD
but not this mask.

Show the numeric ID alongside its symbolic interpretation because
the dynamic-clock macros are non-standard.  Mask off the per-thread
bit when looking up CPU clock names, and avoid nested comments in
verbose output.  Print the numeric CPU-clock type when unknown.

Suggested-by: Dmitry V. Levin <ldv@strace.io>
Link: #discussion_r3830577708
Assisted-by: OpenCode:gpt-6-sol

tests: add dedicated clock ID decoding tests.
Existing clock syscall tests do not cover every xlat style.  Add a
focused clock_getres test in abbreviated, raw, and verbose modes so
later clock ID decoder changes can be checked without duplicating
the syscall tests.

Keep <linux/time.h> in a separate test compilation unit to avoid
conflicts with libc time definitions in the test program.

Assisted-by: OpenCode:gpt-6-sol

time: fix compilation of CLOCKID_TO_FD branch.
Without braces around the FD_TO_CLOCKID branch, its else has no
matching if, so the decoder cannot compile when CLOCKID_TO_FD
is defined.  Apparently, this code has never been enabled.

tests: check zero-nstype setns for user namespaces.
A successful setns(fd, 0) with a user-namespace descriptor must
report the new user namespace ID under --namespace=new.  Check this
both with ordinary procfs and with procfs mounted from an ancestor
PID namespace.

The earlier explicit-nstype test shares the child-created namespace
and descriptor-passing setup.  Since joining a user namespace cannot
be undone by joining its ancestor, run the zero-nstype call in its
own executable instead of following the explicit call.

Assisted-by: OpenCode:gpt-6-sol

setns: decode namespace transitions with zero nstype.
When nstype is zero, setns derives the namespace type from its fd.
Read the fd target through the procfs-aware helper, validate its
type, and report the resulting namespace ID.  Existing PID and time
namespace handling also applies to this case.

Assisted-by: Antigravity:Gemini-3.5-Flash (commit log)
Assisted-by: OpenCode:gpt-6-sol

unshare: report PID and time namespaces for future children.
unshare(CLONE_NEWPID) and unshare(CLONE_NEWTIME) change the
namespaces for future children, not those of the caller.  Reading
/proc/<pid>/ns/pid or time after either syscall reports an old ID.
Read pid_for_children and time_for_children instead.

The pid_for_children link can be empty until the first child enters
the new PID namespace.  Omit that ID when unavailable rather than
print an empty field or the caller's old namespace.  Update the
unshare test to check the child namespace links and their formatting,
including separate PID and time namespace calls when supported.

Assisted-by: OpenCode:gpt-6-sol

setns: report PID and time namespaces for future children.
A successful setns into a PID or time namespace changes the
namespace for future children, not the caller's current namespace.
Read pid_for_children or time_for_children after the syscall so the
return annotation reports the new namespace ID.  Test each namespace
independently so unavailable cases skip rather than silently pass.

Assisted-by: OpenCode:gpt-6-sol

strace: translate procfs PIDs in attach failure diagnostics.
On an EPERM attach, proc_pid_tracer looked up /proc/<pid>/status
using the strace-visible target PID.  An inherited procfs mount
may use an ancestor PID namespace, hiding the real TracerPid or
reporting an unrelated process.  Resolve the target via get_proc_pid.

The TracerPid value is itself in the procfs PID namespace.  Recover
its strace-visible PID from NSpid, validating it by translating back
to the same procfs PID

[Changelog truncated as it exceeds 5000 characters;
the full changelog can be found in an attachment to the AUH email]
---
 ...gnore-pwritev-pwrite64-tests-on-musl.patch | 62 +++++++++++++++++++
 ...toconf-macro-to-detect-largefile-sup.patch |  4 +-
 ...kport-ax_prog_cc_for_build.m4-macros.patch |  2 +-
 ...001-strace-fix-reproducibilty-issues.patch | 12 ++--
 ...002-tests-Replace-off64_t-with-off_t.patch |  2 +-
 .../strace/strace/Makefile-ptest.patch        |  6 +-
 .../strace/strace/ptest-spacesave.patch       |  6 +-
 .../strace/strace/skip-load.patch             |  2 +-
 .../strace/strace/update-gawk-paths.patch     |  2 +-
 .../strace/{strace_7.2.bb => strace_7.3.bb}   |  2 +-
 10 files changed, 81 insertions(+), 19 deletions(-)
 create mode 100644 meta/recipes-devtools/strace/files/0001-Ignore-pwritev-pwrite64-tests-on-musl.patch
 rename meta/recipes-devtools/strace/{strace_7.2.bb => strace_7.3.bb} (97%)
diff mbox series

Patch

diff --git a/meta/recipes-devtools/strace/files/0001-Ignore-pwritev-pwrite64-tests-on-musl.patch b/meta/recipes-devtools/strace/files/0001-Ignore-pwritev-pwrite64-tests-on-musl.patch
new file mode 100644
index 0000000000..760a257f4b
--- /dev/null
+++ b/meta/recipes-devtools/strace/files/0001-Ignore-pwritev-pwrite64-tests-on-musl.patch
@@ -0,0 +1,62 @@ 
+From 079bc39924ff9cba5d325decec7545e35e9507a0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 18 Aug 2025 22:18:58 -0700
+Subject: [PATCH] Ignore pwritev/pwrite64 tests on musl
+
+musl uses wrappers for pwritev and pwrite64 using
+pwritev2 syscall [1], however the test exepcts that the
+program will call pwritev and pwrite64 ( glibc behavior )
+
+This can be fixed if the function calls are changed to
+use syscall() API directly, but that needs change upstream [2]
+
+Issue is reported upstream [3]
+
+[1] https://git.musl-libc.org/cgit/musl/commit/src?id=5370070fded61b569196764673a4fc8440aac79e
+[2] https://github.com/strace/strace/pull/347
+[3] https://github.com/strace/strace/issues/349
+
+Upstream-Status: Inappropriate [Musl Specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ tests/pread64-pwrite64.gen.test | 3 +++
+ tests/preadv-pwritev.gen.test   | 3 +++
+ tests/pwritev.gen.test          | 3 +++
+ 3 files changed, 9 insertions(+)
+
+diff --git a/tests/pread64-pwrite64.gen.test b/tests/pread64-pwrite64.gen.test
+index b53e069..0a1e6e6 100755
+--- a/tests/pread64-pwrite64.gen.test
++++ b/tests/pread64-pwrite64.gen.test
+@@ -1,4 +1,7 @@
+ #!/bin/sh -efu
+ # Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (pread64-pwrite64 -a21 -eread=0 -ewrite=1 -e trace=pread64,pwrite64 -P pread64-pwrite64-tmpfile -P /dev/zero -P /dev/null); do not edit.
+ . "${srcdir=.}/init.sh"
++
++skip_ "Test not ported to musl, musl generates pwritev2"
++
+ run_strace_match_diff -a21 -eread=0 -ewrite=1 -e trace=pread64,pwrite64 -P pread64-pwrite64-tmpfile -P /dev/zero -P /dev/null
+diff --git a/tests/preadv-pwritev.gen.test b/tests/preadv-pwritev.gen.test
+index 5ed8297..b83f129 100755
+--- a/tests/preadv-pwritev.gen.test
++++ b/tests/preadv-pwritev.gen.test
+@@ -1,4 +1,7 @@
+ #!/bin/sh -efu
+ # Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (preadv-pwritev -a19 -eread=0 -ewrite=1 -e trace=preadv,pwritev); do not edit.
+ . "${srcdir=.}/init.sh"
++
++skip_ "Test not ported to musl, musl generates pwritev2"
++
+ run_strace_match_diff -a19 -eread=0 -ewrite=1 -e trace=preadv,pwritev
+diff --git a/tests/pwritev.gen.test b/tests/pwritev.gen.test
+index e54fd15..4999816 100755
+--- a/tests/pwritev.gen.test
++++ b/tests/pwritev.gen.test
+@@ -1,4 +1,7 @@
+ #!/bin/sh -efu
+ # Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (pwritev -a22 -s7); do not edit.
+ . "${srcdir=.}/init.sh"
++
++skip_ "Test not ported to musl, musl generates pwritev2"
++
+ run_strace_match_diff -a22 -s7
diff --git a/meta/recipes-devtools/strace/strace/0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch b/meta/recipes-devtools/strace/strace/0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch
index 25f32d1734..ebcd316e9f 100644
--- a/meta/recipes-devtools/strace/strace/0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch
+++ b/meta/recipes-devtools/strace/strace/0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch
@@ -1,4 +1,4 @@ 
-From 334b66af1329bc6970c9ff9ee668af6cc2133b8f Mon Sep 17 00:00:00 2001
+From dff502ff4ae95a310ea10eeda0aaf5626de3890b Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 15 Dec 2022 15:54:27 -0800
 Subject: [PATCH] configure: Use autoconf macro to detect largefile support
@@ -13,7 +13,7 @@  Signed-off-by: Khem Raj <raj.khem@gmail.com>
  1 file changed, 2 insertions(+)
 
 diff --git a/configure.ac b/configure.ac
-index 956bb85..0812725 100644
+index 9bec14b..57406f5 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -43,6 +43,8 @@ AC_PROG_INSTALL
diff --git a/meta/recipes-devtools/strace/strace/0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch b/meta/recipes-devtools/strace/strace/0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch
index 60e5141197..478bb7b9d9 100644
--- a/meta/recipes-devtools/strace/strace/0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch
+++ b/meta/recipes-devtools/strace/strace/0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch
@@ -1,4 +1,4 @@ 
-From b402cfcdfb782ab3a8b264b23536a4de5f709746 Mon Sep 17 00:00:00 2001
+From de4d51c010e12a8c843dd3e241e392cd8cbcc6ca Mon Sep 17 00:00:00 2001
 From: Khem Raj <khem.raj@oss.qualcomm.com>
 Date: Fri, 10 Apr 2026 23:39:47 +0000
 Subject: [PATCH] m4: Backport ax_prog_cc_for_build.m4 macros
diff --git a/meta/recipes-devtools/strace/strace/0001-strace-fix-reproducibilty-issues.patch b/meta/recipes-devtools/strace/strace/0001-strace-fix-reproducibilty-issues.patch
index 4907b16a1c..8a8b18d698 100644
--- a/meta/recipes-devtools/strace/strace/0001-strace-fix-reproducibilty-issues.patch
+++ b/meta/recipes-devtools/strace/strace/0001-strace-fix-reproducibilty-issues.patch
@@ -1,4 +1,4 @@ 
-From 5905b406c5325442f2001339937ad22b2d068b15 Mon Sep 17 00:00:00 2001
+From a99f2283ed13b03185b67ddda507aed3aa0f595e Mon Sep 17 00:00:00 2001
 From: Jeremy Puhlman <jpuhlman@mvista.com>
 Date: Wed, 11 Mar 2020 19:56:55 +0000
 Subject: [PATCH] strace: fix reproducibilty issues
@@ -13,19 +13,19 @@  Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/tests/gen_tests.sh b/tests/gen_tests.sh
-index 3c6228a..43b94ea 100755
+index d71e1c1..c191673 100755
 --- a/tests/gen_tests.sh
 +++ b/tests/gen_tests.sh
-@@ -46,7 +46,7 @@ while read -r name arg0 args; do {
+@@ -52,7 +52,7 @@ while read -r name arg0 args; do {
  
  	hdr="\
  #!/bin/sh -efu
 -# Generated by $0 from $input ($name $arg0 $args); do not edit."
 +# Generated by $(basename $0) from $input ($name $arg0 $args); do not edit."
  
- 	case "$arg0" in
- 		+*)
-@@ -102,7 +102,7 @@ while read -r name arg0 args; do {
+ 	# A generated test may be sourced while another build regenerates it.
+ 	# Replace the file atomically so the reader keeps its original contents.
+@@ -112,7 +112,7 @@ while read -r name arg0 args; do {
  
  if [ -n "$names" ]; then
  	{
diff --git a/meta/recipes-devtools/strace/strace/0002-tests-Replace-off64_t-with-off_t.patch b/meta/recipes-devtools/strace/strace/0002-tests-Replace-off64_t-with-off_t.patch
index e784268855..88a81519bf 100644
--- a/meta/recipes-devtools/strace/strace/0002-tests-Replace-off64_t-with-off_t.patch
+++ b/meta/recipes-devtools/strace/strace/0002-tests-Replace-off64_t-with-off_t.patch
@@ -1,4 +1,4 @@ 
-From bcca8619f749ba78a4ce78d39c603e2606175175 Mon Sep 17 00:00:00 2001
+From 85eb02371ea47e79f912fa03dbe03c849c093b36 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Thu, 15 Dec 2022 15:56:13 -0800
 Subject: [PATCH] tests: Replace off64_t with off_t
diff --git a/meta/recipes-devtools/strace/strace/Makefile-ptest.patch b/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
index 1e3c8ee2aa..0352a82234 100644
--- a/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
+++ b/meta/recipes-devtools/strace/strace/Makefile-ptest.patch
@@ -1,4 +1,4 @@ 
-From 2749699b77b4fcce7e6e960f246259b05f3dafcc Mon Sep 17 00:00:00 2001
+From f7ad423f864c5f882c7e220f564a21e9421ac73b Mon Sep 17 00:00:00 2001
 From: Gabriel Barbu <gabriel.barbu@enea.com>
 Date: Thu, 25 Jul 2013 15:28:33 +0200
 Subject: [PATCH] strace: Add ptest
@@ -13,7 +13,7 @@  Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
  1 file changed, 20 insertions(+)
 
 diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 84a9638..23fd218 100644
+index 12b63b2..1ddf782 100644
 --- a/tests/Makefile.am
 +++ b/tests/Makefile.am
 @@ -18,6 +18,7 @@ SIZEOF_LONG = @SIZEOF_LONG@
@@ -24,7 +24,7 @@  index 84a9638..23fd218 100644
  AM_CFLAGS = $(WARN_CFLAGS) $(TEST_WARN_CFLAGS)
  bundled_CPPFLAGS =
  if USE_BUNDLED_HEADERS
-@@ -968,3 +969,22 @@ check-valgrind-local: $(check_LIBRARIES) $(check_PROGRAMS)
+@@ -982,3 +983,22 @@ check-valgrind-local: $(check_LIBRARIES) $(check_PROGRAMS)
  CLEANFILES = ksysent.h
  
  include ../src/scno.am
diff --git a/meta/recipes-devtools/strace/strace/ptest-spacesave.patch b/meta/recipes-devtools/strace/strace/ptest-spacesave.patch
index 00f404c003..3f6289d3a1 100644
--- a/meta/recipes-devtools/strace/strace/ptest-spacesave.patch
+++ b/meta/recipes-devtools/strace/strace/ptest-spacesave.patch
@@ -1,4 +1,4 @@ 
-From ae538d4dcb0ea7265d72671b7dd3537ca1356437 Mon Sep 17 00:00:00 2001
+From 0bcea4d97bdbfba5920ceb56215a911c9d529dc6 Mon Sep 17 00:00:00 2001
 From: Richard Purdie <richard.purdie@linuxfoundation.org>
 Date: Wed, 29 May 2019 00:10:32 +0100
 Subject: [PATCH] strace: Tweak ptest disk space management
@@ -14,10 +14,10 @@  Upstream-Status: Inappropriate [specific to OE image space issues]
  1 file changed, 1 insertion(+)
 
 diff --git a/tests/gen_tests.sh b/tests/gen_tests.sh
-index f22ad08..3c6228a 100755
+index 2a7fada..d71e1c1 100755
 --- a/tests/gen_tests.sh
 +++ b/tests/gen_tests.sh
-@@ -84,6 +84,7 @@ while read -r name arg0 args; do {
+@@ -93,6 +93,7 @@ while read -r name arg0 args; do {
  		$hdr
  		. "\${srcdir=.}/init.sh"
  		run_strace_match_diff $arg0 $args
diff --git a/meta/recipes-devtools/strace/strace/skip-load.patch b/meta/recipes-devtools/strace/strace/skip-load.patch
index 610dd94fe9..cab890f148 100644
--- a/meta/recipes-devtools/strace/strace/skip-load.patch
+++ b/meta/recipes-devtools/strace/strace/skip-load.patch
@@ -1,4 +1,4 @@ 
-From 2653515537b66a4b1286be107e9ef406c55040b4 Mon Sep 17 00:00:00 2001
+From 5c9048988e5000fb0f175afde05a23be2ef0fa15 Mon Sep 17 00:00:00 2001
 From: Ross Burton <ross.burton@arm.com>
 Date: Sat, 30 Aug 2025 00:47:03 +0200
 Subject: [PATCH] strace: skip a number of load-sensitive tests
diff --git a/meta/recipes-devtools/strace/strace/update-gawk-paths.patch b/meta/recipes-devtools/strace/strace/update-gawk-paths.patch
index 8895b0ff9e..764f0af116 100644
--- a/meta/recipes-devtools/strace/strace/update-gawk-paths.patch
+++ b/meta/recipes-devtools/strace/strace/update-gawk-paths.patch
@@ -1,4 +1,4 @@ 
-From be1b3d74ca4ffb3c8d3e38fdb96f23d5920f8ef1 Mon Sep 17 00:00:00 2001
+From 3c4da31783f127d18cf1b64ca33ac46a512da2cb Mon Sep 17 00:00:00 2001
 From: Andre McCurdy <armccurdy@gmail.com>
 Date: Mon, 18 Jan 2016 11:01:00 -0800
 Subject: [PATCH] update gawk paths, /bin/gawk -> /usr/bin/gawk
diff --git a/meta/recipes-devtools/strace/strace_7.2.bb b/meta/recipes-devtools/strace/strace_7.3.bb
similarity index 97%
rename from meta/recipes-devtools/strace/strace_7.2.bb
rename to meta/recipes-devtools/strace/strace_7.3.bb
index 3f7aaab3e6..a28a90e398 100644
--- a/meta/recipes-devtools/strace/strace_7.2.bb
+++ b/meta/recipes-devtools/strace/strace_7.3.bb
@@ -19,7 +19,7 @@  SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/strace-${PV}.tar.xz \
 SRC_URI:append:libc-musl = "\
            file://0001-Ignore-pwritev-pwrite64-tests-on-musl.patch \
            "
-SRC_URI[sha256sum] = "4bde6246926890dcee824f6e6ac42a06752f47d77e5097d86e3c0d6d4b709fe5"
+SRC_URI[sha256sum] = "529634c40910895a9a1f3c5c1e65da2ca9ed72fb158dfc4bcc89efdf05e39b72"
 
 inherit autotools github-releases ptest