-
Notifications
You must be signed in to change notification settings - Fork 240
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Native eBPF program attach failure causes the next valid attempt to fail #2133
Comments
@mtfriesen can you confirm if the step 2 in the repro steps above also unloaded the eBPF program
|
Yup, I've updated the repro steps to include the Confirmed no issues issuing the two |
@shankarseal could this be prioritized? I am now needing to work around this eBPF bug in another project's test cases. |
@Alan-Jowett -- can you make a short-term fix to return EBUSY for the scenario mentioned in this issue? I am moving this to 2408. |
Still blocked on multi-program fix. |
Describe the bug
If an application tries to open+load+attach the same native program immediately after it failed to attach, eBPF fails to load the program on the second attempt, seemingly because the first driver is still unloading.
Separately, the same native eBPF program cannot be loaded concurrently, but it's unclear whether that is by design.
OS information
20348.859.amd64fre.fe_release_svc_prod2.220707-1832
Steps taken to reproduce bug
A
(native or JIT) to an XDP interfaceB
to the same XDP interface - this will be rejected by XDPbpf_object__close
native programB
.B
to the same XDP interface usingXDP_FLAGS_REPLACE
Expected behavior
Attach (3) should succeed.
Actual outcome
Attach (3) fails unless the caller delays the thread between attach (2) and (3) long enough for the driver loaded during attach (2) to unload.
Additional details
ebpf_native_load_fail.log
Concrete code:
The text was updated successfully, but these errors were encountered: