Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
0c5a9b3
Add kernel selftest equivalent roadmap tests
varun-r-mallya Jun 21, 2026
a64f01d
Tests: Register a vmlinux subdirectory under kernel_selftest_equivalent
r41k0u Aug 14, 2026
7911436
Tests: Port three kernel BPF selftests
r41k0u Aug 14, 2026
0459b3a
Tests: Add perf_skip as a nested-struct-access roadmap test
r41k0u Aug 14, 2026
507f075
Tests: Record what the first selftest porting spike found
r41k0u Aug 14, 2026
708b5af
Merge remote-tracking branch 'origin/master' into claude/pythonbpf-st…
claude Sep 24, 2026
3ffba47
Tests: Replace the WORKAROUND(globals) HashMaps with real @bpfglobal …
claude Sep 24, 2026
0bdea85
Core: Store a context field into a narrower slot through convert()
claude Sep 24, 2026
5e70b8f
Tests: Port sixteen more kernel selftests now that scalar globals exist
claude Sep 24, 2026
e0d4d1e
Tools: Check in the selftest corpus classifier
claude Sep 24, 2026
298c140
Tests: Port five more selftests found by re-running the corpus audit
claude Sep 24, 2026
7ecc737
Core: Lower annotated assignment (x: c_int32 = 0)
varun-r-mallya Sep 24, 2026
c340ebf
Tests: Annotated assignment passes now
varun-r-mallya Sep 24, 2026
919d994
Core: Lower if-branches in the function's return type
varun-r-mallya Sep 24, 2026
24e7feb
Core: Lower for-over-range and while loops, with break and continue
varun-r-mallya Sep 24, 2026
5fb3c8d
Tests: Loops pass now, plus the cases the lowering promises
varun-r-mallya Sep 24, 2026
89b7eb6
Tests: Indent the loop C reference with spaces
varun-r-mallya Sep 24, 2026
598e3b4
Tests: Skip vmlinux tests only when vmlinux.py is absent
r41k0u Sep 24, 2026
cf80aad
Tools: Fix four classifier mistakes in the selftest audit
r41k0u Sep 24, 2026
057b68c
Core: Let every integer ctypes constructor declare a slot of its width
r41k0u Sep 24, 2026
efe58fc
Core: Treat an integer vmlinux field as its IntTy in assignments
r41k0u Sep 24, 2026
3de9832
Core: Implement ArrayMap as BPF_MAP_TYPE_ARRAY
r41k0u Sep 24, 2026
49e7485
Tests: Let a verifier-level xfail name the rejection it expects
r41k0u Sep 24, 2026
d649327
Docs: Refresh the audit numbers after the classifier fixes
r41k0u Sep 24, 2026
55fb6d6
Core: Export every XDP action from pythonbpf.helper
r41k0u Sep 24, 2026
3a984dd
Revert "Core: Export every XDP action from pythonbpf.helper"
r41k0u Sep 25, 2026
ad6adb1
x
r41k0u Sep 25, 2026
49ed2cf
Core: Report an unknown name in an operand as undefined
r41k0u Sep 25, 2026
cb1952d
Merge #105 (selftest roadmap tests, ArrayMap, narrow ctx stores) for …
varun-r-mallya Sep 25, 2026
107f035
Merge #106 (loops) for bpfsnake
varun-r-mallya Sep 25, 2026
d992493
Core: Let probe_read_kernel read into a scalar, from a register address
varun-r-mallya Sep 25, 2026
95a986e
Core: Give each function its own context DILocalVariable
varun-r-mallya Sep 25, 2026
1dfb22d
Core: Compare map values by value, not by address
varun-r-mallya Sep 25, 2026
35d1766
Tests: probe_read_kernel into a scalar, shared ctx names, map value c…
varun-r-mallya Sep 25, 2026
cba2c89
Examples: Port bpfsnake, the game logic in eBPF and the board in Python
varun-r-mallya Sep 25, 2026
851c7ef
Examples: Draw bpfsnake with pygame and steer it from the window
varun-r-mallya Sep 25, 2026
bc56dd8
Examples: Let bpfsnake draw in the terminal with --terminal
varun-r-mallya Sep 25, 2026
869cf61
Examples: Draw bpfsnake's terminal board exactly as the bpftrace scri…
varun-r-mallya Sep 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/getting-started/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ def trace_open(ctx: c_void_p) -> c_int64:
For network packet processing:

```python
from pythonbpf.helper import XDP_PASS
from vmlinux import XDP_PASS

@section("xdp")
def xdp_pass(ctx: c_void_p) -> c_int64:
Expand Down
2 changes: 1 addition & 1 deletion docs/user-guide/decorators.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ def trace_open_return(ctx):
For network packet processing at the earliest point:

```python
from pythonbpf.helper import XDP_PASS
from vmlinux import XDP_PASS
from ctypes import c_void_p, c_int64

@section("xdp")
Expand Down
3 changes: 2 additions & 1 deletion docs/user-guide/structs.md
Original file line number Diff line number Diff line change
Expand Up @@ -290,7 +290,8 @@ class MyStruct:
```python
from pythonbpf import bpf, struct, map, section
from pythonbpf.maps import RingBuffer
from pythonbpf.helper import ktime, XDP_PASS
from pythonbpf.helper import ktime
from vmlinux import XDP_PASS
from ctypes import c_void_p, c_int64, c_uint8, c_uint16, c_uint32, c_uint64

@bpf
Expand Down
Loading
Loading