Modify default kernel channel size/number
[lttng-tools.git] / ltt-sessiond / trace.c
index 1509edacdf048e92fef749cad90ac8c30e09af7a..621e4dd3f67d7fda38ac38cbab288666ed4a6460 100644 (file)
@@ -103,6 +103,7 @@ struct ltt_kernel_session *trace_create_kernel_session(void)
        lks->channel_count = 0;
        lks->stream_count_global = 0;
        lks->metadata = NULL;
+       lks->consumer_fd = 0;
        CDS_INIT_LIST_HEAD(&lks->channel_list.head);
 
        return lks;
@@ -138,6 +139,7 @@ struct ltt_kernel_channel *trace_create_kernel_channel(struct lttng_channel *cha
 
        lkc->fd = 0;
        lkc->stream_count = 0;
+       lkc->event_count = 0;
        lkc->enabled = 1;
        lkc->ctx = NULL;
        /* Init linked list */
@@ -182,11 +184,22 @@ struct ltt_kernel_event *trace_create_kernel_event(struct lttng_event *ev)
                attr->u.kprobe.offset = ev->attr.probe.offset;
                strncpy(attr->u.kprobe.symbol_name,
                                ev->attr.probe.symbol_name, LTTNG_SYM_NAME_LEN);
+               attr->u.kprobe.symbol_name[LTTNG_SYM_NAME_LEN - 1] = '\0';
                break;
        case LTTNG_EVENT_FUNCTION:
+               attr->instrumentation = LTTNG_KERNEL_KRETPROBE;
+               attr->u.kretprobe.addr = ev->attr.probe.addr;
+               attr->u.kretprobe.offset = ev->attr.probe.offset;
+               attr->u.kretprobe.offset = ev->attr.probe.offset;
+               strncpy(attr->u.kretprobe.symbol_name,
+                               ev->attr.probe.symbol_name, LTTNG_SYM_NAME_LEN);
+               attr->u.kretprobe.symbol_name[LTTNG_SYM_NAME_LEN - 1] = '\0';
+               break;
+       case LTTNG_EVENT_FUNCTION_ENTRY:
                attr->instrumentation = LTTNG_KERNEL_FUNCTION;
                strncpy(attr->u.ftrace.symbol_name,
                                ev->attr.ftrace.symbol_name, LTTNG_SYM_NAME_LEN);
+               attr->u.ftrace.symbol_name[LTTNG_SYM_NAME_LEN - 1] = '\0';
                break;
        case LTTNG_EVENT_TRACEPOINT:
                attr->instrumentation = LTTNG_KERNEL_TRACEPOINT;
@@ -198,6 +211,7 @@ struct ltt_kernel_event *trace_create_kernel_event(struct lttng_event *ev)
 
        /* Copy event name */
        strncpy(attr->name, ev->name, LTTNG_SYM_NAME_LEN);
+       attr->name[LTTNG_SYM_NAME_LEN - 1] = '\0';
 
        /* Setting up a kernel event */
        lke->fd = 0;
@@ -233,8 +247,8 @@ struct ltt_kernel_metadata *trace_create_kernel_metadata(char *path)
 
        /* Set default attributes */
        chan->attr.overwrite = DEFAULT_CHANNEL_OVERWRITE;
-       chan->attr.subbuf_size = DEFAULT_CHANNEL_SUBBUF_SIZE;
-       chan->attr.num_subbuf = DEFAULT_CHANNEL_SUBBUF_NUM;
+       chan->attr.subbuf_size = DEFAULT_METADATA_SUBBUF_SIZE;
+       chan->attr.num_subbuf = DEFAULT_METADATA_SUBBUF_NUM;
        chan->attr.switch_timer_interval = DEFAULT_CHANNEL_SWITCH_TIMER;
        chan->attr.read_timer_interval = DEFAULT_CHANNEL_READ_TIMER;
        chan->attr.output = DEFAULT_KERNEL_CHANNEL_OUTPUT;
This page took 0.023699 seconds and 4 git commands to generate.