Profile Picture
Thiago Bauermann

Software Engineer
Linaro
Standard Ticket

Thiago has been working on GDB, the Linux kernel and firmware for more than a decade.

Talks

MAD24-210 Advanced features of Linaro Toolchain CI

Session

Toolchain

  • Wednesday, 15 May 11:45 - 12:45 (Europe/Madrid)
  • Room: Session 1 | Las Palmas I

The Linaro Toolchain CI has particular features not commonly available in other CIs. They enable automatically running the full binutils, GCC, GDB, and glibc testsuites on new upstream commits and quickly detect regressions, bisect them down to a single commit, even in the presence of flaky tests. Also, multiple components can be tested at the same time, and even emulators such as QEMU can be part of the test regimen. In benchmarking mode, it enables us to detect effects of new compiler optimizations on the standard C and math libraries. In this presentation, you will learn about these features and see examples of them in action. We recently added pre-commit testing. We’ll see the impact of this extension on the community. Finally, we’ll share some feedback from the community, illustrating how this is perceived as a major step forward, once we have managed to avoid false alarms caused by flaky tests.

Download Slides

Google Slides

Poking the Matrix from a safe distance: SVE/SME support in GDB's remote target

AArch64's Scalable Vector Extension (SVE) and Scalable Matrix Extension (SME) have registers whose size are given by the SVE vector length — a parameter that can be changed by the running application at its convenience. GDB already supports this when debugging a locally running application, but not when debugging a remote target. This talk examines how the remote target can be extended to support this use case, as well as the corresponding changes needed in GDB's internals and the XML target description. The result is arguably a cleaner way to support variable-length registers compared to the approach currently used for local debugging.

Download Slides

Flaky failures in the GDB testsuite are finally fine

Since around August 2023 the Linaro Toolchain Team has been running CI jobs on upstream main branches of binutils, GDB, GCC and glibc. This talk reflects on the evolution of the CI's graph of GDB testsuite results and examines some of the fixes that went into GDB and its testsuite as a result of its regression reports. The aim is to illuminate what kind of impact the CI had on GDB.

No slides available.