chan->session = session;
init_waitqueue_head(&chan->notify_wait);
chan->id = session->free_chan_id++;
+ /*
+ * Note: the channel creation op already writes into the packet
+ * headers. Therefore the "chan" information used as input
+ * should be already accessible.
+ */
chan->chan = transport->ops.channel_create("[lttng]", chan, buf_addr,
subbuf_size, num_subbuf, switch_timer_interval,
read_timer_interval);
/* Populate ltt_event structure before tracepoint registration. */
smp_wmb();
switch (event_param->instrumentation) {
- case LTTNG_KERNEL_TRACEPOINTS:
+ case LTTNG_KERNEL_TRACEPOINT:
event->desc = ltt_event_get(event_param->name);
if (!event->desc)
goto register_error;
if (ret)
goto register_error;
break;
- case LTTNG_KERNEL_KPROBES:
+ case LTTNG_KERNEL_KPROBE:
ret = lttng_kprobes_register(event_param->name,
event_param->u.kprobe.symbol_name,
event_param->u.kprobe.offset,
if (ret)
goto register_error;
break;
- case LTTNG_KERNEL_FUNCTION_TRACER:
+ case LTTNG_KERNEL_FUNCTION:
ret = lttng_ftrace_register(event_param->name,
event_param->u.ftrace.symbol_name,
event);
int ret = -EINVAL;
switch (event->instrumentation) {
- case LTTNG_KERNEL_TRACEPOINTS:
+ case LTTNG_KERNEL_TRACEPOINT:
ret = tracepoint_probe_unregister(event->desc->name,
event->desc->probe_callback,
event);
return ret;
ltt_event_put(event->desc);
break;
- case LTTNG_KERNEL_KPROBES:
+ case LTTNG_KERNEL_KPROBE:
lttng_kprobes_unregister(event);
ret = 0;
break;
- case LTTNG_KERNEL_FUNCTION_TRACER:
+ case LTTNG_KERNEL_FUNCTION:
lttng_ftrace_unregister(event);
ret = 0;
break;
*/
waitret = wait_event_interruptible_timeout(*chan->ops->get_reader_wait_queue(chan),
({
- ret = chan->ops->event_reserve(&ctx);
+ ret = chan->ops->event_reserve(&ctx, 0);
ret != -ENOBUFS || !ret;
}),
msecs_to_jiffies(LTTNG_METADATA_TIMEOUT_MSEC));