• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

iovisor / ubpf / 28978499608
79%

Build:
DEFAULT BRANCH: main
Ran 08 Jul 2026 09:57PM UTC
Jobs 6
Files 205
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

08 Jul 2026 06:25PM UTC coverage: 78.793% (-0.2%) from 79.028%
28978499608

push

github

web-flow
Loader and verifier fixes for clang/LLVM BPF outputLoader verifier fixes (#802)

* verifier: accept sub-programs that end in an unconditional jump

check_for_self_contained_sub_programs() accepted a local-call sub-program
only if it ended in EXIT or had an unconditional jump as its penultimate
instruction, rejecting one whose final instruction is itself the jump.
clang produces this layout when a function's tail is a loop back-edge:
every exit path leaves through an EXIT in the loop body and the last
instruction is a JA back to the top.

This change accepts a trailing JA/JA32 as a terminator in addition to the
penultimate-jump check for more common layouts.

Signed-off-by: Alex Forster <alex@alexforster.com>
Co-Authored-By: Claude <noreply@anthropic.com>

* Recompute un-relocated intra-section bpf-to-bpf call targets after link

clang emits calls between static functions in the same section with a
PC-relative imm and no relocation entry. The imm is computed against the
.o instruction layout, but the loader lands functions in symbol-table
order, which differs from .o offset order whenever the main function is
not first in its section. When the two orders differ the imm is stale and
the call jumps to the wrong function.

Add a fixup pass after the relocation pass that finds these un-relocated
local calls, decodes the original target offset from the raw imm, locates
the target by its section start, and rewrites the imm from the landed
positions the same way the relocation pass does. Call sites that already
carry a relocation (SHT_REL or SHT_RELA) are detected and skipped. The
loader still only applies SHT_REL; SHT_RELA is scanned here only so a call
carrying one is recognized as relocated and left alone rather than
re-decoded into a wrong target.

The added test exercises the no-relocation path; the skip and error
branches are not covered.

Signed-off-by: Alex Forster <alex@alexforster.com>
Co-Authored-By: Claude <noreply@anthropic.com>

* loader: accept... (continued)

139 of 168 new or added lines in 3 files covered. (82.74%)

117 existing lines in 11 files now uncovered.

9270 of 11765 relevant lines covered (78.79%)

933162.88 hits per line

Uncovered Changes

Lines Coverage ∆ File
20
67.92
2.35% vm/ubpf_loader.c
9
90.63
custom_tests/srcs/ubpf_test_elf_unrelocated_local_call.cc

Coverage Regressions

Lines Coverage ∆ File
27
64.84
-17.98% usr/include/c++/13/bits/stl_algobase.h
23
84.9
-5.82% Applications/Xcode_26.5.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__vector/vector.h
20
62.77
-4.25% usr/include/c++/13/bits/vector.tcc
15
86.93
-2.91% Applications/Xcode_16.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/vector
11
72.5
-27.5% usr/include/c++/13/bits/stl_iterator.h
6
33.33
-66.67% usr/include/c++/13/bits/stl_iterator_base_funcs.h
5
64.29
-35.71% Applications/Xcode_16.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__algorithm/copy_move_common.h
5
64.29
-35.71% Applications/Xcode_26.5.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__algorithm/copy_move_common.h
3
75.76
-2.58% usr/include/c++/13/bits/stl_uninitialized.h
1
69.88
2.93% usr/include/c++/13/bits/basic_string.h
1
67.92
2.35% vm/ubpf_loader.c
Jobs
ID Job ID Ran Files Coverage
1 run-Debug-ubuntu-latest-x86_64 - 28978499608.1 08 Jul 2026 09:57PM UTC 76
75.43
GitHub Action Run
2 run-Debug-ubuntu-24.04-arm-arm64 - 28978499608.2 08 Jul 2026 10:00PM UTC 77
62.41
GitHub Action Run
3 run-RelWithDebInfo-macos-latest-x86_64 - 28978499608.3 08 Jul 2026 09:59PM UTC 159
75.23
GitHub Action Run
4 run-Debug-macos-latest-x86_64 - 28978499608.4 08 Jul 2026 09:58PM UTC 99
74.21
GitHub Action Run
5 run-RelWithDebInfo-ubuntu-latest-x86_64 - 28978499608.5 08 Jul 2026 10:00PM UTC 76
75.42
GitHub Action Run
6 run-RelWithDebInfo-ubuntu-24.04-arm-arm64 - 28978499608.6 08 Jul 2026 09:57PM UTC 77
62.43
GitHub Action Run
Source Files on build 28978499608
  • Tree
  • List 205
  • Changed 27
  • Source Changed 2
  • Coverage Changed 27
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28978499608
  • 4f7ef618 on github
  • Prev Build on main (#28826397445)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc