Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp496071yba; Mon, 1 Apr 2019 10:27:33 -0700 (PDT) X-Google-Smtp-Source: APXvYqzxd0tTKXa05k4x0cw1qcD/Im//rlMwtxH9T4PWxEG/RdOl6jKxpPXhGW1WQswGAb5oTYOd X-Received: by 2002:a17:902:54f:: with SMTP id 73mr66016116plf.210.1554139653628; Mon, 01 Apr 2019 10:27:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1554139653; cv=none; d=google.com; s=arc-20160816; b=bJFEj9gMU1DZI385YrActb+aR8Gbs1gIY6NYevyJiTlMBAdMWwrIfKVxoYTqZK/3rs L7obSTYBOdRFtv24asPQANKYmTqMNJHtvi/IIgzIjCvD2iRyZ5bF3jxMekX4jt7uJ6JY ZlJ2D3+3S32epcmviCnQZ/Y2kf9BjBIyaB9nfjKEuf7h3/cu9+oWiJj/BHLirhQyf9zz /8zAf8YdtGKOZixSmaBBytNZphshVKoTjH+TpJx7DsGG9VBszeLvual5794HqQMEtYCt myohOJRcoO/NswDRIn8n+MFlpz6uZr15olmb1XAaTHA/cGGYfuxkMpLp02zhLwfz+Wo7 Ao2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=T43imk9Dqzq+SzaN8CrUSRfEVhgoIkqo8d//4I8T//8=; b=NUeCeFC9etvyXPJWlyhgSlA44mm0+BKjAL4aH1NtRrhIJMy5KKrkShqn5YyWCtsSKr Qbyoq4fLE7KKWWPJklQHQJbntyxVGZ60dPs5h/lo5Qd6H2l4C+hoFL4RiYjdEElBbrY5 CqJ7srxnB8bgtXhQQcD5Yke4h0fDn+OT8BOckMBviLRzyqDFTOK4xAufzTJYNDmTJrP9 X5gjiArEKDZa8NN/rCVSrXNfvagjGZ9A20zmiqW5ETtergA75m13iEhhrn+kBVVLen7T fj9b7cTcG0R14Ve3xHT4BpZarOY5T1+38IxxTwprvV24fItrqzZRAs1nEzbHlcPoXu/H NLsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zrlR1Dpv; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a15si8774597pgw.110.2019.04.01.10.27.18; Mon, 01 Apr 2019 10:27:33 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=zrlR1Dpv; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729648AbfDARZ3 (ORCPT + 99 others); Mon, 1 Apr 2019 13:25:29 -0400 Received: from mail.kernel.org ([198.145.29.99]:56764 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1732410AbfDARZ0 (ORCPT ); Mon, 1 Apr 2019 13:25:26 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id DC4A620830; Mon, 1 Apr 2019 17:25:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1554139525; bh=h7fgKKfrivNK8f7FnPMgbvqn3LZEGqUSiiAe1OtLPrE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=zrlR1DpvVIwvLKnzNj7XT070W1qGx3i8j+nXVjbfSxKXdPtT0FeadfsbwsJCUIKb1 WC/WkSeGJb6H9y02XlpMMvHmVyG3CbLeLQVQVuxUX2EF0lQ4p+4txjzLs6aJ5AZ/4R mrCPSzq/4i2GxYvkS2SuojZhNwHBNBIDzA44Ap0w= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Adrian Hunter , Jiri Olsa , Arnaldo Carvalho de Melo Subject: [PATCH 4.14 101/107] perf intel-pt: Fix TSC slip Date: Mon, 1 Apr 2019 19:02:56 +0200 Message-Id: <20190401170054.872417463@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190401170045.246405031@linuxfoundation.org> References: <20190401170045.246405031@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Adrian Hunter commit f3b4e06b3bda759afd042d3d5fa86bea8f1fe278 upstream. A TSC packet can slip past MTC packets so that the timestamp appears to go backwards. One estimate is that can be up to about 40 CPU cycles, which is certainly less than 0x1000 TSC ticks, but accept slippage an order of magnitude more to be on the safe side. Signed-off-by: Adrian Hunter Cc: Jiri Olsa Cc: stable@vger.kernel.org Fixes: 79b58424b821c ("perf tools: Add Intel PT support for decoding MTC packets") Link: http://lkml.kernel.org/r/20190325135135.18348-1-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: Greg Kroah-Hartman --- tools/perf/util/intel-pt-decoder/intel-pt-decoder.c | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) --- a/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c +++ b/tools/perf/util/intel-pt-decoder/intel-pt-decoder.c @@ -251,19 +251,15 @@ struct intel_pt_decoder *intel_pt_decode if (!(decoder->tsc_ctc_ratio_n % decoder->tsc_ctc_ratio_d)) decoder->tsc_ctc_mult = decoder->tsc_ctc_ratio_n / decoder->tsc_ctc_ratio_d; - - /* - * Allow for timestamps appearing to backwards because a TSC - * packet has slipped past a MTC packet, so allow 2 MTC ticks - * or ... - */ - decoder->tsc_slip = multdiv(2 << decoder->mtc_shift, - decoder->tsc_ctc_ratio_n, - decoder->tsc_ctc_ratio_d); } - /* ... or 0x100 paranoia */ - if (decoder->tsc_slip < 0x100) - decoder->tsc_slip = 0x100; + + /* + * A TSC packet can slip past MTC packets so that the timestamp appears + * to go backwards. One estimate is that can be up to about 40 CPU + * cycles, which is certainly less than 0x1000 TSC ticks, but accept + * slippage an order of magnitude more to be on the safe side. + */ + decoder->tsc_slip = 0x10000; intel_pt_log("timestamp: mtc_shift %u\n", decoder->mtc_shift); intel_pt_log("timestamp: tsc_ctc_ratio_n %u\n", decoder->tsc_ctc_ratio_n);