projects
/
lttng-modules.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: syscall filtering: disable all syscalls
[lttng-modules.git]
/
lttng-syscalls.c
diff --git
a/lttng-syscalls.c
b/lttng-syscalls.c
index 5023c2f9dcc2ff8c588ad159303255dabab92ac6..c23f1d9e7e5b07c7533e14f2fdf404763152ea8c 100644
(file)
--- 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;
}
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) {
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);
}
}
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;
if (!chan->sc_filter)
rcu_assign_pointer(chan->sc_filter, filter);
chan->syscall_all = 0;
This page took
0.023605 seconds
and
4
git commands to generate.