Messages in this thread | | | Date | Wed, 16 Jul 2014 14:14:10 +0200 | From | Jiri Olsa <> | Subject | Re: [PATCH 2/5] perf: Destroy event's children on task exit |
| |
On Mon, Jul 14, 2014 at 03:35:42PM +0200, Peter Zijlstra wrote: > On Mon, Jul 14, 2014 at 03:22:23PM +0200, Jiri Olsa wrote: > > > > if we dont do it, the event stays installed without owner and > > > > perf fork callback will be called and fail on permission checking > > > > (because of owner == NULL) ... so yes, I think it's needed > > > > > > Oh, right. Alternatively, we don't need permission checking for inherits > > > at all, if we're allowed to create the initial event, we should be good > > > for inherits. > > > > I could adress that in follow up patch.. or you want this instead > > of this one? IMO we should close those events anyway.. > > I tend to agree that closing them all is nicer. But we need to be > careful while doing it so as not to make the clone/fork path block on > it. > > I _think_ it might be best to separate these two issues for the moment, > so cure the reported problem by avoiding the permission check for > inherited events -- IFF you agree with the previous argument that > install_exec_creds() should be sufficient.
install_exec_creds remove removes current events any time suid binary is executed.. so it seems ok
/* * Disable monitoring for regular users * when executing setuid binaries. Must * wait until new credentials are committed * by commit_creds() above */ if (get_dumpable(current->mm) != SUID_DUMP_USER) perf_event_exit_task(current);
jirka
| |