X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=lttng-abi.c;h=02918114252d76071d9c51786f9aa955ad9fdeab;hb=80f87dd2321bb99f5b8cdab7ea6ff33f6ba99b9e;hp=cffebcd8b0fc60a646101d02553bc87a269a6272;hpb=7df57eb5d6bdc85ddcf2b9afb6cd0cacfb22096e;p=lttng-modules.git diff --git a/lttng-abi.c b/lttng-abi.c index cffebcd8..02918114 100644 --- a/lttng-abi.c +++ b/lttng-abi.c @@ -925,15 +925,23 @@ int lttng_abi_create_event(struct file *channel_file, atomic_long_inc(&channel_file->f_count); break; case LTTNG_KERNEL_SYSCALL: - /* - * Only all-syscall tracing supported for now. - */ - if (event_param->name[0] != '\0') - return -EINVAL; ret = lttng_syscalls_register(channel, NULL); if (ret) goto fd_error; event_fd = 0; + if (event_param->u.syscall.disable) { + ret = lttng_syscall_filter_disable(channel, + event_param->name[0] == '\0' ? + NULL : event_param->name); + if (ret) + goto fd_error; + } else { + ret = lttng_syscall_filter_enable(channel, + event_param->name[0] == '\0' ? + NULL : event_param->name); + if (ret) + goto fd_error; + } break; } return event_fd;