1b061017fSAlexei Starovoitov // SPDX-License-Identifier: GPL-2.0
2b061017fSAlexei Starovoitov // Copyright (c) 2019 Facebook
3b061017fSAlexei Starovoitov #include <linux/sched.h>
4b061017fSAlexei Starovoitov #include <linux/ptrace.h>
5b061017fSAlexei Starovoitov #include <stdint.h>
6b061017fSAlexei Starovoitov #include <stddef.h>
7b061017fSAlexei Starovoitov #include <stdbool.h>
8b061017fSAlexei Starovoitov #include <linux/bpf.h>
93e689141SToke Høiland-Jørgensen #include <bpf/bpf_helpers.h>
103e689141SToke Høiland-Jørgensen #include <bpf/bpf_tracing.h>
11b061017fSAlexei Starovoitov 
12b061017fSAlexei Starovoitov char _license[] SEC("license") = "GPL";
13b061017fSAlexei Starovoitov 
14b061017fSAlexei Starovoitov SEC("raw_tracepoint/consume_skb")
while_true(struct pt_regs * ctx)15*70bc7933SAndrii Nakryiko int while_true(struct pt_regs *ctx)
16b061017fSAlexei Starovoitov {
17*70bc7933SAndrii Nakryiko 	volatile __u64 i = 0, sum = 0;
18b061017fSAlexei Starovoitov 	do {
19b061017fSAlexei Starovoitov 		i++;
20af3c24e0SIlya Leoshkevich 		sum += PT_REGS_RC(ctx);
21b061017fSAlexei Starovoitov 	} while (i < 0x100000000ULL);
22b061017fSAlexei Starovoitov 	return sum;
23b061017fSAlexei Starovoitov }
24