Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp5233842ybl; Tue, 14 Jan 2020 05:47:58 -0800 (PST) X-Google-Smtp-Source: APXvYqypmbLaNo9uq8pVt/4RzIIWrNueivy4PBQlJvE4OxPQL18brvK7+9UhqD7Vk7u9iiYNc4qi X-Received: by 2002:aca:fdd1:: with SMTP id b200mr16074710oii.133.1579009678250; Tue, 14 Jan 2020 05:47:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1579009678; cv=none; d=google.com; s=arc-20160816; b=gPm7FZ+OyAViOUpO2t1N+lt/89Ue5XRaIYolpLl4/tzVj9/IazBWBmuROUFlNWy/dr 6fWRLZ3RwufjGXGlWLsFjRBjzixLiTFUBWxe637rrXvjv3OnL6n5BXWJe/UT7JhhNvdo 5dVaI5hYdLSsB7Ur8rz21Lbe/8UP36wsr4FjRMZanvCXc4oZAeuWnU8jjBUiqeW0ExHI R+AohA0ZX6jHaJQDqmGvfe1bVpx/M+0wPx+kNSPHogFUVuPAMMIt2NEdTHqEIIQJq2st lnAfdXS3/u3jotscannfnU8zru2khA5CP4rcGkN6eVx1y9cB/Cf8CpqSHoKLKC4YPZxb CTHA== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:organization:from:references:cc:to:subject; bh=AlGhTvQhqjQpF6VXDQnbCxwLSliTgwv0mfh0riEQGuc=; b=S54DkBW0xxRewb/lpDKawGvKUZ8dLID6PfNrsc9PhOeW3WovkMnkI/6wpTR0AysSCL W93TrFbeirsW7Qf1i3jNfwbSzxu7LQ/atJdb5K6egN4btKT/rkjnCSxHtZ3aV1peNk7h CVMclaVZUrMT5fCqLmho8LZf5I94mWS7l1qJwkEgbrNSra6JXC9L2EeWXKTXrU8vu0MY /Q3ImhgDiJxkRvl8xYE/zbJqoe/NWWXxdriIv8EDkoaeKshW13h+CmwW5Wiro5aHyAcm YgezxWUW5PQHdWOtIAo6rKcipH1OPjB5APuHG6EPiH4sL6GuIIJxFIWTINi1L6Et4tfr EGIw== ARC-Authentication-Results: i=1; mx.google.com; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v21si10922669otf.87.2020.01.14.05.47.46; Tue, 14 Jan 2020 05:47:58 -0800 (PST) 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; 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728936AbgANNqx (ORCPT + 99 others); Tue, 14 Jan 2020 08:46:53 -0500 Received: from mga09.intel.com ([134.134.136.24]:27860 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726038AbgANNqw (ORCPT ); Tue, 14 Jan 2020 08:46:52 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Jan 2020 05:46:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,432,1571727600"; d="scan'208";a="225221170" Received: from ahunter-desktop.fi.intel.com (HELO [10.237.72.167]) ([10.237.72.167]) by orsmga003.jf.intel.com with ESMTP; 14 Jan 2020 05:46:48 -0800 Subject: Re: [PATCH] perf tools: intel-pt: fix endless record after being terminated To: Jiri Olsa , Wei Li Cc: acme@kernel.org, mark.rutland@arm.com, alexander.shishkin@linux.intel.com, namhyung@kernel.org, peterz@infradead.org, mingo@redhat.com, linux-kernel@vger.kernel.org, huawei.libin@huawei.com References: <20200102074211.19901-1-liwei391@huawei.com> <20200106120250.GD207350@krava> From: Adrian Hunter Organization: Intel Finland Oy, Registered Address: PL 281, 00181 Helsinki, Business Identity Code: 0357606 - 4, Domiciled in Helsinki Message-ID: <7e01a903-29c3-89c4-360e-bbf4834a3f36@intel.com> Date: Tue, 14 Jan 2020 15:45:56 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: <20200106120250.GD207350@krava> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 6/01/20 2:02 pm, Jiri Olsa wrote: > On Thu, Jan 02, 2020 at 03:42:11PM +0800, Wei Li wrote: >> In __cmd_record(), when receiving SIGINT(ctrl + c), a done flag will >> be set and the event list will be disabled by evlist__disable() once. >> >> While in auxtrace_record.read_finish(), the related events will be >> enabled again, if they are continuous, the recording seems to be endless. >> >> If the intel_pt event is disabled, we don't enable it again here. >> >> Before the patch: >> huawei@huawei-2288H-V5:~/linux-5.5-rc4/tools/perf$ ./perf record -e \ >> intel_pt//u -p 46803 >> ^C^C^C^C^C^C >> >> After the patch: >> huawei@huawei-2288H-V5:~/linux-5.5-rc4/tools/perf$ ./perf record -e \ >> intel_pt//u -p 48591 >> ^C[ perf record: Woken up 0 times to write data ] >> Warning: >> AUX data lost 504 times out of 4816! >> >> [ perf record: Captured and wrote 2024.405 MB perf.data ] >> >> Signed-off-by: Wei Li >> --- >> tools/perf/arch/x86/util/intel-pt.c | 10 +++++++--- >> 1 file changed, 7 insertions(+), 3 deletions(-) >> >> diff --git a/tools/perf/arch/x86/util/intel-pt.c b/tools/perf/arch/x86/util/intel-pt.c >> index 20df442fdf36..1e96afcd8646 100644 >> --- a/tools/perf/arch/x86/util/intel-pt.c >> +++ b/tools/perf/arch/x86/util/intel-pt.c >> @@ -1173,9 +1173,13 @@ static int intel_pt_read_finish(struct auxtrace_record *itr, int idx) >> struct evsel *evsel; >> >> evlist__for_each_entry(ptr->evlist, evsel) { >> - if (evsel->core.attr.type == ptr->intel_pt_pmu->type) >> - return perf_evlist__enable_event_idx(ptr->evlist, evsel, >> - idx); >> + if (evsel->core.attr.type == ptr->intel_pt_pmu->type) { >> + if (evsel->disabled) >> + return 0; >> + else >> + return perf_evlist__enable_event_idx( >> + ptr->evlist, evsel, idx); > > what's the logic behind enabling the event in here? Tracing stops when the auxtrace buffer is full and won't start again until the event is scheduled in (which is never for system-wide events) but enabling here will start tracing again immediately if possible.