projects
/
lttng-modules.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
detailed syscall tracing (work in progress)
[lttng-modules.git]
/
ltt-events.c
diff --git
a/ltt-events.c
b/ltt-events.c
index f9688f549be3bee9f105dd87b29130ef2839431d..c64c20368aa6ec07b4afa6a8b08e9a27ba5ad6af 100644
(file)
--- a/
ltt-events.c
+++ b/
ltt-events.c
@@
-266,7
+266,8
@@
void _ltt_channel_destroy(struct ltt_channel *chan)
*/
struct ltt_event *ltt_event_create(struct ltt_channel *chan,
struct lttng_kernel_event *event_param,
*/
struct ltt_event *ltt_event_create(struct ltt_channel *chan,
struct lttng_kernel_event *event_param,
- void *filter)
+ void *filter,
+ const struct lttng_event_desc *internal_desc)
{
struct ltt_event *event;
int ret;
{
struct ltt_event *event;
int ret;
@@
-366,6
+367,9
@@
struct ltt_event *ltt_event_create(struct ltt_channel *chan,
WARN_ON_ONCE(!ret);
break;
case LTTNG_KERNEL_NOOP:
WARN_ON_ONCE(!ret);
break;
case LTTNG_KERNEL_NOOP:
+ event->desc = internal_desc;
+ if (!event->desc)
+ goto register_error;
break;
default:
WARN_ON_ONCE(1);
break;
default:
WARN_ON_ONCE(1);
@@
-378,10
+382,7
@@
struct ltt_event *ltt_event_create(struct ltt_channel *chan,
return event;
statedump_error:
return event;
statedump_error:
- WARN_ON_ONCE(tracepoint_probe_unregister(event_param->name,
- event->desc->probe_callback,
- event));
- ltt_event_put(event->desc);
+ /* If a statedump error occurs, events will not be readable. */
register_error:
kmem_cache_free(event_cache, event);
cache_error:
register_error:
kmem_cache_free(event_cache, event);
cache_error:
@@
-418,6
+419,9
@@
int _ltt_event_unregister(struct ltt_event *event)
lttng_ftrace_unregister(event);
ret = 0;
break;
lttng_ftrace_unregister(event);
ret = 0;
break;
+ case LTTNG_KERNEL_NOOP:
+ ret = 0;
+ break;
default:
WARN_ON_ONCE(1);
}
default:
WARN_ON_ONCE(1);
}
@@
-446,6
+450,8
@@
void _ltt_event_destroy(struct ltt_event *event)
module_put(event->desc->owner);
lttng_ftrace_destroy_private(event);
break;
module_put(event->desc->owner);
lttng_ftrace_destroy_private(event);
break;
+ case LTTNG_KERNEL_NOOP:
+ break;
default:
WARN_ON_ONCE(1);
}
default:
WARN_ON_ONCE(1);
}
This page took
0.024786 seconds
and
4
git commands to generate.