X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=lttng-events.c;h=3964df5fbb2f55b8d98fdb8501023a2c37a2dbab;hb=3aed4dca825a63757a3c95b9d41019660f83e02d;hp=a3030533d1e62d1c01f4cc8b0db9fed4cffa7425;hpb=a344f64bd188272ee3d0a6055aaa6a3eabd0669d;p=lttng-modules.git diff --git a/lttng-events.c b/lttng-events.c index a3030533..3964df5f 100644 --- a/lttng-events.c +++ b/lttng-events.c @@ -749,6 +749,7 @@ struct lttng_event *_lttng_event_create(struct lttng_channel *chan, */ event->enabled = 0; event->registered = 1; + /* * Populate lttng_event structure before event * registration. @@ -756,8 +757,7 @@ struct lttng_event *_lttng_event_create(struct lttng_channel *chan, smp_wmb(); ret = lttng_uprobes_register(event_param->name, - event_param->u.uprobe.path, - event_param->u.uprobe.offset, + event_param->u.uprobe.fd, event); if (ret) goto register_error; @@ -1466,6 +1466,18 @@ error_free: return ret; } +int lttng_event_add_callsite(struct lttng_event *event, + struct lttng_kernel_event_callsite __user *callsite) +{ + + switch (event->instrumentation) { + case LTTNG_KERNEL_UPROBE: + return lttng_uprobes_add_callsite(event, callsite); + default: + return -EINVAL; + } +} + int lttng_enabler_attach_context(struct lttng_enabler *enabler, struct lttng_kernel_context *context_param) {