1f782e2c3SDmitrii Banshchikov // SPDX-License-Identifier: GPL-2.0-only 2f782e2c3SDmitrii Banshchikov /* Copyright (c) 2020 Facebook */ 3f782e2c3SDmitrii Banshchikov #include <stddef.h> 4f782e2c3SDmitrii Banshchikov #include <linux/bpf.h> 5f782e2c3SDmitrii Banshchikov #include <bpf/bpf_helpers.h> 6*95ebb376SAndrii Nakryiko #include "bpf_misc.h" 7f782e2c3SDmitrii Banshchikov foo(struct __sk_buff * skb)8f782e2c3SDmitrii Banshchikov__noinline int foo(struct __sk_buff *skb) 9f782e2c3SDmitrii Banshchikov { 10f782e2c3SDmitrii Banshchikov return bpf_get_prandom_u32(); 11f782e2c3SDmitrii Banshchikov } 12f782e2c3SDmitrii Banshchikov 13f782e2c3SDmitrii Banshchikov SEC("cgroup_skb/ingress") 14*95ebb376SAndrii Nakryiko __success global_func8(struct __sk_buff * skb)15*95ebb376SAndrii Nakryikoint global_func8(struct __sk_buff *skb) 16f782e2c3SDmitrii Banshchikov { 17f782e2c3SDmitrii Banshchikov if (!foo(skb)) 18f782e2c3SDmitrii Banshchikov return 0; 19f782e2c3SDmitrii Banshchikov 20f782e2c3SDmitrii Banshchikov return 1; 21f782e2c3SDmitrii Banshchikov } 22