From nobody Wed Apr 1 22:00:27 2026 Received: from mail-dy1-f202.google.com (mail-dy1-f202.google.com [74.125.82.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C7A804779A4 for ; Wed, 1 Apr 2026 16:13:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.202 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775060019; cv=none; b=c7Ovm109RIh6pmt9FhSEVQfvbEk8QLsetA7jdL09cT4V64MjlGIxRh9i4omSIz2FH3TXVcw1fqPh9bAPzjkFiAdCfXmeOHSevBLPbfqYFTWTZnMifiu2aLaQ3w4vbmODhYuYbqErpvm3H6bsm53ztLwVG1WTnqKyF3kI5vxuDWw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775060019; c=relaxed/simple; bh=etWLpPUbAL9PbGn2PsAzD1vzOgdSqQ+V+536k9PjEfA=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=MpyiswTmd+zH9SAS/puEsN9UIqH2i49nM+J7c/gEvNBrAGbhY+vS+2jB4fcvsbvMXxsjab25bYf0dOvxU0gPe2309RCtk4lN3sMoEzWZDqtW/TbNIQCmVtsk4sfemlgxlfpjohxPwSbYjJTatOXOnpu8G0/7IsJDQ2Aq23UiKBw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=WmdC/Kf2; arc=none smtp.client-ip=74.125.82.202 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="WmdC/Kf2" Received: by mail-dy1-f202.google.com with SMTP id 5a478bee46e88-2bdf6fe90a9so7067289eec.1 for ; Wed, 01 Apr 2026 09:13:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1775060017; x=1775664817; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=WMSD5CIynbKr+BJ31meFhjj49c+zZqPVABuWE4dY/sQ=; b=WmdC/Kf22QYLprlJnDJBocJ3Ae5EID73l5WtahVrT07bYIg1+nAHGKNQ3wbkEuPUga 88KD9N+D9eIjKXC8d5JvqpZ+PtYGmN6jLbg0GupE7xaKe6zu6+pA/t6Ipb8KFqQssSOy Z7IdgncozHt+9TureME06ka4S+Qziu5X0ahQ7DU1OeRR0fD1uXW3pUJmu+RbXw8ZyjnL ztXls1k8SQh04SjEgoZ+0EfmP/WA/KyKs+QJtIlSNazaaH8cdqHXn4QwHGwsbzdVltyP 79zIR6XcGMG98ZvL/A3ZnCAShkyo+pqZQIReoMZxgjKgxNueNsT3P5Um5OTdOn4QWtuY q72w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775060017; x=1775664817; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=WMSD5CIynbKr+BJ31meFhjj49c+zZqPVABuWE4dY/sQ=; b=idC3EJ4v4k6OV9+UfN+LRFIPQUND1XhA5NA6mbab2pxmk97RLu3ZfF5nVftdk2v3G/ XqGUaoDeU3D6Y8EpUB9UNV4unMhLvneeWDjfO+gqu1SUKvsGiRq+YzkWWeRp9lDAdavq RwGFcX2C0rBQinvJmn+JOtX+ved4I/oxrjoPbzgKIgArp8lQJgzDk7c4xzKfy+VVHecp l8K5eAdQNI4nxFqcEYxd1ppcy9W2kfvJDYmXSBM/4ulnnJx77r1DyUmnZKeaTWnmhZ96 Nu5D45PcmVwoa5xBwhbpwxpCUq0cKdO15OGmaw2bz0l5ddef1oHvskhwdV9H6qoZvnoA WsbQ== X-Forwarded-Encrypted: i=1; AJvYcCUQ7KznOUZdEGriiMedYUalxa/6TZwimvWndmBAfy3FQWUtAo2oUNFwxclEA30c38bNN9AViiRboRu1kKg=@vger.kernel.org X-Gm-Message-State: AOJu0Ywahb4VLGcXafO34jWezddpe/wKi3lXSR5e8nZjvO8dqXKzjGJ2 v63x69L2sj4WIXkfSVSho6ugSPibcHfPQhKydmtiBmOCxd6C4Q9qT0k+qXple+EMfcZFphGKvZC k42Y4wLqaQg== X-Received: from dlbrn6.prod.google.com ([2002:a05:7022:1506:b0:128:ebd8:625d]) (user=irogers job=prod-delivery.src-stubby-dispatcher) by 2002:a05:7022:ec7:b0:128:d7a7:5271 with SMTP id a92af1059eb24-12be6584897mr2097291c88.28.1775060016753; Wed, 01 Apr 2026 09:13:36 -0700 (PDT) Date: Wed, 1 Apr 2026 09:13:20 -0700 In-Reply-To: <20260401161324.332356-1-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20260401055206.43187-1-irogers@google.com> <20260401161324.332356-1-irogers@google.com> X-Mailer: git-send-email 2.53.0.1118.gaef5881109-goog Message-ID: <20260401161324.332356-5-irogers@google.com> Subject: [PATCH v4 4/8] perf session: Extra logging for failed to process events From: Ian Rogers To: acme@kernel.org, namhyung@kernel.org Cc: irogers@google.com, adrian.hunter@intel.com, alexander.shishkin@linux.intel.com, ashelat@redhat.com, ctshao@google.com, derek.foreman@collabora.com, howardchu95@gmail.com, hrishikesh123s@gmail.com, james.clark@linaro.org, jolsa@kernel.org, linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, mingo@redhat.com, peterz@infradead.org, swapnil.sapkal@amd.com, thomas.falcon@intel.com Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Print log information in ordered event processing so that the cause of finished round failing is clearer. Print the event name along with its number when an event isn't processed. Add extra detail about where the failure happened. The following log lines come from running `perf data convert`. Before: 0xa250 [0x10]: failed to process type: 80 After: 0xa250 [0x10]: piped event processing failed for event of type: FEATURE (= 80) Signed-off-by: Ian Rogers --- tools/perf/util/session.c | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index 4b465abfa36c..492515789d3d 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c @@ -131,10 +131,17 @@ static int ordered_events__deliver_event(struct order= ed_events *oe, { struct perf_session *session =3D container_of(oe, struct perf_session, ordered_events); + int ret =3D perf_session__deliver_event(session, event->event, + session->tool, event->file_offset, + event->file_path); =20 - return perf_session__deliver_event(session, event->event, - session->tool, event->file_offset, - event->file_path); + if (ret) { + pr_err("%#" PRIx64 " [%#x]: ordered event processing failed (%d) for eve= nt of type: %s (%d)\n", + event->file_offset, event->event->header.size, ret, + perf_event__name(event->event->header.type), + event->event->header.type); + } + return ret; } =20 struct perf_session *__perf_session__new(struct perf_data *data, @@ -2110,8 +2117,10 @@ static int __perf_session__process_pipe_events(struc= t perf_session *session) } =20 if ((skip =3D perf_session__process_event(session, event, head, "pipe")) = < 0) { - pr_err("%#" PRIx64 " [%#x]: failed to process type: %d\n", - head, event->header.size, event->header.type); + pr_err("%#" PRIx64 " [%#x]: piped event processing failed for event of t= ype: %s (%d)\n", + head, event->header.size, + perf_event__name(event->header.type), + event->header.type); err =3D -EINVAL; goto out_err; } @@ -2225,8 +2234,10 @@ static int __perf_session__process_decomp_events(str= uct perf_session *session) if (size < sizeof(struct perf_event_header) || (skip =3D perf_session__process_event(session, event, decomp->file_p= os, decomp->file_path)) < 0) { - pr_err("%#" PRIx64 " [%#x]: failed to process type: %d\n", - decomp->file_pos + decomp->head, event->header.size, event->header.typ= e); + pr_err("%#" PRIx64 " [%#x]: decompress event processing failed for even= t of type: %s (%d)\n", + decomp->file_pos + decomp->head, event->header.size, + perf_event__name(event->header.type), + event->header.type); return -EINVAL; } =20 @@ -2382,8 +2393,9 @@ reader__read_event(struct reader *rd, struct perf_ses= sion *session, if (size < sizeof(struct perf_event_header) || (skip =3D rd->process(session, event, rd->file_pos, rd->path)) < 0) { errno =3D -skip; - pr_err("%#" PRIx64 " [%#x]: failed to process type: %d [%m]\n", + pr_err("%#" PRIx64 " [%#x]: processing failed for event of type: %s (%d)= [%m]\n", rd->file_offset + rd->head, event->header.size, + perf_event__name(event->header.type), event->header.type); err =3D skip; goto out; --=20 2.53.0.1118.gaef5881109-goog