X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Ftrace-kernel.c;h=9c2f61ad7f2232fd7190e5df37ffc5a60f36118e;hp=6e8a8b2debebb525250075e5ebdb0eb55f3b9069;hb=405f9e7db1cd7c023614ae249f0705fbb3da514c;hpb=352b58f55f53e7d11fb286ddc26a3bd0ecdd02f5 diff --git a/src/bin/lttng-sessiond/trace-kernel.c b/src/bin/lttng-sessiond/trace-kernel.c index 6e8a8b2de..9c2f61ad7 100644 --- a/src/bin/lttng-sessiond/trace-kernel.c +++ b/src/bin/lttng-sessiond/trace-kernel.c @@ -18,13 +18,13 @@ #include #include #include -#include -#include +#include +#include #include #include #include #include -#include +#include #include #include #include @@ -71,7 +71,7 @@ struct ltt_kernel_channel *trace_kernel_get_channel_by_name( struct ltt_kernel_event *trace_kernel_find_event( char *name, struct ltt_kernel_channel *channel, enum lttng_event_type type, - struct lttng_filter_bytecode *filter) + struct lttng_bytecode *filter) { struct ltt_kernel_event *ev; int found = 0; @@ -330,7 +330,7 @@ error: */ enum lttng_error_code trace_kernel_create_event( struct lttng_event *ev, char *filter_expression, - struct lttng_filter_bytecode *filter, + struct lttng_bytecode *filter, struct ltt_kernel_event **kernel_event) { enum lttng_error_code ret; @@ -501,9 +501,9 @@ enum lttng_error_code trace_kernel_create_event_notifier_rule( assert(condition); condition_type = lttng_condition_get_type(condition); - assert(condition_type == LTTNG_CONDITION_TYPE_EVENT_RULE_HIT); + assert(condition_type == LTTNG_CONDITION_TYPE_ON_EVENT); - condition_status = lttng_condition_event_rule_get_rule( + condition_status = lttng_condition_on_event_get_rule( condition, &event_rule); assert(condition_status == LTTNG_CONDITION_STATUS_OK); assert(event_rule); @@ -545,11 +545,12 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( const struct lttng_event_rule *rule, struct lttng_kernel_event_notifier *kernel_event_notifier) { - enum lttng_error_code ret; + enum lttng_error_code ret_code; const char *name; + int strncpy_ret; switch (lttng_event_rule_get_type(rule)) { - case LTTNG_EVENT_RULE_TYPE_KPROBE: + case LTTNG_EVENT_RULE_TYPE_KERNEL_PROBE: { uint64_t address = 0, offset = 0; const char *symbol_name = NULL; @@ -557,9 +558,9 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( enum lttng_kernel_probe_location_status k_status; enum lttng_event_rule_status status; - status = lttng_event_rule_kprobe_get_location(rule, &location); + status = lttng_event_rule_kernel_probe_get_location(rule, &location); if (status != LTTNG_EVENT_RULE_STATUS_OK) { - ret = LTTNG_ERR_PROBE_LOCATION_INVAL; + ret_code = LTTNG_ERR_PROBE_LOCATION_INVAL; goto error; } @@ -588,31 +589,32 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( kernel_event_notifier->event.u.kprobe.addr = address; kernel_event_notifier->event.u.kprobe.offset = offset; if (symbol_name) { - const int copy_ret = lttng_strncpy( + strncpy_ret = lttng_strncpy( kernel_event_notifier->event.u.kprobe.symbol_name, symbol_name, LTTNG_KERNEL_SYM_NAME_LEN); - if (copy_ret) { - ret = LTTNG_ERR_INVALID; + if (strncpy_ret) { + ret_code = LTTNG_ERR_INVALID; goto error; } } kernel_event_notifier->event.u.kprobe.symbol_name[LTTNG_KERNEL_SYM_NAME_LEN - 1] = '\0'; - status = lttng_event_rule_kprobe_get_name(rule, &name); + + status = lttng_event_rule_kernel_probe_get_event_name(rule, &name); assert(status == LTTNG_EVENT_RULE_STATUS_OK); - ret = LTTNG_OK; + ret_code = LTTNG_OK; break; } - case LTTNG_EVENT_RULE_TYPE_UPROBE: + case LTTNG_EVENT_RULE_TYPE_USERSPACE_PROBE: { const struct lttng_userspace_probe_location* location = NULL; const struct lttng_userspace_probe_location_lookup_method *lookup = NULL; enum lttng_event_rule_status status; - status = lttng_event_rule_uprobe_get_location(rule, &location); + status = lttng_event_rule_userspace_probe_get_location(rule, &location); if (status != LTTNG_EVENT_RULE_STATUS_OK) { - ret = LTTNG_ERR_PROBE_LOCATION_INVAL; + ret_code = LTTNG_ERR_PROBE_LOCATION_INVAL; goto error; } @@ -621,7 +623,7 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( lookup = lttng_userspace_probe_location_get_lookup_method( location); if (!lookup) { - ret = LTTNG_ERR_PROBE_LOCATION_INVAL; + ret_code = LTTNG_ERR_PROBE_LOCATION_INVAL; goto error; } @@ -645,9 +647,10 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( abort(); } - status = lttng_event_rule_uprobe_get_name(rule, &name); + status = lttng_event_rule_userspace_probe_get_event_name( + rule, &name); assert(status == LTTNG_EVENT_RULE_STATUS_OK); - ret = LTTNG_OK; + ret_code = LTTNG_OK; break; } case LTTNG_EVENT_RULE_TYPE_TRACEPOINT: @@ -663,7 +666,7 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( kernel_event_notifier->event.instrumentation = LTTNG_KERNEL_TRACEPOINT; - ret = LTTNG_OK; + ret_code = LTTNG_OK; break; } case LTTNG_EVENT_RULE_TYPE_SYSCALL: @@ -682,7 +685,7 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( LTTNG_KERNEL_SYSCALL_ENTRY; kernel_event_notifier->event.u.syscall.match = LTTNG_KERNEL_SYSCALL_MATCH_NAME; - ret = LTTNG_OK; + ret_code = LTTNG_OK; break; } case LTTNG_EVENT_RULE_TYPE_KRETPROBE: @@ -691,15 +694,15 @@ enum lttng_error_code trace_kernel_init_event_notifier_from_event_rule( break; } - ret = lttng_strncpy(kernel_event_notifier->event.name, name, + strncpy_ret = lttng_strncpy(kernel_event_notifier->event.name, name, LTTNG_KERNEL_SYM_NAME_LEN); - if (ret) { - ret = LTTNG_ERR_INVALID; + if (strncpy_ret) { + ret_code = LTTNG_ERR_INVALID; goto error; } error: - return ret; + return ret_code; } /* * Allocate and initialize a kernel metadata.