#include <lttng/trigger/trigger-internal.h>
#include <lttng/condition/condition.h>
#include <lttng/condition/condition-internal.h>
-#include <lttng/condition/event-rule.h>
-#include <lttng/condition/event-rule-internal.h>
+#include <lttng/condition/on-event.h>
+#include <lttng/condition/on-event-internal.h>
#include <lttng/event-rule/event-rule.h>
#include <lttng/event-rule/event-rule-internal.h>
#include <lttng/action/action.h>
const struct lttng_domain *domain,
char *channel_name, struct lttng_event *event,
char *filter_expression,
- struct lttng_filter_bytecode *filter,
+ struct lttng_bytecode *filter,
struct lttng_event_exclusion *exclusion,
int wpipe);
* Map enum lttng_ust_output to enum lttng_event_output.
*/
switch (uchan->attr.output) {
- case LTTNG_UST_MMAP:
+ case LTTNG_UST_ABI_MMAP:
channels[i].attr.output = LTTNG_EVENT_MMAP;
break;
default:
event.enabled = uevent->enabled;
switch (uevent->attr.instrumentation) {
- case LTTNG_UST_TRACEPOINT:
+ case LTTNG_UST_ABI_TRACEPOINT:
event.type = LTTNG_EVENT_TRACEPOINT;
break;
- case LTTNG_UST_PROBE:
+ case LTTNG_UST_ABI_PROBE:
event.type = LTTNG_EVENT_PROBE;
break;
- case LTTNG_UST_FUNCTION:
+ case LTTNG_UST_ABI_FUNCTION:
event.type = LTTNG_EVENT_FUNCTION;
break;
}
event.loglevel = uevent->attr.loglevel;
switch (uevent->attr.loglevel_type) {
- case LTTNG_UST_LOGLEVEL_ALL:
+ case LTTNG_UST_ABI_LOGLEVEL_ALL:
event.loglevel_type = LTTNG_EVENT_LOGLEVEL_ALL;
break;
- case LTTNG_UST_LOGLEVEL_RANGE:
+ case LTTNG_UST_ABI_LOGLEVEL_RANGE:
event.loglevel_type = LTTNG_EVENT_LOGLEVEL_RANGE;
break;
- case LTTNG_UST_LOGLEVEL_SINGLE:
+ case LTTNG_UST_ABI_LOGLEVEL_SINGLE:
event.loglevel_type = LTTNG_EVENT_LOGLEVEL_SINGLE;
break;
}
const struct lttng_domain *domain,
char *channel_name, struct lttng_event *event,
char *filter_expression,
- struct lttng_filter_bytecode *filter,
+ struct lttng_bytecode *filter,
struct lttng_event_exclusion *exclusion,
int wpipe, bool internal_event)
{
case LTTNG_EVENT_ALL:
{
char *filter_expression_a = NULL;
- struct lttng_filter_bytecode *filter_a = NULL;
+ struct lttng_bytecode *filter_a = NULL;
/*
* We need to duplicate filter_expression and filter,
{
char *filter_expression_copy = NULL;
- struct lttng_filter_bytecode *filter_copy = NULL;
+ struct lttng_bytecode *filter_copy = NULL;
if (filter) {
const size_t filter_size = sizeof(
- struct lttng_filter_bytecode)
+ struct lttng_bytecode)
+ filter->len;
filter_copy = zmalloc(filter_size);
const struct lttng_domain *domain,
char *channel_name, struct lttng_event *event,
char *filter_expression,
- struct lttng_filter_bytecode *filter,
+ struct lttng_bytecode *filter,
struct lttng_event_exclusion *exclusion,
int wpipe)
{
const struct lttng_domain *domain,
char *channel_name, struct lttng_event *event,
char *filter_expression,
- struct lttng_filter_bytecode *filter,
+ struct lttng_bytecode *filter,
struct lttng_event_exclusion *exclusion,
int wpipe)
{
* then regenerate the metadata. Live and per-pid sessions are not
* supported and return an error.
*
- * Return 0 on success or else a LTTNG_ERR code.
+ * Return LTTNG_OK on success or else a LTTNG_ERR code.
*/
int cmd_regenerate_metadata(struct ltt_session *session)
{
*
* Ask the tracer to regenerate a new statedump.
*
- * Return 0 on success or else a LTTNG_ERR code.
+ * Return LTTNG_OK on success or else a LTTNG_ERR code.
*/
int cmd_regenerate_statedump(struct ltt_session *session)
{
}
*adds_event_notifier = lttng_condition_get_type(condition) ==
- LTTNG_CONDITION_TYPE_EVENT_RULE_HIT;
+ LTTNG_CONDITION_TYPE_ON_EVENT;
end:
return ret_code;
}
* reference to the trigger so the caller doesn't have to care if those
* are distinct instances or not.
*/
- lttng_trigger_get(trigger);
- *return_trigger = trigger;
- /* Ownership of trigger was transferred to caller. */
- trigger = NULL;
+ if (ret_code == LTTNG_OK) {
+ lttng_trigger_get(trigger);
+ *return_trigger = trigger;
+ /* Ownership of trigger was transferred to caller. */
+ trigger = NULL;
+ }
end:
return ret_code;
end_unlock_session_list:
if (ret_code != LTTNG_OK) {
DBG("Failed to unregister trigger from notification thread: trigger name = '%s', trigger owner uid = %d, error code = %d",
trigger_name, (int) trigger_owner, ret_code);
+ goto end;
}
/*
sizeof(session->shm_path));
session->shm_path[sizeof(session->shm_path) - 1] = '\0';
- return 0;
+ return LTTNG_OK;
}
/*
* 'activate' to false means deactivate the rotation schedule and validate that
* 'new_value' has the same value as the currently active value.
*
- * Return 0 on success or else a positive LTTNG_ERR code.
+ * Return LTTNG_OK on success or else a positive LTTNG_ERR code.
*/
int cmd_rotation_set_schedule(struct ltt_session *session,
bool activate, enum lttng_rotation_schedule_type schedule_type,