From nobody Sun Feb 8 21:47:19 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C6D7313BAE5; Thu, 11 Apr 2024 03:32:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712806378; cv=none; b=cTpEoCtCwk43FGuRNT4vYlLWQNYfTKnuvB1aP48EbNXGTRuG78mWUfZWBGEpcFMlCS2gXVIa3gUG5ATzqZuYshkMmfRbH1VOylx0diFHQNejr2FS8ErSgd0b3G+ZoXM2qeuiMs/1nd8lJ11fVpaxJTbQJbcBnoobw3Y/MzwULXk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712806378; c=relaxed/simple; bh=E7MUbHglg5iWys9JXYDObrTkAuoigHes409w9J6EGEc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bjo0uOOpsakFSVn6nTbzuLX+h1xKQ2bbQ5oC2vN2HJvVNdnMG+ktMJCeaeHozdqGE+HX+it/1f9/cKOPypJneyZtxHsyQ1FSRe9dwPyCIZAs6o1RgIl0NR8T1hZpMaJ6I3AuPM49zM8dobl2Hu8vnhIgvG4CQpunZqbRbGGWjCw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=ngVvk5vq; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="ngVvk5vq" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4F85CC43399; Thu, 11 Apr 2024 03:32:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1712806378; bh=E7MUbHglg5iWys9JXYDObrTkAuoigHes409w9J6EGEc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ngVvk5vq9Y6CbMgZjWWsYxjtjK4/EdUjH75o2kERRsv0x6/5KAAJDjK8ZLxY2z/rW EyvE/G1p9gwBqVTqgGfS6Bq9iRVSlVP0ei6SxFEG85UwgnVGhYB3jOcW+ssj2CNjmQ QiIyTgFB/u0peIdYJXlJO9/gLfLjN3MYlDaEDtiHgVTt6dAWb1sCNszrY+amBYJ7xh 98h2w71Y2oB+cW7ZRiZYeHWuhznhi9CT7ACS5/XxOuyb00O+ddpNNln+kocglkpdpY /BvMYFQ5OUelsOV7wZk8YcXZPIx0oDh10viB9okTmGoNqt6z9M10AL44wy3MbENgQU 2BppXXCHiILig== From: Namhyung Kim To: Arnaldo Carvalho de Melo , Ian Rogers , Kan Liang Cc: Jiri Olsa , Adrian Hunter , Peter Zijlstra , Ingo Molnar , LKML , linux-perf-users@vger.kernel.org Subject: [PATCH 2/7] perf annotate: Show progress of sample processing Date: Wed, 10 Apr 2024 20:32:51 -0700 Message-ID: <20240411033256.2099646-3-namhyung@kernel.org> X-Mailer: git-send-email 2.44.0.478.gd926399ef9-goog In-Reply-To: <20240411033256.2099646-1-namhyung@kernel.org> References: <20240411033256.2099646-1-namhyung@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Like 'perf report', it can take a while to process samples. Show a progress window to inform users how that it is not stuck. Reviewed-by: Ian Rogers Signed-off-by: Namhyung Kim --- tools/perf/builtin-annotate.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c index 16e1581207c9..332e1ddcacbd 100644 --- a/tools/perf/builtin-annotate.c +++ b/tools/perf/builtin-annotate.c @@ -37,6 +37,7 @@ #include "util/map_symbol.h" #include "util/branch.h" #include "util/util.h" +#include "ui/progress.h" =20 #include #include @@ -665,13 +666,23 @@ static int __cmd_annotate(struct perf_annotate *ann) evlist__for_each_entry(session->evlist, pos) { struct hists *hists =3D evsel__hists(pos); u32 nr_samples =3D hists->stats.nr_samples; + struct ui_progress prog; =20 if (nr_samples > 0) { total_nr_samples +=3D nr_samples; - hists__collapse_resort(hists, NULL); + + ui_progress__init(&prog, nr_samples, + "Merging related events..."); + hists__collapse_resort(hists, &prog); + ui_progress__finish(); + /* Don't sort callchain */ evsel__reset_sample_bit(pos, CALLCHAIN); - evsel__output_resort(pos, NULL); + + ui_progress__init(&prog, nr_samples, + "Sorting events for output..."); + evsel__output_resort(pos, &prog); + ui_progress__finish(); =20 /* * An event group needs to display other events too. --=20 2.44.0.478.gd926399ef9-goog