diff options
| author | Martin KaFai Lau <[email protected]> | 2022-08-16 23:18:26 -0700 |
|---|---|---|
| committer | Alexei Starovoitov <[email protected]> | 2022-08-18 17:06:13 -0700 |
| commit | ee7f1e1302f5cb29168f70827c12855f1d8c9845 (patch) | |
| tree | 39f161413d5ef2e5ceec659d5d8b9bdc76cdfaed /tools/perf/scripts/python/syscall-counts-by-pid.py | |
| parent | 0c751f7071ef98d334ed06ca3f8f4cc1f7458cf5 (diff) | |
bpf: Change bpf_setsockopt(SOL_IP) to reuse do_ip_setsockopt()
After the prep work in the previous patches,
this patch removes the dup code from bpf_setsockopt(SOL_IP)
and reuses the implementation in do_ip_setsockopt().
The existing optname white-list is refactored into a new
function sol_ip_setsockopt().
NOTE,
the current bpf_setsockopt(IP_TOS) is quite different from the
the do_ip_setsockopt(IP_TOS). For example, it does not take
the INET_ECN_MASK into the account for tcp and also does not adjust
sk->sk_priority. It looks like the current bpf_setsockopt(IP_TOS)
was referencing the IPV6_TCLASS implementation instead of IP_TOS.
This patch tries to rectify that by using the do_ip_setsockopt(IP_TOS).
While this is a behavior change, the do_ip_setsockopt(IP_TOS) behavior
is arguably what the user is expecting. At least, the INET_ECN_MASK bits
should be masked out for tcp.
Reviewed-by: Stanislav Fomichev <[email protected]>
Signed-off-by: Martin KaFai Lau <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Alexei Starovoitov <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/syscall-counts-by-pid.py')
0 files changed, 0 insertions, 0 deletions