diff options
Diffstat (limited to 'samples/bpf/bpf_helpers.h')
| -rw-r--r-- | samples/bpf/bpf_helpers.h | 19 | 
1 files changed, 18 insertions, 1 deletions
| diff --git a/samples/bpf/bpf_helpers.h b/samples/bpf/bpf_helpers.h index 9a9c95f2c9fb..d50ac342dc92 100644 --- a/samples/bpf/bpf_helpers.h +++ b/samples/bpf/bpf_helpers.h @@ -31,7 +31,8 @@ static unsigned long long (*bpf_get_current_uid_gid)(void) =  	(void *) BPF_FUNC_get_current_uid_gid;  static int (*bpf_get_current_comm)(void *buf, int buf_size) =  	(void *) BPF_FUNC_get_current_comm; -static int (*bpf_perf_event_read)(void *map, int index) = +static unsigned long long (*bpf_perf_event_read)(void *map, +						 unsigned long long flags) =  	(void *) BPF_FUNC_perf_event_read;  static int (*bpf_clone_redirect)(void *ctx, int ifindex, int flags) =  	(void *) BPF_FUNC_clone_redirect; @@ -59,6 +60,9 @@ static unsigned long long (*bpf_get_prandom_u32)(void) =  	(void *) BPF_FUNC_get_prandom_u32;  static int (*bpf_xdp_adjust_head)(void *ctx, int offset) =  	(void *) BPF_FUNC_xdp_adjust_head; +static int (*bpf_setsockopt)(void *ctx, int level, int optname, void *optval, +			     int optlen) = +	(void *) BPF_FUNC_setsockopt;  /* llvm builtin functions that eBPF C program may use to   * emit BPF_LD_ABS and BPF_LD_IND instructions @@ -135,6 +139,19 @@ static int (*bpf_skb_change_head)(void *, int len, int flags) =  #define PT_REGS_SP(x) ((x)->sp)  #define PT_REGS_IP(x) ((x)->pc) +#elif defined(__mips__) + +#define PT_REGS_PARM1(x) ((x)->regs[4]) +#define PT_REGS_PARM2(x) ((x)->regs[5]) +#define PT_REGS_PARM3(x) ((x)->regs[6]) +#define PT_REGS_PARM4(x) ((x)->regs[7]) +#define PT_REGS_PARM5(x) ((x)->regs[8]) +#define PT_REGS_RET(x) ((x)->regs[31]) +#define PT_REGS_FP(x) ((x)->regs[30]) /* Works only with CONFIG_FRAME_POINTER */ +#define PT_REGS_RC(x) ((x)->regs[1]) +#define PT_REGS_SP(x) ((x)->regs[29]) +#define PT_REGS_IP(x) ((x)->cp0_epc) +  #elif defined(__powerpc__)  #define PT_REGS_PARM1(x) ((x)->gpr[3]) |