-
- event_notifier->group = event_notifier_group;
- event_notifier->user_token = token;
- event_notifier->error_counter_index = error_counter_index;
- event_notifier->num_captures = 0;
- event_notifier->filter = filter;
- event_notifier->instrumentation = itype;
- event_notifier->evtype = LTTNG_TYPE_EVENT;
- event_notifier->send_notification = lttng_event_notifier_notification_send;
- INIT_LIST_HEAD(&event_notifier->filter_bytecode_runtime_head);
- INIT_LIST_HEAD(&event_notifier->capture_bytecode_runtime_head);
- INIT_LIST_HEAD(&event_notifier->enablers_ref_head);
+ event_notifier_priv = kmem_cache_zalloc(event_notifier_private_cache, GFP_KERNEL);
+ if (!event_notifier_priv) {
+ ret = -ENOMEM;
+ goto cache_private_error;
+ }
+ event_notifier_priv->pub = event_notifier;
+ event_notifier_priv->parent.pub = &event_notifier->parent;
+ event_notifier->priv = event_notifier_priv;
+ event_notifier->parent.priv = &event_notifier_priv->parent;
+ event_notifier->parent.type = LTTNG_KERNEL_EVENT_TYPE_NOTIFIER;
+
+ event_notifier->priv->group = event_notifier_group;
+ event_notifier->priv->parent.user_token = token;
+ event_notifier->priv->error_counter_index = error_counter_index;
+ event_notifier->priv->num_captures = 0;
+ event_notifier->priv->parent.instrumentation = itype;
+ event_notifier->notification_send = lttng_event_notifier_notification_send;
+ INIT_LIST_HEAD(&event_notifier->priv->parent.filter_bytecode_runtime_head);
+ INIT_LIST_HEAD(&event_notifier->priv->parent.enablers_ref_head);
+ INIT_LIST_HEAD(&event_notifier->priv->capture_bytecode_runtime_head);
+ event_notifier->parent.run_filter = lttng_kernel_interpret_event_filter;