Re: [RFC PATCH 2/2] perf: Filter events based on perf-namespace
From: Aravinda Prasad
Date: Tue Jul 12 2016 - 12:20:11 EST
On Tuesday 12 July 2016 06:34 PM, Peter Zijlstra wrote:
> On Tue, Jul 12, 2016 at 03:41:42PM +0300, Nikolay Borisov wrote:
>
>> Namespaces and cgroups are completely orthogonal to one another.
>
> Then how do you specify what your new 'root' is? Surely you must first
> create a cgroup and then confine yourself to that?
No need to create cgroup and confine processes to that cgroup. The below
check during event filtering will take care:
+ if (cpuctx->perf_ns != event->perf_ns)
+ return false;
event->perf_ns is set during perf_event_alloc():
+ if (current->nsproxy->perf_ns != &init_perf_ns) {
+ /*
+ * If we are called from our own perf namespace, set
+ * event->perf_ns
+ */
+ event->perf_ns = current->nsproxy->perf_ns;
+ [...]
+ }
>
>> Also in the v1 of cgroups it's possible to have a process member of
>> more than 1 cgroup.
>
> Yeah, so? We only care about the perf controller obviously.
>
--
Regards,
Aravinda