perf: question about event scheduler

From: Stephane Eranian
Date: Tue Jul 23 2013 - 04:13:43 EST


Hi,

I am looking at ctx_pinned_sched_in() and
ctx_flexible_sched_in() and I am trying to
understand the difference of treatment in
case of errors for the two classes of events
(pinned vs. flexible).

For pinned events, when a group fails to
schedule in, the code goes on to the next
group and therefore walks the entire list
for each scheduler invocation.

For flexible events, when a group fails,
the loop aborts and no subsequent group
is tried.

I am trying to understand the motivation for
this difference here.

If I recall, the abort is here to limit malicious
DoS where a malicious user would provide
an arbitrary long list of events, hogging the kernel.
But in the case of pinned events, this is ignored
because to create such events one needs to be
root in the first place.

Am I getting this right?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/