On Mon, Jul 02, 2018 at 04:33:29PM -0600, Mathieu Poirier wrote:
SNIP
+static int
+perf_event_process_drv_config(struct perf_event *event, char *config_str)
+{
+ int ret = -EINVAL;
+ void *drv_data;
+
+ /* Make sure ctx.mutex it held */
+ lockdep_assert_held(&event->ctx->mutex);
+
+ /* Children take their configuration from their parent */
+ if (WARN_ON_ONCE(event->parent))
+ goto out;
+
+ drv_data = event->pmu->drv_config_validate(event, config_str);
+ if (!drv_data)
+ goto out;
what's this check for? doc does not mention that,
also the coresight callback does not return NULL
jirka