Build fix: check if have syscall tracepoint config
[lttng-modules.git] / probes / lttng-kprobes.c
index 481807de92a2796a36a1033fec6189ca7e2a97ff..38ee4513811691273de7454f0415ee56c6da44ce 100644 (file)
@@ -25,9 +25,14 @@ int lttng_kprobes_handler_pre(struct kprobe *p, struct pt_regs *regs)
        int ret;
        unsigned long data = (unsigned long) p->addr;
 
-       if (!ACCESS_ONCE(chan->session->active))
+       if (unlikely(!ACCESS_ONCE(chan->session->active)))
                return 0;
-       lib_ring_buffer_ctx_init(&ctx, chan->chan, NULL, sizeof(data),
+       if (unlikely(!ACCESS_ONCE(chan->enabled)))
+               return 0;
+       if (unlikely(!ACCESS_ONCE(event->enabled)))
+               return 0;
+
+       lib_ring_buffer_ctx_init(&ctx, chan->chan, event, sizeof(data),
                                 ltt_alignof(data), -1);
        ret = chan->ops->event_reserve(&ctx, event->id);
        if (ret < 0)
This page took 0.023543 seconds and 4 git commands to generate.