Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754209AbbBEXzo (ORCPT ); Thu, 5 Feb 2015 18:55:44 -0500 Received: from mx0b-00082601.pphosted.com ([67.231.153.30]:3063 "EHLO mx0b-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754080AbbBEXzk (ORCPT ); Thu, 5 Feb 2015 18:55:40 -0500 From: Shaohua Li To: CC: Arnaldo Carvalho de Melo , Frederic Weisbecker , Paul Mackerras , Peter Zijlstra , Andy Lutomirski , Ingo Molnar Subject: [PATCH 1/2 --resend] perf: update shadow timestamp before add event Date: Thu, 5 Feb 2015 15:55:31 -0800 Message-ID: <9cd0276d6a047cb7c2885994f25e3a1f7c8c28af.1423180257.git.shli@fb.com> X-Mailer: git-send-email 1.8.1 X-FB-Internal: Safe MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.13.68,1.0.33,0.0.0000 definitions=2015-02-05_06:2015-02-05,2015-02-05,1970-01-01 signatures=0 X-Proofpoint-Spam-Details: rule=fb_default_notspam policy=fb_default score=0 spamscore=0 suspectscore=1 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=7.0.1-1402240000 definitions=main-1502050227 X-FB-Internal: deliver Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1518 Lines: 50 Last post appears lost, so I repost to check if there are any comments. Update the shadow timestamp before start event. .add might use the timestamp. Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Andy Lutomirski Cc: Ingo Molnar Signed-off-by: Shaohua Li --- kernel/events/core.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/kernel/events/core.c b/kernel/events/core.c index 19efcf1..04d8b48 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -1769,6 +1769,10 @@ event_sched_in(struct perf_event *event, perf_pmu_disable(event->pmu); + event->tstamp_running += tstamp - event->tstamp_stopped; + + perf_set_shadow_time(event, ctx, tstamp); + if (event->pmu->add(event, PERF_EF_START)) { event->state = PERF_EVENT_STATE_INACTIVE; event->oncpu = -1; @@ -1776,10 +1780,6 @@ event_sched_in(struct perf_event *event, goto out; } - event->tstamp_running += tstamp - event->tstamp_stopped; - - perf_set_shadow_time(event, ctx, tstamp); - if (!is_software_event(event)) cpuctx->active_oncpu++; ctx->nr_active++; -- 1.8.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/