diff options
-rw-r--r-- | tools/perf/util/bpf_skel/augmented_raw_syscalls.bpf.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/tools/perf/util/bpf_skel/augmented_raw_syscalls.bpf.c b/tools/perf/util/bpf_skel/augmented_raw_syscalls.bpf.c index 0586c4118656..9c1d0b271b20 100644 --- a/tools/perf/util/bpf_skel/augmented_raw_syscalls.bpf.c +++ b/tools/perf/util/bpf_skel/augmented_raw_syscalls.bpf.c @@ -187,8 +187,7 @@ int sys_enter_connect(struct syscall_enter_args *args) if (augmented_args == NULL) return 1; /* Failure: don't filter */ - if (socklen > sizeof(augmented_args->saddr)) - socklen = sizeof(augmented_args->saddr); + socklen &= sizeof(augmented_args->saddr) - 1; bpf_probe_read(&augmented_args->saddr, socklen, sockaddr_arg); @@ -206,8 +205,7 @@ int sys_enter_sendto(struct syscall_enter_args *args) if (augmented_args == NULL) return 1; /* Failure: don't filter */ - if (socklen > sizeof(augmented_args->saddr)) - socklen = sizeof(augmented_args->saddr); + socklen &= sizeof(augmented_args->saddr) - 1; bpf_probe_read(&augmented_args->saddr, socklen, sockaddr_arg); |