Commit facdbdfe authored by Benjamin Tissoires's avatar Benjamin Tissoires
Browse files

selftests/hid: add test for attaching multiple time the same struct_ops

Turns out that we would en up in a bad state if we attempt to attach
twice the same HID-BPF struct_ops, so have a test for it.

Link: https://patch.msgid.link/20240723-fix-6-11-bpf-v1-4-b9d770346784@kernel.org


Signed-off-by: default avatarBenjamin Tissoires <bentiss@kernel.org>
parent acd34cfc
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -694,6 +694,24 @@ TEST_F(hid_bpf, subprog_raw_event)
	ASSERT_EQ(buf[2], 52);
}

/*
 * Attach hid_first_event to the given uhid device,
 * attempt at re-attaching it, we should not lock and
 * return an invalid struct bpf_link
 */
TEST_F(hid_bpf, multiple_attach)
{
	const struct test_program progs[] = {
		{ .name = "hid_first_event" },
	};
	struct bpf_link *link;

	LOAD_PROGRAMS(progs);

	link = bpf_map__attach_struct_ops(self->skel->maps.first_event);
	ASSERT_NULL(link) TH_LOG("unexpected return value when re-attaching the struct_ops");
}

/*
 * Ensures that we can attach/detach programs
 */