From: Namhyung Kim <namhyung@kernel.org>
To: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>,
Paul Mackerras <paulus@samba.org>, Ingo Molnar <mingo@kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
Stephane Eranian <eranian@google.com>,
Namhyung Kim <namhyung.kim@lge.com>, Jiri Olsa <jolsa@redhat.com>,
Frederic Weisbecker <fweisbec@gmail.com>
Subject: Re: [PATCH 1/2] perf: Reset detached siblings' group_flags
Date: Mon, 11 Mar 2013 20:34:21 +0900 [thread overview]
Message-ID: <87a9qaqif6.fsf@sejong.aot.lge.com> (raw)
In-Reply-To: <1362995984.14933.0.camel@laptop> (Peter Zijlstra's message of "Mon, 11 Mar 2013 10:59:44 +0100")
On Mon, 11 Mar 2013 10:59:44 +0100, Peter Zijlstra wrote:
> On Thu, 2013-03-07 at 13:19 +0900, Namhyung Kim wrote:
>> From: Namhyung Kim <namhyung.kim@lge.com>
>>
>> Currently if a group_leader event is deleted, the sibling events are
>> upgraded to singleton events of a same group list. At this time, the
>> siblings inherit the leader's group_flags.
>>
>> However, if the group has mixed hw/sw events the leader's group_flag
>> does not contain PERF_GROUP_SOFTWARE so sibling sw events will miss
>> the flag also. Fix it.
>>
>> Cc: Jiri Olsa <jolsa@redhat.com>
>> Cc: Frederic Weisbecker <fweisbec@gmail.com>
>> Signed-off-by: Namhyung Kim <namhyung@kernel.org>
>> ---
>> kernel/events/core.c | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/kernel/events/core.c b/kernel/events/core.c
>> index 5c75791d7269..007dfe846d4d 100644
>> --- a/kernel/events/core.c
>> +++ b/kernel/events/core.c
>> @@ -1107,8 +1107,9 @@ static void perf_group_detach(struct perf_event *event)
>> list_move_tail(&sibling->group_entry, list);
>> sibling->group_leader = sibling;
>>
>> - /* Inherit group flags from the previous leader */
>> - sibling->group_flags = event->group_flags;
>> + /* Reset group flags for each siblings */
>> + sibling->group_flags = is_software_event(sibling) ?
>> + PERF_GROUP_SOFTWARE : 0;
>> }
>
>
> In such a case, does the event not continue to live on the hw pmu? That
> is, after this patch we'll have a software event on the hardware pmu
> list with PERF_GROUP_SOFTWARE set, right? Seems odd.
Right.
Just curious that dropping this one and applying just patch 2 will set
the PERF_GROUP_MIXED for them and it'll fix the mixed group problem
without migrating those events. What do you think about this approach?
Thanks,
Namhyung
next prev parent reply other threads:[~2013-03-11 11:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-07 4:19 [PATCH 1/2] perf: Reset detached siblings' group_flags Namhyung Kim
2013-03-07 4:19 ` [PATCH 2/2] perf: Fix mixed hw/sw event group initialization Namhyung Kim
2013-03-11 10:01 ` Peter Zijlstra
2013-03-11 11:20 ` Namhyung Kim
2013-03-11 13:10 ` [PATCH] perf tests: Add automated test for mixed type event groups Jiri Olsa
2013-03-11 9:59 ` [PATCH 1/2] perf: Reset detached siblings' group_flags Peter Zijlstra
2013-03-11 11:34 ` Namhyung Kim [this message]
2013-03-11 11:51 ` Namhyung Kim
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87a9qaqif6.fsf@sejong.aot.lge.com \
--to=namhyung@kernel.org \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@ghostprotocols.net \
--cc=eranian@google.com \
--cc=fweisbec@gmail.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung.kim@lge.com \
--cc=paulus@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.