☠ Buildbot (Sourceware): elfutils-snapshots-coverage - failed test (failure) (main)

2025-05-08 Thread builder
A new failure has been detected on builder elfutils-snapshots-coverage while 
building elfutils.

Full details are available at:
https://builder.sourceware.org/buildbot/#/builders/250/builds/235

Build state: failed test (failure)
Revision: deca125665a76cf024bd063ff4f477cb675ad41e
Worker: snapshots
Build Reason: (unknown)
Blamelist: Serhei Makarov 

Steps:

- 0: worker_preparation ( success )

- 1: git checkout ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/1/logs/stdio

- 2: autoreconf ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/2/logs/stdio

- 3: configure ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/3/logs/stdio
- config.log: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/3/logs/config_log

- 4: make ( warnings )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/4/logs/stdio
- warnings (3): 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/4/logs/warnings__3_

- 5: make check ( failure )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/5/logs/stdio
- test-suite.log: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/5/logs/test-suite_log

- 6: make coverage ( warnings )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/6/logs/stdio
- warnings (3): 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/6/logs/warnings__3_

- 7: Wait snapshots output ready ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/7/logs/stdio

- 8: create output ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/8/logs/stdio

- 9: create publish file ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/250/builds/235/steps/9/logs/stdio



[RFC] tests/run-stack-live-test.sh: prototype 'live' eu-stack testing

2025-05-08 Thread Serhei Makarov
Missing a few pieces, but worth sharing as an RFC. My idea is to
ensure better test coverage for eu-stack and then
eu-stacktrace+libdwfl_stacktrace by running against a live process
with known content, stopped at a known location, and aggressively
scrubbing output that's known to vary from testrun to testrun.

This is a very basic preview of how that might look. If the approach
is sound, I hope to make it more sophisticated/reliable.

Unanswered questions:
- Scrub more data (e.g. libc symvers) from a more known program.
  Scrub stack frame numbers to account for a case where extra frames
  appear / are missing at the bottom of the stack?
- Something better than sed for the scrubbing?
- An equivalent eu-stacktrace test will require privileged perf_events
  access for profiling data and therefore likely to be skipped by
  default. How feasible is it to be enabled on the buildbots, though?

* tests/run-stack-live-test.sh: New test with wild and fuzzy
  testrun_compare variant that scrubs inherently unpredictable parts of
  the data. Needs to scrub even more.
* tests/Makefile.am (TESTS): Add run-stack-live-test.sh.
---
 tests/Makefile.am|  3 +-
 tests/run-stack-live-test.sh | 64 
 2 files changed, 66 insertions(+), 1 deletion(-)
 create mode 100755 tests/run-stack-live-test.sh

diff --git a/tests/Makefile.am b/tests/Makefile.am
index 00ba754d..ecd514c7 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -191,7 +191,8 @@ TESTS = run-arextract.sh run-arsymtest.sh run-ar.sh newfile 
test-nlist \
run-backtrace-core-s390x.sh run-backtrace-core-s390.sh \
run-backtrace-core-aarch64.sh run-backtrace-core-sparc.sh \
run-backtrace-demangle.sh run-stack-d-test.sh run-stack-i-test.sh \
-   run-stack-demangled-test.sh run-readelf-zx.sh run-readelf-zp.sh \
+   run-stack-demangled-test.sh run-stack-live-test.sh \
+   run-readelf-zx.sh run-readelf-zp.sh \
run-readelf-arm-flags.sh \
run-readelf-addr.sh run-readelf-str.sh \
run-readelf-multi-noline.sh \
diff --git a/tests/run-stack-live-test.sh b/tests/run-stack-live-test.sh
new file mode 100755
index ..808421bb
--- /dev/null
+++ b/tests/run-stack-live-test.sh
@@ -0,0 +1,64 @@
+#! /bin/sh
+# Copyright (C) 2025 Red Hat, Inc.
+# This file is part of elfutils.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# elfutils is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see .
+
+. $srcdir/test-subr.sh
+
+# Depending on whether we are running make check or make installcheck
+# the actual binary name under test might be different. It is used in
+# the error message, which we also try to match.
+if test "$elfutils_testrun" = "installed"; then
+STACKCMD=${bindir}/`program_transform stack`
+else
+STACKCMD=${abs_top_builddir}/src/stack
+fi
+
+# TODO(REVIEW): Can we make the data-scrubbing generic enough
+# (across multiple eu-stack/eu-stacktrace test cases) to move
+# to test_subr.sh?
+#
+# TODO(REVIEW): Better shell-isms for comparing file and regex?
+# \(\s\e\d\)\+\i\s\a\d\d\i\c\t\e\d\\t\o\b\a\ck\s\l\a\s\h\e\s
+testrun_compare_fuzzy()
+{
+outfile="${1##*/}.out"
+testrun_out $outfile "$@"
+sed -i 's/\(PID\|TID\|#[0-9]\+\)\( \+\)\(\(0x\)\?[0-9a-f]\+\)/\1\2nn/g' 
$outfile
+diff -u $outfile -
+}
+
+# TODO: Need to scrub more data (e.g. GLIBC_ bits),
+# and use a program whose inner content we control:
+sleep 10 &
+PID=$!
+testrun_compare_fuzzy ${abs_top_builddir}/src/stack -p $PID <

☺ Buildbot (Sourceware): elfutils - build successful (main)

2025-05-08 Thread builder
A restored build has been detected on builder elfutils-debian-armhf while 
building elfutils.

Full details are available at:
https://builder.sourceware.org/buildbot/#/builders/6/builds/414

Build state: build successful
Revision: 13148250ce0e27cc8145f6ddaa8339f08a5ef993
Worker: debian-armhf
Build Reason: (unknown)
Blamelist: Serhei Makarov 

Steps:

- 0: worker_preparation ( success )

- 1: set package name ( success )

- 2: git checkout ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/2/logs/stdio

- 3: autoreconf ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/3/logs/stdio

- 4: configure ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/4/logs/stdio
- config.log: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/4/logs/config_log

- 5: get version ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/5/logs/stdio
- property changes: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/5/logs/property_changes

- 6: make ( warnings )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/6/logs/stdio
- warnings (3): 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/6/logs/warnings__3_

- 7: make check ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/7/logs/stdio
- test-suite.log: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/7/logs/test-suite_log

- 8: prep ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/8/logs/stdio

- 9: build bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/9/logs/stdio

- 10: fetch bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/10/logs/stdio

- 11: unpack bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/11/logs/stdio

- 12: pass .bunsen.source.* ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/12/logs/stdio

- 13: upload to bunsen ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/13/logs/stdio

- 14: clean up ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/14/logs/stdio

- 15: make distclean ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/414/steps/15/logs/stdio

A restored build has been detected on builder elfutils-debian-i386 while 
building elfutils.

Full details are available at:
https://builder.sourceware.org/buildbot/#/builders/17/builds/497

Build state: build successful
Revision: 13148250ce0e27cc8145f6ddaa8339f08a5ef993
Worker: debian-i386-2
Build Reason: (unknown)
Blamelist: Serhei Makarov 

Steps:

- 0: worker_preparation ( success )

- 1: set package name ( success )

- 2: git checkout ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/2/logs/stdio

- 3: autoreconf ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/3/logs/stdio

- 4: configure ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/4/logs/stdio
- config.log: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/4/logs/config_log

- 5: get version ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/5/logs/stdio
- property changes: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/5/logs/property_changes

- 6: make ( warnings )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/6/logs/stdio
- warnings (3): 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/6/logs/warnings__3_

- 7: make check ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/7/logs/stdio
- test-suite.log: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/7/logs/test-suite_log

- 8: prep ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/8/logs/stdio

- 9: build bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/497/steps/9/logs/stdio

- 10: fetch bunsen.cpio.gz ( success )
Logs:
-

☠ Buildbot (Sourceware): elfutils - failed test (failure) (main)

2025-05-08 Thread builder
A new failure has been detected on builder elfutils-debian-armhf while building 
elfutils.

Full details are available at:
https://builder.sourceware.org/buildbot/#/builders/6/builds/413

Build state: failed test (failure)
Revision: deca125665a76cf024bd063ff4f477cb675ad41e
Worker: debian-armhf
Build Reason: (unknown)
Blamelist: Serhei Makarov 

Steps:

- 0: worker_preparation ( success )

- 1: set package name ( success )

- 2: git checkout ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/2/logs/stdio

- 3: autoreconf ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/3/logs/stdio

- 4: configure ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/4/logs/stdio
- config.log: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/4/logs/config_log

- 5: get version ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/5/logs/stdio
- property changes: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/5/logs/property_changes

- 6: make ( warnings )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/6/logs/stdio
- warnings (3): 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/6/logs/warnings__3_

- 7: make check ( failure )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/7/logs/stdio
- test-suite.log: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/7/logs/test-suite_log

- 8: prep ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/8/logs/stdio

- 9: build bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/9/logs/stdio

- 10: fetch bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/10/logs/stdio

- 11: unpack bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/11/logs/stdio

- 12: pass .bunsen.source.* ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/12/logs/stdio

- 13: upload to bunsen ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/13/logs/stdio

- 14: clean up ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/14/logs/stdio

- 15: make distclean ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/6/builds/413/steps/15/logs/stdio

A new failure has been detected on builder elfutils-debian-i386 while building 
elfutils.

Full details are available at:
https://builder.sourceware.org/buildbot/#/builders/17/builds/496

Build state: failed test (failure)
Revision: deca125665a76cf024bd063ff4f477cb675ad41e
Worker: debian-i386
Build Reason: (unknown)
Blamelist: Serhei Makarov 

Steps:

- 0: worker_preparation ( success )

- 1: set package name ( success )

- 2: git checkout ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/2/logs/stdio

- 3: autoreconf ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/3/logs/stdio

- 4: configure ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/4/logs/stdio
- config.log: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/4/logs/config_log

- 5: get version ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/5/logs/stdio
- property changes: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/5/logs/property_changes

- 6: make ( warnings )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/6/logs/stdio
- warnings (3): 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/6/logs/warnings__3_

- 7: make check ( failure )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/7/logs/stdio
- test-suite.log: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/7/logs/test-suite_log

- 8: prep ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/8/logs/stdio

- 9: build bunsen.cpio.gz ( success )
Logs:
- stdio: 
https://builder.sourceware.org/buildbot/#/builders/17/builds/496/steps/9/logs/stdio

- 10: fetch bunsen.cpio.gz ( success )
Logs: