From 72814741fb45c8f7d4c45cb2a4624e20b5a4a76a Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Tue, 9 Sep 2014 18:56:53 -0400 Subject: [PATCH] Fix: syscall filtering: disable all syscalls Signed-off-by: Mathieu Desnoyers --- lttng-syscalls.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lttng-syscalls.c b/lttng-syscalls.c index 5023c2f9..c23f1d9e 100644 --- a/lttng-syscalls.c +++ b/lttng-syscalls.c @@ -1033,6 +1033,12 @@ int lttng_syscall_filter_disable(struct lttng_channel *chan, filter = chan->sc_filter; } + if (!name) { + /* Disable all system calls */ + bitmap_clear(filter->sc, 0, NR_syscalls); + bitmap_clear(filter->sc_compat, 0, NR_compat_syscalls); + goto apply_filter; + } syscall_nr = get_syscall_nr(name); compat_syscall_nr = get_compat_syscall_nr(name); if (syscall_nr < 0 && compat_syscall_nr < 0) { @@ -1053,6 +1059,7 @@ int lttng_syscall_filter_disable(struct lttng_channel *chan, } bitmap_clear(chan->sc_filter->sc_compat, compat_syscall_nr, 1); } +apply_filter: if (!chan->sc_filter) rcu_assign_pointer(chan->sc_filter, filter); chan->syscall_all = 0; -- 2.34.1