Lesstep
GitHub Actions · Ubuntu · Checked November 4, 2026

BPF on syscalls:sys_enter_* misses events on GitHub's Ubuntu runners (kernel 7.0.0-1017-azure)

The GitHub-hosted ubuntu-24.04 image moved from kernel 6.17.0-1022-azure to 7.0.0-1017-azure with image 20261018, and ubuntu-26.04 has had 7.0.0-1017-azure since about image 20261012.163.1. ubuntu-latest is one of the two either way (it is moving to 26.04). That kernel carries a backport of "tracing: perf: Fix stale head for perf syscall tracing" (2c2b322acdcc, from Linux 7.2) without the change it depends on. It returns early from perf_syscall_enter() before it checks for BPF programs, so a BPF program on a syscalls:sys_enter_* tracepoint, for syscalls such as execve, openat and write, runs only on the CPUs where a perf event for that tracepoint was opened (runner-images #15003).

What it looks like

Nothing fails to load or attach. The program runs, but only for calls made on one CPU, usually CPU 0, so on a 4-CPU runner about three quarters of the events are missing. Ring buffer drop counters and recursion_misses stay at 0. Tests that wait for an event time out, and which ones fail changes from run to run, because it depends on the CPU a thread happened to run on.

Where the reports came from

Fix: run the eBPF jobs on ubuntu-22.04

jobs:
  ebpf-tests:
    runs-on: ubuntu-22.04

The 22.04 image is on kernel 6.8.0-1070-azure (image readme), which does not have the backport. Pinning ubuntu-24.04 does not help: that is the image with the new kernel. Move only the jobs that load BPF programs, until a fixed kernel reaches the images or GitHub retires 22.04.

The runner-images maintainers reproduced it, and said their build process cannot pin an older kernel and they will not pause image updates for it. The fix has to come from Ubuntu: a revert has been sent for Ubuntu's kernel (SRU patch, October 26), and Launchpad bug 2170225 was still New on November 4. The upstream 7.0 and 7.1 stable series are at end of life, so they will not get the fix.

Telling it apart

Other 26.04 failures

See failed jobs from IntelliJ IDEA

Pipeline Inbox for GitHub Actions Workflows, a plugin by Lesstep for JetBrains IDEs 2024.1 or later, lists the runs of all your repositories in an IDE tool window, with their jobs and steps, and your current branch's runs are in the status bar. Reading is free; re-running failed jobs, cancelling, running workflows and reviewing deployments are Pro (US$1.50 a month, with a 30-day trial).

Get it on JetBrains Marketplace

GitHub and GitHub Actions are trademarks of GitHub, Inc.; Ubuntu is a trademark of Canonical Ltd.; Linux is the registered trademark of Linus Torvalds; IntelliJ IDEA is a trademark of JetBrains s.r.o. This page is not affiliated with, sponsored or endorsed by GitHub, Inc., Canonical, the Linux Foundation or JetBrains.

More: "The ubuntu-latest label will migrate to Ubuntu 26" · Postgres never starts in Docker on Ubuntu 26.04 · GitHub Actions plugins for IntelliJ IDEA compared · 日本語