/*
* Allocate and initialize a ust event. Set name and event type.
+ * We own filter_expression, filter, and exclusion.
*
* Return pointer to structure or NULL.
*/
error_free_event:
free(lue);
error:
+ free(filter_expression);
+ free(filter);
+ free(exclusion);
return NULL;
}
utype = LTTNG_UST_CONTEXT_IP;
break;
case LTTNG_EVENT_CONTEXT_PERF_THREAD_COUNTER:
- utype = LTTNG_UST_CONTEXT_PERF_THREAD_COUNTER;
+ if (!ustctl_has_perf_counters()) {
+ utype = -1;
+ WARN("Perf counters not implemented in UST");
+ } else {
+ utype = LTTNG_UST_CONTEXT_PERF_THREAD_COUNTER;
+ }
break;
default:
ERR("Invalid UST context");