X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=src%2Flttng-abi.c;h=fbbdbabf15600bb00c0986022cf6c89db4e00a70;hb=cff6938b5405c9125a5149f03e504d7b1cc4b8a4;hp=7001aa0e9237e0729512855a295ae42ff9a16b93;hpb=2b16f0c9dfdc1b1a593c5ed58fd08a89e18eccae;p=lttng-modules.git diff --git a/src/lttng-abi.c b/src/lttng-abi.c index 7001aa0e..fbbdbabf 100644 --- a/src/lttng-abi.c +++ b/src/lttng-abi.c @@ -1584,6 +1584,8 @@ int lttng_abi_validate_event_param(struct lttng_kernel_event *event_param) switch (event_param->instrumentation) { case LTTNG_KERNEL_SYSCALL: switch (event_param->u.syscall.entryexit) { + case LTTNG_KERNEL_SYSCALL_ENTRY: + case LTTNG_KERNEL_SYSCALL_EXIT: case LTTNG_KERNEL_SYSCALL_ENTRYEXIT: break; default: @@ -1596,7 +1598,7 @@ int lttng_abi_validate_event_param(struct lttng_kernel_event *event_param) return -EINVAL; } switch (event_param->u.syscall.match) { - case LTTNG_SYSCALL_MATCH_NAME: + case LTTNG_KERNEL_SYSCALL_MATCH_NAME: break; default: return -EINVAL; @@ -1752,6 +1754,18 @@ long lttng_event_notifier_ioctl(struct file *file, unsigned int cmd, unsigned lo WARN_ON_ONCE(1); return -ENOSYS; } + case LTTNG_KERNEL_ADD_CALLSITE: + switch (*evtype) { + case LTTNG_TYPE_EVENT: + event_notifier = file->private_data; + return lttng_event_notifier_add_callsite(event_notifier, + (struct lttng_kernel_event_callsite __user *) arg); + case LTTNG_TYPE_ENABLER: + return -EINVAL; + default: + WARN_ON_ONCE(1); + return -ENOSYS; + } default: return -ENOIOCTLCMD; } @@ -1807,12 +1821,13 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, switch (event_notifier_param->event.instrumentation) { case LTTNG_KERNEL_TRACEPOINT: + case LTTNG_KERNEL_UPROBE: break; case LTTNG_KERNEL_KPROBE: event_notifier_param->event.u.kprobe.symbol_name[LTTNG_KERNEL_SYM_NAME_LEN - 1] = '\0'; break; - case LTTNG_KERNEL_UPROBE: case LTTNG_KERNEL_KRETPROBE: + /* Placing an event notifier on kretprobe is not supported. */ case LTTNG_KERNEL_FUNCTION: case LTTNG_KERNEL_NOOP: case LTTNG_KERNEL_SYSCALL: