mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-01 10:42:11 +00:00
perf trace: Introduce SCA_SOCKADDR_FROM_USER() to set .from_user = true
Paving the way for the generic BPF BTF based syscall arg augmenter. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Howard Chu <howardchu95@gmail.com> Cc: Ian Rogers <irogers@google.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Kan Liang <kan.liang@linux.intel.com> Cc: Namhyung Kim <namhyung@kernel.org> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
690eda6508
commit
be14a71984
@ -1075,7 +1075,7 @@ static const struct syscall_fmt syscall_fmts[] = {
|
||||
[1] = { .scnprintf = SCA_PTR, /* arg2 */ }, }, },
|
||||
{ .name = "bind",
|
||||
.arg = { [0] = { .scnprintf = SCA_INT, /* fd */ },
|
||||
[1] = { .scnprintf = SCA_SOCKADDR, /* umyaddr */ },
|
||||
[1] = SCA_SOCKADDR_FROM_USER(umyaddr),
|
||||
[2] = { .scnprintf = SCA_INT, /* addrlen */ }, }, },
|
||||
{ .name = "bpf",
|
||||
.arg = { [0] = STRARRAY(cmd, bpf_cmd), }, },
|
||||
@ -1095,7 +1095,7 @@ static const struct syscall_fmt syscall_fmts[] = {
|
||||
.arg = { [0] = { .scnprintf = SCA_CLOSE_FD, /* fd */ }, }, },
|
||||
{ .name = "connect",
|
||||
.arg = { [0] = { .scnprintf = SCA_INT, /* fd */ },
|
||||
[1] = { .scnprintf = SCA_SOCKADDR, /* servaddr */ },
|
||||
[1] = SCA_SOCKADDR_FROM_USER(servaddr),
|
||||
[2] = { .scnprintf = SCA_INT, /* addrlen */ }, }, },
|
||||
{ .name = "epoll_ctl",
|
||||
.arg = { [1] = STRARRAY(op, epoll_ctl_ops), }, },
|
||||
@ -1289,7 +1289,7 @@ static const struct syscall_fmt syscall_fmts[] = {
|
||||
.arg = { [2] = { .scnprintf = SCA_MSG_FLAGS, /* flags */ }, }, },
|
||||
{ .name = "sendto",
|
||||
.arg = { [3] = { .scnprintf = SCA_MSG_FLAGS, /* flags */ },
|
||||
[4] = { .scnprintf = SCA_SOCKADDR, /* addr */ }, }, },
|
||||
[4] = SCA_SOCKADDR_FROM_USER(addr), }, },
|
||||
{ .name = "set_tid_address", .errpid = true, },
|
||||
{ .name = "setitimer",
|
||||
.arg = { [0] = STRARRAY(which, itimers), }, },
|
||||
|
@ -229,6 +229,11 @@ size_t syscall_arg__scnprintf_renameat2_flags(char *bf, size_t size, struct sysc
|
||||
size_t syscall_arg__scnprintf_sockaddr(char *bf, size_t size, struct syscall_arg *arg);
|
||||
#define SCA_SOCKADDR syscall_arg__scnprintf_sockaddr
|
||||
|
||||
// 'argname' is just documentational at this point, to remove the previous comment with that info
|
||||
#define SCA_SOCKADDR_FROM_USER(argname) \
|
||||
{ .scnprintf = SCA_SOCKADDR, \
|
||||
.from_user = true, }
|
||||
|
||||
size_t syscall_arg__scnprintf_socket_protocol(char *bf, size_t size, struct syscall_arg *arg);
|
||||
#define SCA_SK_PROTO syscall_arg__scnprintf_socket_protocol
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user