diff mbox series

[5/6] strace: upgrade 7.2 -> 7.3

Message ID 20261023112949.77631-5-jaipaul.cheernam@est.tech
State Under Review
Headers show
Series [1/6] python3-hypothesis: upgrade 6.169.0 -> 6.170.8 | expand

Commit Message

Jaipaul Cheernam Oct. 23, 2026, 11:29 a.m. UTC
NEWS: https://github.com/strace/strace/blob/v7.3/NEWS

- Fix indentation for SRC_URI
- Refresh existing patches
- Add 0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch for ptest fix
  PR is still open https://github.com/strace/strace/pull/429

============================================================================
Testsuite summary for strace 7.3
============================================================================
 TOTAL: 1525
 PASS:  1172
 SKIP:  352
 XFAIL: 0
 FAIL:  1
 XPASS: 0
 ERROR: 0
============================================================================

Signed-off-by: Jaipaul Cheernam <jaipaul.cheernam@est.tech>
---
 ...f-link-and-bpf_link-anon_inode-names.patch | 135 ++++++++++++++++++
 ...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}   |   5 +-
 10 files changed, 156 insertions(+), 20 deletions(-)
 create mode 100644 meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch
 rename meta/recipes-devtools/strace/{strace_7.2.bb => strace_7.3.bb} (92%)

Comments

Khem Raj Oct. 23, 2026, 3:50 p.m. UTC | #1
On Fri, Oct 23, 2026 at 4:30 AM Jaipaul Cheernam via lists.openembedded.org
<jaipaul.cheernam=est.tech@lists.openembedded.org> wrote:

> NEWS: https://github.com/strace/strace/blob/v7.3/NEWS
>
> - Fix indentation for SRC_URI
> - Refresh existing patches
> - Add 0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch for
> ptest fix
>   PR is still open https://github.com/strace/strace/pull/429
>
>
> ============================================================================
> Testsuite summary for strace 7.3
>
> ============================================================================
>  TOTAL: 1525
>  PASS:  1172
>  SKIP:  352
>  XFAIL: 0
>  FAIL:  1
>  XPASS: 0
>  ERROR: 0
>
> ============================================================================
>
> Signed-off-by: Jaipaul Cheernam <jaipaul.cheernam@est.tech>
> ---
>  ...f-link-and-bpf_link-anon_inode-names.patch | 135 ++++++++++++++++++
>  ...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}   |   5 +-
>  10 files changed, 156 insertions(+), 20 deletions(-)
>  create mode 100644
> meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch
>  rename meta/recipes-devtools/strace/{strace_7.2.bb => strace_7.3.bb}
> (92%)
>
> diff --git
> a/meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch
> b/meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch
> new file mode 100644
> index 00000000000..4e5235b9683
> --- /dev/null
> +++
> b/meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch
> @@ -0,0 +1,135 @@
> +From fa20cc5e8c736ec606efaa18427f0fd49cc45d12 Mon Sep 17 00:00:00 2001
> +From: Zkingom <15024777017@163.com>
> +Date: Thu, 22 Oct 2026 19:20:15 +0800
> +Subject: [PATCH] Handle both "bpf-link" and "bpf_link" anon_inode names
> for
> + BPF links
> +
> +The kernel uses two different anon_inode name strings for BPF link file
> +descriptors due to an inconsistency introduced across two commits:
> +
> +- commit 70ed506c3bbc ("bpf: Introduce pinnable bpf_link abstraction")
> +  introduced bpf_link_new_fd() with anon_inode_getfd("bpf-link", ...),
> +  matching the naming convention used by other BPF objects ("bpf-map",
> +  "bpf-prog", "bpf-stats").
> +- commit babf3164095b ("bpf: Add bpf_link_new_file that doesn't install
> +  FD") added bpf_link_new_file(), later renamed to bpf_link_prime(),
> +  with anon_inode_getfile("bpf_link", ...), using an underscore instead
> +  of a hyphen.
> +
> +As a result, BPF link file descriptors appear as anon_inode:bpf-link
> +when obtained via BPF_LINK_GET_FD_BY_ID or BPF_OBJ_GET from bpffs, and
> +as anon_inode:bpf_link when returned by BPF_LINK_CREATE.
> +
> +Recognize both names to correctly identify BPF link descriptors
> +regardless of how they were obtained.
> +
> +* src/bpf.c (print_bpf_obj_info): Recognize anon_inode:bpf_link.
> +* tests/bpf-obj_get_info_by_fd-link.c (main): Obtain the link fd
> +path dynamically and skip when procfs is unavailable.
> +* tests/gen_tests.in (bpf-obj_get_info_by_fd-link): Filter out
> +setup calls preceding the information query.
> +* NEWS: Mention the fix.
> +
> +Signed-off-by: Xu Zhou <15024777017@163.com>
> +Signed-off-by: Zkingom <15024777017@163.com>
> +Assisted-by: Codex:GPT-6.1-Sol
> +
> +Upstream-Status: Submitted [https://github.com/strace/strace/pull/429]
> +
> +Signed-off-by: Jaipaul Cheernam <jaipaul.cheernam@est.tech>
> +---
> + NEWS                                |  8 ++++++++
> + src/bpf.c                           |  3 ++-
> + tests/bpf-obj_get_info_by_fd-link.c | 11 ++++++++---
> + tests/gen_tests.in                  |  2 +-
> + 4 files changed, 19 insertions(+), 5 deletions(-)
> +
> +diff --git a/NEWS b/NEWS
> +index eb5465a66c..da93026b4f 100644
> +--- a/NEWS
> ++++ b/NEWS
> +@@ -1,3 +1,11 @@
> ++Noteworthy changes in release ?.? (????-??-??)
> ++==============================================
> ++
> ++* Bug fixes
> ++
> ++  * Fixed decoding of BPF_OBJ_GET_INFO_BY_FD for BPF links created by
> ++    BPF_LINK_CREATE.
> ++
> + Noteworthy changes in release 7.3 (2026-10-22)
> + ==============================================
> +
> +diff --git a/src/bpf.c b/src/bpf.c
> +index 3b09f45955..1498d5c0f2 100644
> +--- a/src/bpf.c
> ++++ b/src/bpf.c
> +@@ -1662,7 +1662,8 @@ print_bpf_obj_info(struct tcb * const tcp, uint32_t
> bpf_fd, uint64_t info,
> +       } obj_printers[] = {
> +               { "anon_inode:bpf-map", print_bpf_map_info },
> +               { "anon_inode:bpf-prog", print_bpf_prog_info },
> +-              { "anon_inode:bpf-link", print_bpf_link_info }
> ++              { "anon_inode:bpf-link", print_bpf_link_info },
> ++              { "anon_inode:bpf_link", print_bpf_link_info }
> +       };
> +
> +       if (entering(tcp)) {
> +diff --git a/tests/bpf-obj_get_info_by_fd-link.c
> b/tests/bpf-obj_get_info_by_fd-link.c
> +index 9536f0222f..c5f60ffc95 100644
> +--- a/tests/bpf-obj_get_info_by_fd-link.c
> ++++ b/tests/bpf-obj_get_info_by_fd-link.c
> +@@ -14,6 +14,7 @@
> + #include <stddef.h>
> + #include <stdio.h>
> + #include <stdint.h>
> ++#include <stdlib.h>
> + #include <string.h>
> + #include <unistd.h>
> +
> +@@ -43,6 +44,8 @@ sys_bpf(kernel_ulong_t cmd, void *attr, kernel_ulong_t
> size)
> + int
> + main(void)
> + {
> ++      skip_if_unavailable("/proc/self/fd/");
> ++
> +       static const struct bpf_insn cgroup_prog[] = {
> +               { /* r0 = 1 (allow) */
> +                       .code    = BPF_ALU64 | BPF_K | BPF_MOV,
> +@@ -97,10 +100,11 @@ main(void)
> +       if (ret < 0)
> +               perror_msg_and_skip("BPF_OBJ_GET_INFO_BY_FD");
> +
> ++      char *link_fd_path = get_fd_path(link_fd);
> +       printf("bpf(BPF_OBJ_GET_INFO_BY_FD"
> +-             ", {info={bpf_fd=%d<anon_inode:bpf-link>"
> ++             ", {info={bpf_fd=%d<%s>"
> +              ", info_len=%zu",
> +-             link_fd, LINK_INFO_SZ);
> ++             link_fd, link_fd_path, LINK_INFO_SZ);
> +       if (get_info_attr.info_len != LINK_INFO_SZ)
> +               printf(" => %u", get_info_attr.info_len);
> +       printf(", info={type=");
> +@@ -110,8 +114,9 @@ main(void)
> +       printf(", cgroup={cgroup_id=%" PRIu64,
> link_info->cgroup.cgroup_id);
> +       printf(", attach_type=");
> +       printxval(bpf_attach_type, link_info->cgroup.attach_type,
> "BPF_???");
> +-      printf("}}}, %zu) = %s\n", sizeof(get_info_attr), errstr);
> ++      printf("}}}}, %zu) = %s\n", sizeof(get_info_attr), errstr);
> +
> ++      free(link_fd_path);
> +       puts("+++ exited with 0 +++");
> +       return 0;
> + }
> +diff --git a/tests/gen_tests.in b/tests/gen_tests.in
> +index 71393c72a6..6bf0e91db9 100644
> +--- a/tests/gen_tests.in
> ++++ b/tests/gen_tests.in
> +@@ -31,7 +31,7 @@ arch_prctl-success-Xverbose  +prctl-success.sh
> ARCH_PRCTL_INJECT_RETVALS="0 1 2 3
> + at_fdcwd-pathmax      -a36 --trace=openat -y -P sample
> + bpf   -a20
> + bpf-obj_get_info_by_fd        -a20 -y -e trace=bpf
> +-bpf-obj_get_info_by_fd-link   -a20 -y -v -e trace=bpf
> ++bpf-obj_get_info_by_fd-link   -a20 -y -v -e trace=bpf
> "QUIRK:START-OF-TEST-OUTPUT:bpf(BPF_OBJ_GET_INFO_BY_FD"
> + bpf-obj_get_info_by_fd-prog   -a20 -y -e trace=bpf
> + bpf-obj_get_info_by_fd-prog-v -a20 -y -v -e trace=bpf
> + bpf-obj_get_info_by_fd-v      -a20 -y -v -e trace=bpf
> 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 25f32d17348..ebcd316e9fb 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 60e51411973..478bb7b9d9b 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 4907b16a1c7..8a8b18d698e 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 e7842688550..88a81519bf9 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 <(260)%20617-5175> 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 1e3c8ee2aa8..0352a82234b 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 00f404c0036..3f6289d3a1a 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 610dd94fe9d..cab890f1482 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 8895b0ff9e2..764f0af1163 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 92%
> rename from meta/recipes-devtools/strace/strace_7.2.bb
> rename to meta/recipes-devtools/strace/strace_7.3.bb
> index 3f7aaab3e6c..61c8b744b5e 100644
> --- a/meta/recipes-devtools/strace/strace_7.2.bb
> +++ b/meta/recipes-devtools/strace/strace_7.3.bb
> @@ -14,12 +14,13 @@ SRC_URI =
> "${GITHUB_BASE_URI}/download/v${PV}/strace-${PV}.tar.xz \
>             file://skip-load.patch \
>
> file://0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch \
>             file://0002-tests-Replace-off64_t-with-off_t.patch \
> -
> file://0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch \
> +           file://0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch \
> +
>  file://0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch \
>             "
>  SRC_URI:append:libc-musl = "\
>             file://0001-Ignore-pwritev-pwrite64-tests-on-musl.patch \
>             "
>

I think above patch is no longer needed since the tests are now fixed to
work on musl see
https://github.com/strace/strace/commit/2b7d533ac7aef9a9d97dddcb582d622b8c0fc0c6

Please run the tests on musl target as well to ensure its the case.


> -SRC_URI[sha256sum] =
> "4bde6246926890dcee824f6e6ac42a06752f47d77e5097d86e3c0d6d4b709fe5"
> +SRC_URI[sha256sum] =
> "529634c40910895a9a1f3c5c1e65da2ca9ed72fb158dfc4bcc89efdf05e39b72"
>
>  inherit autotools github-releases ptest
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#248546):
> https://lists.openembedded.org/g/openembedded-core/message/248546
> Mute This Topic: https://lists.openembedded.org/mt/121898413/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>
diff mbox series

Patch

diff --git a/meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch b/meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch
new file mode 100644
index 00000000000..4e5235b9683
--- /dev/null
+++ b/meta/recipes-devtools/strace/strace/0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch
@@ -0,0 +1,135 @@ 
+From fa20cc5e8c736ec606efaa18427f0fd49cc45d12 Mon Sep 17 00:00:00 2001
+From: Zkingom <15024777017@163.com>
+Date: Thu, 22 Oct 2026 19:20:15 +0800
+Subject: [PATCH] Handle both "bpf-link" and "bpf_link" anon_inode names for
+ BPF links
+
+The kernel uses two different anon_inode name strings for BPF link file
+descriptors due to an inconsistency introduced across two commits:
+
+- commit 70ed506c3bbc ("bpf: Introduce pinnable bpf_link abstraction")
+  introduced bpf_link_new_fd() with anon_inode_getfd("bpf-link", ...),
+  matching the naming convention used by other BPF objects ("bpf-map",
+  "bpf-prog", "bpf-stats").
+- commit babf3164095b ("bpf: Add bpf_link_new_file that doesn't install
+  FD") added bpf_link_new_file(), later renamed to bpf_link_prime(),
+  with anon_inode_getfile("bpf_link", ...), using an underscore instead
+  of a hyphen.
+
+As a result, BPF link file descriptors appear as anon_inode:bpf-link
+when obtained via BPF_LINK_GET_FD_BY_ID or BPF_OBJ_GET from bpffs, and
+as anon_inode:bpf_link when returned by BPF_LINK_CREATE.
+
+Recognize both names to correctly identify BPF link descriptors
+regardless of how they were obtained.
+
+* src/bpf.c (print_bpf_obj_info): Recognize anon_inode:bpf_link.
+* tests/bpf-obj_get_info_by_fd-link.c (main): Obtain the link fd
+path dynamically and skip when procfs is unavailable.
+* tests/gen_tests.in (bpf-obj_get_info_by_fd-link): Filter out
+setup calls preceding the information query.
+* NEWS: Mention the fix.
+
+Signed-off-by: Xu Zhou <15024777017@163.com>
+Signed-off-by: Zkingom <15024777017@163.com>
+Assisted-by: Codex:GPT-6.1-Sol
+
+Upstream-Status: Submitted [https://github.com/strace/strace/pull/429]
+
+Signed-off-by: Jaipaul Cheernam <jaipaul.cheernam@est.tech>
+---
+ NEWS                                |  8 ++++++++
+ src/bpf.c                           |  3 ++-
+ tests/bpf-obj_get_info_by_fd-link.c | 11 ++++++++---
+ tests/gen_tests.in                  |  2 +-
+ 4 files changed, 19 insertions(+), 5 deletions(-)
+
+diff --git a/NEWS b/NEWS
+index eb5465a66c..da93026b4f 100644
+--- a/NEWS
++++ b/NEWS
+@@ -1,3 +1,11 @@
++Noteworthy changes in release ?.? (????-??-??)
++==============================================
++
++* Bug fixes
++
++  * Fixed decoding of BPF_OBJ_GET_INFO_BY_FD for BPF links created by
++    BPF_LINK_CREATE.
++
+ Noteworthy changes in release 7.3 (2026-10-22)
+ ==============================================
+ 
+diff --git a/src/bpf.c b/src/bpf.c
+index 3b09f45955..1498d5c0f2 100644
+--- a/src/bpf.c
++++ b/src/bpf.c
+@@ -1662,7 +1662,8 @@ print_bpf_obj_info(struct tcb * const tcp, uint32_t bpf_fd, uint64_t info,
+ 	} obj_printers[] = {
+ 		{ "anon_inode:bpf-map", print_bpf_map_info },
+ 		{ "anon_inode:bpf-prog", print_bpf_prog_info },
+-		{ "anon_inode:bpf-link", print_bpf_link_info }
++		{ "anon_inode:bpf-link", print_bpf_link_info },
++		{ "anon_inode:bpf_link", print_bpf_link_info }
+ 	};
+ 
+ 	if (entering(tcp)) {
+diff --git a/tests/bpf-obj_get_info_by_fd-link.c b/tests/bpf-obj_get_info_by_fd-link.c
+index 9536f0222f..c5f60ffc95 100644
+--- a/tests/bpf-obj_get_info_by_fd-link.c
++++ b/tests/bpf-obj_get_info_by_fd-link.c
+@@ -14,6 +14,7 @@
+ #include <stddef.h>
+ #include <stdio.h>
+ #include <stdint.h>
++#include <stdlib.h>
+ #include <string.h>
+ #include <unistd.h>
+ 
+@@ -43,6 +44,8 @@ sys_bpf(kernel_ulong_t cmd, void *attr, kernel_ulong_t size)
+ int
+ main(void)
+ {
++	skip_if_unavailable("/proc/self/fd/");
++
+ 	static const struct bpf_insn cgroup_prog[] = {
+ 		{ /* r0 = 1 (allow) */
+ 			.code    = BPF_ALU64 | BPF_K | BPF_MOV,
+@@ -97,10 +100,11 @@ main(void)
+ 	if (ret < 0)
+ 		perror_msg_and_skip("BPF_OBJ_GET_INFO_BY_FD");
+ 
++	char *link_fd_path = get_fd_path(link_fd);
+ 	printf("bpf(BPF_OBJ_GET_INFO_BY_FD"
+-	       ", {info={bpf_fd=%d<anon_inode:bpf-link>"
++	       ", {info={bpf_fd=%d<%s>"
+ 	       ", info_len=%zu",
+-	       link_fd, LINK_INFO_SZ);
++	       link_fd, link_fd_path, LINK_INFO_SZ);
+ 	if (get_info_attr.info_len != LINK_INFO_SZ)
+ 		printf(" => %u", get_info_attr.info_len);
+ 	printf(", info={type=");
+@@ -110,8 +114,9 @@ main(void)
+ 	printf(", cgroup={cgroup_id=%" PRIu64, link_info->cgroup.cgroup_id);
+ 	printf(", attach_type=");
+ 	printxval(bpf_attach_type, link_info->cgroup.attach_type, "BPF_???");
+-	printf("}}}, %zu) = %s\n", sizeof(get_info_attr), errstr);
++	printf("}}}}, %zu) = %s\n", sizeof(get_info_attr), errstr);
+ 
++	free(link_fd_path);
+ 	puts("+++ exited with 0 +++");
+ 	return 0;
+ }
+diff --git a/tests/gen_tests.in b/tests/gen_tests.in
+index 71393c72a6..6bf0e91db9 100644
+--- a/tests/gen_tests.in
++++ b/tests/gen_tests.in
+@@ -31,7 +31,7 @@ arch_prctl-success-Xverbose	+prctl-success.sh ARCH_PRCTL_INJECT_RETVALS="0 1 2 3
+ at_fdcwd-pathmax	-a36 --trace=openat -y -P sample
+ bpf	-a20
+ bpf-obj_get_info_by_fd	-a20 -y -e trace=bpf
+-bpf-obj_get_info_by_fd-link	-a20 -y -v -e trace=bpf
++bpf-obj_get_info_by_fd-link	-a20 -y -v -e trace=bpf "QUIRK:START-OF-TEST-OUTPUT:bpf(BPF_OBJ_GET_INFO_BY_FD"
+ bpf-obj_get_info_by_fd-prog	-a20 -y -e trace=bpf
+ bpf-obj_get_info_by_fd-prog-v	-a20 -y -v -e trace=bpf
+ bpf-obj_get_info_by_fd-v	-a20 -y -v -e trace=bpf
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 25f32d17348..ebcd316e9fb 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 60e51411973..478bb7b9d9b 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 4907b16a1c7..8a8b18d698e 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 e7842688550..88a81519bf9 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 1e3c8ee2aa8..0352a82234b 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 00f404c0036..3f6289d3a1a 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 610dd94fe9d..cab890f1482 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 8895b0ff9e2..764f0af1163 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 92%
rename from meta/recipes-devtools/strace/strace_7.2.bb
rename to meta/recipes-devtools/strace/strace_7.3.bb
index 3f7aaab3e6c..61c8b744b5e 100644
--- a/meta/recipes-devtools/strace/strace_7.2.bb
+++ b/meta/recipes-devtools/strace/strace_7.3.bb
@@ -14,12 +14,13 @@  SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/strace-${PV}.tar.xz \
            file://skip-load.patch \
            file://0001-configure-Use-autoconf-macro-to-detect-largefile-sup.patch \
            file://0002-tests-Replace-off64_t-with-off_t.patch \
-		   file://0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch \
+           file://0001-m4-Backport-ax_prog_cc_for_build.m4-macros.patch \
+           file://0001-Handle-both-bpf-link-and-bpf_link-anon_inode-names.patch \
            "
 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