On Fri, 2023-12-01 at 17:10 -0700, Daniel Xu wrote: [...]
+SEC("tc") +__description("single CO-RE bitfield roundtrip") +__btf_path("btf__core_reloc_bitfields.bpf.o") +__success __failure_unpriv
do we want __failure_unpriv at all? Is this failure related to *bitfield* logic at all?
Oh, I pre-emptively added it. From the docs, I thought __failure_unpriv meant "don't try to load this as an unprivileged used cuz it'll fail". And since I used the tc hook, I figured it'd fail.
Actually it means: "try to load as unprivileged user and expect failure, report error on successful load".
In general, the meaning of "___xxx" and "___xxx_unpriv" annotations is identical, except first instructs to run the test in privileged mode, while second instructs to run test in unprivileged mode: - if only annotations w/o "*_unpriv" suffix are present the test would be executed as privileged; - if only annotations with "*_unpriv" suffix are present the test would be executed as unprivileged; - if both kinds of annotations are present the test would be executed in both modes.
[...]