xref: /openbmc/linux/drivers/hid/bpf/entrypoints/entrypoints.lskel.h (revision 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e)
1f5c27da4SBenjamin Tissoires /* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */
2f5c27da4SBenjamin Tissoires /* THIS FILE IS AUTOGENERATED BY BPFTOOL! */
3f5c27da4SBenjamin Tissoires #ifndef __ENTRYPOINTS_BPF_SKEL_H__
4f5c27da4SBenjamin Tissoires #define __ENTRYPOINTS_BPF_SKEL_H__
5f5c27da4SBenjamin Tissoires 
6f5c27da4SBenjamin Tissoires #include <bpf/skel_internal.h>
7f5c27da4SBenjamin Tissoires 
8f5c27da4SBenjamin Tissoires struct entrypoints_bpf {
9f5c27da4SBenjamin Tissoires 	struct bpf_loader_ctx ctx;
10f5c27da4SBenjamin Tissoires 	struct {
11f5c27da4SBenjamin Tissoires 		struct bpf_map_desc hid_jmp_table;
12f5c27da4SBenjamin Tissoires 	} maps;
13f5c27da4SBenjamin Tissoires 	struct {
14f5c27da4SBenjamin Tissoires 		struct bpf_prog_desc hid_tail_call;
15f5c27da4SBenjamin Tissoires 	} progs;
16f5c27da4SBenjamin Tissoires 	struct {
17f5c27da4SBenjamin Tissoires 		int hid_tail_call_fd;
18f5c27da4SBenjamin Tissoires 	} links;
19f5c27da4SBenjamin Tissoires };
20f5c27da4SBenjamin Tissoires 
21f5c27da4SBenjamin Tissoires static inline int
entrypoints_bpf__hid_tail_call__attach(struct entrypoints_bpf * skel)22f5c27da4SBenjamin Tissoires entrypoints_bpf__hid_tail_call__attach(struct entrypoints_bpf *skel)
23f5c27da4SBenjamin Tissoires {
24f5c27da4SBenjamin Tissoires 	int prog_fd = skel->progs.hid_tail_call.prog_fd;
25f5c27da4SBenjamin Tissoires 	int fd = skel_raw_tracepoint_open(NULL, prog_fd);
26f5c27da4SBenjamin Tissoires 
27f5c27da4SBenjamin Tissoires 	if (fd > 0)
28f5c27da4SBenjamin Tissoires 		skel->links.hid_tail_call_fd = fd;
29f5c27da4SBenjamin Tissoires 	return fd;
30f5c27da4SBenjamin Tissoires }
31f5c27da4SBenjamin Tissoires 
32f5c27da4SBenjamin Tissoires static inline int
entrypoints_bpf__attach(struct entrypoints_bpf * skel)33f5c27da4SBenjamin Tissoires entrypoints_bpf__attach(struct entrypoints_bpf *skel)
34f5c27da4SBenjamin Tissoires {
35f5c27da4SBenjamin Tissoires 	int ret = 0;
36f5c27da4SBenjamin Tissoires 
37f5c27da4SBenjamin Tissoires 	ret = ret < 0 ? ret : entrypoints_bpf__hid_tail_call__attach(skel);
38f5c27da4SBenjamin Tissoires 	return ret < 0 ? ret : 0;
39f5c27da4SBenjamin Tissoires }
40f5c27da4SBenjamin Tissoires 
41f5c27da4SBenjamin Tissoires static inline void
entrypoints_bpf__detach(struct entrypoints_bpf * skel)42f5c27da4SBenjamin Tissoires entrypoints_bpf__detach(struct entrypoints_bpf *skel)
43f5c27da4SBenjamin Tissoires {
44f5c27da4SBenjamin Tissoires 	skel_closenz(skel->links.hid_tail_call_fd);
45f5c27da4SBenjamin Tissoires }
46f5c27da4SBenjamin Tissoires static void
entrypoints_bpf__destroy(struct entrypoints_bpf * skel)47f5c27da4SBenjamin Tissoires entrypoints_bpf__destroy(struct entrypoints_bpf *skel)
48f5c27da4SBenjamin Tissoires {
49f5c27da4SBenjamin Tissoires 	if (!skel)
50f5c27da4SBenjamin Tissoires 		return;
51f5c27da4SBenjamin Tissoires 	entrypoints_bpf__detach(skel);
52f5c27da4SBenjamin Tissoires 	skel_closenz(skel->progs.hid_tail_call.prog_fd);
53f5c27da4SBenjamin Tissoires 	skel_closenz(skel->maps.hid_jmp_table.map_fd);
54f5c27da4SBenjamin Tissoires 	skel_free(skel);
55f5c27da4SBenjamin Tissoires }
56f5c27da4SBenjamin Tissoires static inline struct entrypoints_bpf *
entrypoints_bpf__open(void)57f5c27da4SBenjamin Tissoires entrypoints_bpf__open(void)
58f5c27da4SBenjamin Tissoires {
59f5c27da4SBenjamin Tissoires 	struct entrypoints_bpf *skel;
60f5c27da4SBenjamin Tissoires 
61f5c27da4SBenjamin Tissoires 	skel = skel_alloc(sizeof(*skel));
62f5c27da4SBenjamin Tissoires 	if (!skel)
63f5c27da4SBenjamin Tissoires 		goto cleanup;
64f5c27da4SBenjamin Tissoires 	skel->ctx.sz = (void *)&skel->links - (void *)skel;
65f5c27da4SBenjamin Tissoires 	return skel;
66f5c27da4SBenjamin Tissoires cleanup:
67f5c27da4SBenjamin Tissoires 	entrypoints_bpf__destroy(skel);
68f5c27da4SBenjamin Tissoires 	return NULL;
69f5c27da4SBenjamin Tissoires }
70f5c27da4SBenjamin Tissoires 
71f5c27da4SBenjamin Tissoires static inline int
entrypoints_bpf__load(struct entrypoints_bpf * skel)72f5c27da4SBenjamin Tissoires entrypoints_bpf__load(struct entrypoints_bpf *skel)
73f5c27da4SBenjamin Tissoires {
74f5c27da4SBenjamin Tissoires 	struct bpf_load_and_run_opts opts = {};
75f5c27da4SBenjamin Tissoires 	int err;
76f5c27da4SBenjamin Tissoires 
77f5c27da4SBenjamin Tissoires 	opts.ctx = (struct bpf_loader_ctx *)skel;
78*bb2c0aeaSBenjamin Tissoires 	opts.data_sz = 2856;
79f5c27da4SBenjamin Tissoires 	opts.data = (void *)"\
80f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
81f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
82f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
83f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
84f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
85f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
86f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
87f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
88f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
89f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
90f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
91f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
92f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
93f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
94f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
95f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
96f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
97f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
98f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
99f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
100f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
101f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
102f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
103f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
104f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
105f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
106f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
107f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
108f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
109f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
110f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
111f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
112f5c27da4SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9f\xeb\x01\0\
113*bb2c0aeaSBenjamin Tissoires \x18\0\0\0\0\0\0\0\x60\x02\0\0\x60\x02\0\0\x12\x02\0\0\0\0\0\0\0\0\0\x02\x03\0\
114f5c27da4SBenjamin Tissoires \0\0\x01\0\0\0\0\0\0\x01\x04\0\0\0\x20\0\0\x01\0\0\0\0\0\0\0\x03\0\0\0\0\x02\0\
115f5c27da4SBenjamin Tissoires \0\0\x04\0\0\0\x03\0\0\0\x05\0\0\0\0\0\0\x01\x04\0\0\0\x20\0\0\0\0\0\0\0\0\0\0\
116f5c27da4SBenjamin Tissoires \x02\x06\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x02\0\0\0\x04\0\0\0\0\x04\0\0\0\0\0\0\
117f5c27da4SBenjamin Tissoires \0\0\0\x02\x08\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x02\0\0\0\x04\0\0\0\x04\0\0\0\0\
118f5c27da4SBenjamin Tissoires \0\0\0\x04\0\0\x04\x20\0\0\0\x19\0\0\0\x01\0\0\0\0\0\0\0\x1e\0\0\0\x05\0\0\0\
119f5c27da4SBenjamin Tissoires \x40\0\0\0\x2a\0\0\0\x07\0\0\0\x80\0\0\0\x33\0\0\0\x07\0\0\0\xc0\0\0\0\x3e\0\0\
1200baef373SBenjamin Tissoires \0\0\0\0\x0e\x09\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\x02\x0c\0\0\0\x4c\0\0\0\0\0\0\
1210baef373SBenjamin Tissoires \x01\x08\0\0\0\x40\0\0\0\0\0\0\0\x01\0\0\x0d\x02\0\0\0\x5f\0\0\0\x0b\0\0\0\x63\
1220baef373SBenjamin Tissoires \0\0\0\x01\0\0\x0c\x0d\0\0\0\x09\x01\0\0\x05\0\0\x04\x20\0\0\0\x15\x01\0\0\x10\
1230baef373SBenjamin Tissoires \0\0\0\0\0\0\0\x1b\x01\0\0\x12\0\0\0\x40\0\0\0\x1f\x01\0\0\x10\0\0\0\x80\0\0\0\
1240baef373SBenjamin Tissoires \x2e\x01\0\0\x14\0\0\0\xa0\0\0\0\0\0\0\0\x15\0\0\0\xc0\0\0\0\x3a\x01\0\0\0\0\0\
1250baef373SBenjamin Tissoires \x08\x11\0\0\0\x40\x01\0\0\0\0\0\x01\x04\0\0\0\x20\0\0\0\0\0\0\0\0\0\0\x02\x13\
126*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\x0a\x1c\0\0\0\x4d\x01\0\0\x04\0\0\x06\x04\0\0\0\x5d\x01\0\
1270baef373SBenjamin Tissoires \0\0\0\0\0\x6e\x01\0\0\x01\0\0\0\x80\x01\0\0\x02\0\0\0\x93\x01\0\0\x03\0\0\0\0\
1280baef373SBenjamin Tissoires \0\0\0\x02\0\0\x05\x04\0\0\0\xa4\x01\0\0\x16\0\0\0\0\0\0\0\xab\x01\0\0\x16\0\0\
129*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\xb0\x01\0\0\0\0\0\x08\x02\0\0\0\xec\x01\0\0\0\0\0\x01\x01\0\0\0\x08\
130*bb2c0aeaSBenjamin Tissoires \0\0\x01\0\0\0\0\0\0\0\x03\0\0\0\0\x17\0\0\0\x04\0\0\0\x04\0\0\0\xf1\x01\0\0\0\
131*bb2c0aeaSBenjamin Tissoires \0\0\x0e\x18\0\0\0\x01\0\0\0\xf9\x01\0\0\x01\0\0\x0f\x20\0\0\0\x0a\0\0\0\0\0\0\
132*bb2c0aeaSBenjamin Tissoires \0\x20\0\0\0\xff\x01\0\0\x01\0\0\x0f\x04\0\0\0\x19\0\0\0\0\0\0\0\x04\0\0\0\x07\
133*bb2c0aeaSBenjamin Tissoires \x02\0\0\0\0\0\x07\0\0\0\0\0\x69\x6e\x74\0\x5f\x5f\x41\x52\x52\x41\x59\x5f\x53\
1340baef373SBenjamin Tissoires \x49\x5a\x45\x5f\x54\x59\x50\x45\x5f\x5f\0\x74\x79\x70\x65\0\x6d\x61\x78\x5f\
1350baef373SBenjamin Tissoires \x65\x6e\x74\x72\x69\x65\x73\0\x6b\x65\x79\x5f\x73\x69\x7a\x65\0\x76\x61\x6c\
1360baef373SBenjamin Tissoires \x75\x65\x5f\x73\x69\x7a\x65\0\x68\x69\x64\x5f\x6a\x6d\x70\x5f\x74\x61\x62\x6c\
1370baef373SBenjamin Tissoires \x65\0\x75\x6e\x73\x69\x67\x6e\x65\x64\x20\x6c\x6f\x6e\x67\x20\x6c\x6f\x6e\x67\
1380baef373SBenjamin Tissoires \0\x63\x74\x78\0\x68\x69\x64\x5f\x74\x61\x69\x6c\x5f\x63\x61\x6c\x6c\0\x66\x6d\
1390baef373SBenjamin Tissoires \x6f\x64\x5f\x72\x65\x74\x2f\x5f\x5f\x68\x69\x64\x5f\x62\x70\x66\x5f\x74\x61\
1400baef373SBenjamin Tissoires \x69\x6c\x5f\x63\x61\x6c\x6c\0\x2f\x68\x6f\x6d\x65\x2f\x62\x74\x69\x73\x73\x6f\
1410baef373SBenjamin Tissoires \x69\x72\x2f\x53\x72\x63\x2f\x68\x69\x64\x2f\x64\x72\x69\x76\x65\x72\x73\x2f\
1420baef373SBenjamin Tissoires \x68\x69\x64\x2f\x62\x70\x66\x2f\x65\x6e\x74\x72\x79\x70\x6f\x69\x6e\x74\x73\
1430baef373SBenjamin Tissoires \x2f\x65\x6e\x74\x72\x79\x70\x6f\x69\x6e\x74\x73\x2e\x62\x70\x66\x2e\x63\0\x69\
1440baef373SBenjamin Tissoires \x6e\x74\x20\x42\x50\x46\x5f\x50\x52\x4f\x47\x28\x68\x69\x64\x5f\x74\x61\x69\
1450baef373SBenjamin Tissoires \x6c\x5f\x63\x61\x6c\x6c\x2c\x20\x73\x74\x72\x75\x63\x74\x20\x68\x69\x64\x5f\
1460baef373SBenjamin Tissoires \x62\x70\x66\x5f\x63\x74\x78\x20\x2a\x68\x63\x74\x78\x29\0\x68\x69\x64\x5f\x62\
1470baef373SBenjamin Tissoires \x70\x66\x5f\x63\x74\x78\0\x69\x6e\x64\x65\x78\0\x68\x69\x64\0\x61\x6c\x6c\x6f\
1480baef373SBenjamin Tissoires \x63\x61\x74\x65\x64\x5f\x73\x69\x7a\x65\0\x72\x65\x70\x6f\x72\x74\x5f\x74\x79\
1490baef373SBenjamin Tissoires \x70\x65\0\x5f\x5f\x75\x33\x32\0\x75\x6e\x73\x69\x67\x6e\x65\x64\x20\x69\x6e\
1500baef373SBenjamin Tissoires \x74\0\x68\x69\x64\x5f\x72\x65\x70\x6f\x72\x74\x5f\x74\x79\x70\x65\0\x48\x49\
1510baef373SBenjamin Tissoires \x44\x5f\x49\x4e\x50\x55\x54\x5f\x52\x45\x50\x4f\x52\x54\0\x48\x49\x44\x5f\x4f\
1520baef373SBenjamin Tissoires \x55\x54\x50\x55\x54\x5f\x52\x45\x50\x4f\x52\x54\0\x48\x49\x44\x5f\x46\x45\x41\
1530baef373SBenjamin Tissoires \x54\x55\x52\x45\x5f\x52\x45\x50\x4f\x52\x54\0\x48\x49\x44\x5f\x52\x45\x50\x4f\
1540baef373SBenjamin Tissoires \x52\x54\x5f\x54\x59\x50\x45\x53\0\x72\x65\x74\x76\x61\x6c\0\x73\x69\x7a\x65\0\
1550baef373SBenjamin Tissoires \x5f\x5f\x73\x33\x32\0\x30\x3a\x30\0\x09\x62\x70\x66\x5f\x74\x61\x69\x6c\x5f\
1560baef373SBenjamin Tissoires \x63\x61\x6c\x6c\x28\x63\x74\x78\x2c\x20\x26\x68\x69\x64\x5f\x6a\x6d\x70\x5f\
1570baef373SBenjamin Tissoires \x74\x61\x62\x6c\x65\x2c\x20\x68\x63\x74\x78\x2d\x3e\x69\x6e\x64\x65\x78\x29\
158*bb2c0aeaSBenjamin Tissoires \x3b\0\x63\x68\x61\x72\0\x4c\x49\x43\x45\x4e\x53\x45\0\x2e\x6d\x61\x70\x73\0\
159*bb2c0aeaSBenjamin Tissoires \x6c\x69\x63\x65\x6e\x73\x65\0\x68\x69\x64\x5f\x64\x65\x76\x69\x63\x65\0\0\0\0\
160*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x8a\x04\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\
1610baef373SBenjamin Tissoires \0\0\0\x04\0\0\0\x04\0\0\0\0\x04\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x68\x69\x64\x5f\
1620baef373SBenjamin Tissoires \x6a\x6d\x70\x5f\x74\x61\x62\x6c\x65\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
1630baef373SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\x47\x50\x4c\0\0\0\0\0\x79\x12\0\0\0\0\0\0\x61\x23\0\0\0\0\
1640baef373SBenjamin Tissoires \0\0\x18\x52\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x85\0\0\0\x0c\0\0\0\xb7\0\0\0\0\0\0\0\
165*bb2c0aeaSBenjamin Tissoires \x95\0\0\0\0\0\0\0\0\0\0\0\x0e\0\0\0\0\0\0\0\x8e\0\0\0\xd3\0\0\0\x05\x48\0\0\
166*bb2c0aeaSBenjamin Tissoires \x01\0\0\0\x8e\0\0\0\xba\x01\0\0\x02\x50\0\0\x05\0\0\0\x8e\0\0\0\xd3\0\0\0\x05\
167*bb2c0aeaSBenjamin Tissoires \x48\0\0\x08\0\0\0\x0f\0\0\0\xb6\x01\0\0\0\0\0\0\x1a\0\0\0\x07\0\0\0\0\0\0\0\0\
1680baef373SBenjamin Tissoires \0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x68\x69\
1690baef373SBenjamin Tissoires \x64\x5f\x74\x61\x69\x6c\x5f\x63\x61\x6c\x6c\0\0\0\0\0\0\0\x1a\0\0\0\0\0\0\0\
1700baef373SBenjamin Tissoires \x08\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\x10\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\x01\0\
1710baef373SBenjamin Tissoires \0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x10\0\0\0\0\0\0\0\x5f\
1720baef373SBenjamin Tissoires \x5f\x68\x69\x64\x5f\x62\x70\x66\x5f\x74\x61\x69\x6c\x5f\x63\x61\x6c\x6c\0\0\0\
173*bb2c0aeaSBenjamin Tissoires \0\0";
174*bb2c0aeaSBenjamin Tissoires 	opts.insns_sz = 1192;
175f5c27da4SBenjamin Tissoires 	opts.insns = (void *)"\
176f5c27da4SBenjamin Tissoires \xbf\x16\0\0\0\0\0\0\xbf\xa1\0\0\0\0\0\0\x07\x01\0\0\x78\xff\xff\xff\xb7\x02\0\
177*bb2c0aeaSBenjamin Tissoires \0\x88\0\0\0\xb7\x03\0\0\0\0\0\0\x85\0\0\0\x71\0\0\0\x05\0\x11\0\0\0\0\0\x61\
178f5c27da4SBenjamin Tissoires \xa1\x78\xff\0\0\0\0\xd5\x01\x01\0\0\0\0\0\x85\0\0\0\xa8\0\0\0\x61\xa1\x7c\xff\
179f5c27da4SBenjamin Tissoires \0\0\0\0\xd5\x01\x01\0\0\0\0\0\x85\0\0\0\xa8\0\0\0\x61\xa1\x80\xff\0\0\0\0\xd5\
180*bb2c0aeaSBenjamin Tissoires \x01\x01\0\0\0\0\0\x85\0\0\0\xa8\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x61\
181*bb2c0aeaSBenjamin Tissoires \x01\0\0\0\0\0\0\xd5\x01\x02\0\0\0\0\0\xbf\x19\0\0\0\0\0\0\x85\0\0\0\xa8\0\0\0\
182*bb2c0aeaSBenjamin Tissoires \xbf\x70\0\0\0\0\0\0\x95\0\0\0\0\0\0\0\x61\x60\x08\0\0\0\0\0\x18\x61\0\0\0\0\0\
183*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\xa8\x09\0\0\x63\x01\0\0\0\0\0\0\x61\x60\x0c\0\0\0\0\0\x18\x61\0\0\0\
184*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\0\xa4\x09\0\0\x63\x01\0\0\0\0\0\0\x79\x60\x10\0\0\0\0\0\x18\x61\0\
185*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\0\0\0\x98\x09\0\0\x7b\x01\0\0\0\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\
186*bb2c0aeaSBenjamin Tissoires \0\x05\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\x90\x09\0\0\x7b\x01\0\0\0\0\0\0\xb7\x01\
187*bb2c0aeaSBenjamin Tissoires \0\0\x12\0\0\0\x18\x62\0\0\0\0\0\0\0\0\0\0\x90\x09\0\0\xb7\x03\0\0\x1c\0\0\0\
188*bb2c0aeaSBenjamin Tissoires \x85\0\0\0\xa6\0\0\0\xbf\x07\0\0\0\0\0\0\xc5\x07\xd7\xff\0\0\0\0\x63\x7a\x78\
189*bb2c0aeaSBenjamin Tissoires \xff\0\0\0\0\x61\x60\x1c\0\0\0\0\0\x15\0\x03\0\0\0\0\0\x18\x61\0\0\0\0\0\0\0\0\
190*bb2c0aeaSBenjamin Tissoires \0\0\xbc\x09\0\0\x63\x01\0\0\0\0\0\0\xb7\x01\0\0\0\0\0\0\x18\x62\0\0\0\0\0\0\0\
191*bb2c0aeaSBenjamin Tissoires \0\0\0\xb0\x09\0\0\xb7\x03\0\0\x48\0\0\0\x85\0\0\0\xa6\0\0\0\xbf\x07\0\0\0\0\0\
192*bb2c0aeaSBenjamin Tissoires \0\xc5\x07\xca\xff\0\0\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x63\x71\0\0\0\0\
193*bb2c0aeaSBenjamin Tissoires \0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\xf8\x09\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\x90\
194*bb2c0aeaSBenjamin Tissoires \x0a\0\0\x7b\x01\0\0\0\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\0\x0a\0\0\x18\x61\0\0\
195*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\0\0\x88\x0a\0\0\x7b\x01\0\0\0\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\
196*bb2c0aeaSBenjamin Tissoires \x38\x0a\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\xd0\x0a\0\0\x7b\x01\0\0\0\0\0\0\x18\
197*bb2c0aeaSBenjamin Tissoires \x60\0\0\0\0\0\0\0\0\0\0\x40\x0a\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\xe0\x0a\0\0\
198*bb2c0aeaSBenjamin Tissoires \x7b\x01\0\0\0\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\x70\x0a\0\0\x18\x61\0\0\0\0\0\
199*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\x0b\0\0\x7b\x01\0\0\0\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
200*bb2c0aeaSBenjamin Tissoires \x18\x61\0\0\0\0\0\0\0\0\0\0\xf8\x0a\0\0\x7b\x01\0\0\0\0\0\0\x61\x60\x08\0\0\0\
201*bb2c0aeaSBenjamin Tissoires \0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\x98\x0a\0\0\x63\x01\0\0\0\0\0\0\x61\x60\x0c\0\
202*bb2c0aeaSBenjamin Tissoires \0\0\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\x9c\x0a\0\0\x63\x01\0\0\0\0\0\0\x79\x60\
203*bb2c0aeaSBenjamin Tissoires \x10\0\0\0\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\xa0\x0a\0\0\x7b\x01\0\0\0\0\0\0\x61\
204*bb2c0aeaSBenjamin Tissoires \xa0\x78\xff\0\0\0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\xc8\x0a\0\0\x63\x01\0\0\0\0\0\
205*bb2c0aeaSBenjamin Tissoires \0\x18\x61\0\0\0\0\0\0\0\0\0\0\x10\x0b\0\0\xb7\x02\0\0\x14\0\0\0\xb7\x03\0\0\
206*bb2c0aeaSBenjamin Tissoires \x0c\0\0\0\xb7\x04\0\0\0\0\0\0\x85\0\0\0\xa7\0\0\0\xbf\x07\0\0\0\0\0\0\xc5\x07\
207*bb2c0aeaSBenjamin Tissoires \x91\xff\0\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\x80\x0a\0\0\x63\x70\x6c\0\0\0\0\0\
208*bb2c0aeaSBenjamin Tissoires \x77\x07\0\0\x20\0\0\0\x63\x70\x70\0\0\0\0\0\xb7\x01\0\0\x05\0\0\0\x18\x62\0\0\
209*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\0\0\x80\x0a\0\0\xb7\x03\0\0\x8c\0\0\0\x85\0\0\0\xa6\0\0\0\xbf\x07\
210*bb2c0aeaSBenjamin Tissoires \0\0\0\0\0\0\x18\x60\0\0\0\0\0\0\0\0\0\0\xf0\x0a\0\0\x61\x01\0\0\0\0\0\0\xd5\
211*bb2c0aeaSBenjamin Tissoires \x01\x02\0\0\0\0\0\xbf\x19\0\0\0\0\0\0\x85\0\0\0\xa8\0\0\0\xc5\x07\x7f\xff\0\0\
212*bb2c0aeaSBenjamin Tissoires \0\0\x63\x7a\x80\xff\0\0\0\0\x61\xa1\x78\xff\0\0\0\0\xd5\x01\x02\0\0\0\0\0\xbf\
213*bb2c0aeaSBenjamin Tissoires \x19\0\0\0\0\0\0\x85\0\0\0\xa8\0\0\0\x61\xa0\x80\xff\0\0\0\0\x63\x06\x28\0\0\0\
214*bb2c0aeaSBenjamin Tissoires \0\0\x18\x61\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x61\x10\0\0\0\0\0\0\x63\x06\x18\0\0\0\
215*bb2c0aeaSBenjamin Tissoires \0\0\xb7\0\0\0\0\0\0\0\x95\0\0\0\0\0\0\0";
216f5c27da4SBenjamin Tissoires 	err = bpf_load_and_run(&opts);
217f5c27da4SBenjamin Tissoires 	if (err < 0)
218f5c27da4SBenjamin Tissoires 		return err;
219f5c27da4SBenjamin Tissoires 	return 0;
220f5c27da4SBenjamin Tissoires }
221f5c27da4SBenjamin Tissoires 
222f5c27da4SBenjamin Tissoires static inline struct entrypoints_bpf *
entrypoints_bpf__open_and_load(void)223f5c27da4SBenjamin Tissoires entrypoints_bpf__open_and_load(void)
224f5c27da4SBenjamin Tissoires {
225f5c27da4SBenjamin Tissoires 	struct entrypoints_bpf *skel;
226f5c27da4SBenjamin Tissoires 
227f5c27da4SBenjamin Tissoires 	skel = entrypoints_bpf__open();
228f5c27da4SBenjamin Tissoires 	if (!skel)
229f5c27da4SBenjamin Tissoires 		return NULL;
230f5c27da4SBenjamin Tissoires 	if (entrypoints_bpf__load(skel)) {
231f5c27da4SBenjamin Tissoires 		entrypoints_bpf__destroy(skel);
232f5c27da4SBenjamin Tissoires 		return NULL;
233f5c27da4SBenjamin Tissoires 	}
234f5c27da4SBenjamin Tissoires 	return skel;
235f5c27da4SBenjamin Tissoires }
236f5c27da4SBenjamin Tissoires 
237f5c27da4SBenjamin Tissoires __attribute__((unused)) static void
entrypoints_bpf__assert(struct entrypoints_bpf * s)238f5c27da4SBenjamin Tissoires entrypoints_bpf__assert(struct entrypoints_bpf *s __attribute__((unused)))
239f5c27da4SBenjamin Tissoires {
240f5c27da4SBenjamin Tissoires #ifdef __cplusplus
241f5c27da4SBenjamin Tissoires #define _Static_assert static_assert
242f5c27da4SBenjamin Tissoires #endif
243f5c27da4SBenjamin Tissoires #ifdef __cplusplus
244f5c27da4SBenjamin Tissoires #undef _Static_assert
245f5c27da4SBenjamin Tissoires #endif
246f5c27da4SBenjamin Tissoires }
247f5c27da4SBenjamin Tissoires 
248f5c27da4SBenjamin Tissoires #endif /* __ENTRYPOINTS_BPF_SKEL_H__ */
249