Commit d63a342
Fix BPF verifier failures on older/stricter kernels
Two fixes:
1. Mask ret with & 0xFFFF when assigning to snaplen in 12 BPF programs.
The verifier on older kernels (RHEL 8 4.18, COS 6.6) rejects
bpf_probe_read_user calls where the size argument (ret) could be
negative. The mask tells the verifier the value is bounded unsigned.
2. Stub out t1_execve_x and t2_execve_x with #if 0 around their bodies.
These tail calls are unreachable since execve_x returns early for both
success and failure cases (ROX-31971). Their complexity exceeded the
1M instruction verifier limit on RHEL SAP 9.4 (kernel 5.14.0-427).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 88b7f29 commit d63a342
File tree
1 file changed
+10
-0
lines changed- driver/modern_bpf/programs/tail_called/events/syscall_dispatched_events
1 file changed
+10
-0
lines changedLines changed: 10 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
134 | 140 | | |
135 | 141 | | |
136 | 142 | | |
| |||
255 | 261 | | |
256 | 262 | | |
257 | 263 | | |
| 264 | + | |
258 | 265 | | |
259 | 266 | | |
260 | 267 | | |
261 | 268 | | |
262 | 269 | | |
| 270 | + | |
| 271 | + | |
263 | 272 | | |
264 | 273 | | |
265 | 274 | | |
| |||
294 | 303 | | |
295 | 304 | | |
296 | 305 | | |
| 306 | + | |
297 | 307 | | |
298 | 308 | | |
299 | 309 | | |
| |||
0 commit comments