From 684a1e4d7e9a4cf1070e5202e419e1b9f6e9853c Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Tue, 6 Apr 2021 16:21:54 -0400 Subject: [PATCH] Cleanup: lttng_abi_create_event{,_notifier}: use switch/case rather than if Signed-off-by: Mathieu Desnoyers Change-Id: I2a5454521d57fdfcb0c623031b24d590aff40281 --- src/lttng-abi.c | 45 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 39 insertions(+), 6 deletions(-) diff --git a/src/lttng-abi.c b/src/lttng-abi.c index eb68bce8..88c92d91 100644 --- a/src/lttng-abi.c +++ b/src/lttng-abi.c @@ -1814,8 +1814,11 @@ int lttng_abi_create_event(struct file *channel_file, ret = lttng_abi_validate_event_param(event_param); if (ret) goto event_error; - if (event_param->instrumentation == LTTNG_KERNEL_TRACEPOINT - || event_param->instrumentation == LTTNG_KERNEL_SYSCALL) { + + switch (event_param->instrumentation) { + case LTTNG_KERNEL_TRACEPOINT: /* Fall-through */ + case LTTNG_KERNEL_SYSCALL: + { struct lttng_event_enabler *event_enabler; if (strutils_is_star_glob_pattern(event_param->name)) { @@ -1830,7 +1833,13 @@ int lttng_abi_create_event(struct file *channel_file, event_param, channel); } priv = event_enabler; - } else { + break; + } + + case LTTNG_KERNEL_KPROBE: /* Fall-through */ + case LTTNG_KERNEL_KRETPROBE: /* Fall-through */ + case LTTNG_KERNEL_UPROBE: + { struct lttng_event *event; /* @@ -1846,6 +1855,14 @@ int lttng_abi_create_event(struct file *channel_file, goto event_error; } priv = event; + break; + } + + case LTTNG_KERNEL_FUNCTION: /* Fall-through */ + case LTTNG_KERNEL_NOOP: /* Fall-through */ + default: + ret = -EINVAL; + goto event_error; } event_file->private_data = priv; fd_install(event_fd, event_file); @@ -2025,8 +2042,10 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, goto refcount_error; } - if (event_notifier_param->event.instrumentation == LTTNG_KERNEL_TRACEPOINT - || event_notifier_param->event.instrumentation == LTTNG_KERNEL_SYSCALL) { + switch (event_notifier_param->event.instrumentation) { + case LTTNG_KERNEL_TRACEPOINT: /* Fall-through */ + case LTTNG_KERNEL_SYSCALL: + { struct lttng_event_notifier_enabler *enabler; if (strutils_is_star_glob_pattern(event_notifier_param->event.name)) { @@ -2045,7 +2064,13 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, event_notifier_param); } priv = enabler; - } else { + break; + } + + case LTTNG_KERNEL_KPROBE: /* Fall-through */ + case LTTNG_KERNEL_KRETPROBE: /* Fall-through */ + case LTTNG_KERNEL_UPROBE: + { struct lttng_event_notifier *event_notifier; /* @@ -2064,6 +2089,14 @@ int lttng_abi_create_event_notifier(struct file *event_notifier_group_file, goto event_notifier_error; } priv = event_notifier; + break; + } + + case LTTNG_KERNEL_FUNCTION: /* Fall-through */ + case LTTNG_KERNEL_NOOP: /* Fall-through */ + default: + ret = -EINVAL; + goto event_notifier_error; } event_notifier_file->private_data = priv; fd_install(event_notifier_fd, event_notifier_file); -- 2.34.1