Home
last modified time | relevance | path

Searched hist:"478 bee0df0ec9067c12e7d058d78721a7e7a1b29" (Results 1 – 1 of 1) sorted by relevance

/openbmc/linux/tools/testing/selftests/bpf/
H A Dtest_progs.hdiff 478bee0df0ec9067c12e7d058d78721a7e7a1b29 Thu Dec 19 18:05:11 CST 2019 Andrey Ignatov <rdna@fb.com> selftests/bpf: Preserve errno in test_progs CHECK macros

It's follow-up for discussion [1]

CHECK and CHECK_FAIL macros in test_progs.h can affect errno in some
circumstances, e.g. if some code accidentally closes stdout. It makes
checking errno in patterns like this unreliable:

if (CHECK(!bpf_prog_attach_xattr(...), "tag", "msg"))
goto err;
CHECK_FAIL(errno != ENOENT);

, since by CHECK_FAIL time errno could be affected not only by
bpf_prog_attach_xattr but by CHECK as well.

Fix it by saving and restoring errno in the macros. There is no "Fixes"
tag since no problems were discovered yet and it's rather precaution.

test_progs was run with this change and no difference was identified.

[1] https://lore.kernel.org/bpf/20191219210907.GD16266@rdna-mbp.dhcp.thefacebook.com/

Signed-off-by: Andrey Ignatov <rdna@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andriin@fb.com>
Link: https://lore.kernel.org/bpf/20191220000511.1684853-1-rdna@fb.com