diff options
author | Yonghong Song <yhs@fb.com> | 2017-09-07 18:36:15 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-09-11 14:28:45 -0700 |
commit | 609320c8a22715b74b39796930c3542719f8ab62 (patch) | |
tree | 35b1ec2606bd443edd2988c353ee7c4de6bb0748 /include/linux/syscalls.h | |
parent | c6644d07eff6588b2dedf881279fb0d1c7783970 (diff) | |
download | lwn-609320c8a22715b74b39796930c3542719f8ab62.tar.gz lwn-609320c8a22715b74b39796930c3542719f8ab62.zip |
perf/bpf: fix a clang compilation issue
clang does not support variable length array for structure member.
It has the following error during compilation:
kernel/trace/trace_syscalls.c:568:17: error: fields must have a constant size:
'variable length array in structure' extension will never be supported
unsigned long args[sys_data->nb_args];
^
The fix is to use a fixed array length instead.
Reported-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Yonghong Song <yhs@fb.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/syscalls.h')
-rw-r--r-- | include/linux/syscalls.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index 88951b795ee3..95606a2d556f 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h @@ -200,6 +200,8 @@ static inline int is_syscall_trace_event(struct trace_event_call *tp_event) #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__) #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__) +#define SYSCALL_DEFINE_MAXARGS 6 + #define SYSCALL_DEFINEx(x, sname, ...) \ SYSCALL_METADATA(sname, x, __VA_ARGS__) \ __SYSCALL_DEFINEx(x, sname, __VA_ARGS__) |