From nobody Mon Feb 9 14:15:29 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id BFF0FC6FD1C for ; Mon, 20 Mar 2023 21:25:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230390AbjCTVZV (ORCPT ); Mon, 20 Mar 2023 17:25:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47732 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230385AbjCTVYr (ORCPT ); Mon, 20 Mar 2023 17:24:47 -0400 Received: from mail-yb1-xb49.google.com (mail-yb1-xb49.google.com [IPv6:2607:f8b0:4864:20::b49]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 163FDAF28 for ; Mon, 20 Mar 2023 14:24:18 -0700 (PDT) Received: by mail-yb1-xb49.google.com with SMTP id y144-20020a253296000000b00b69ce0e6f2dso6030332yby.18 for ; Mon, 20 Mar 2023 14:24:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1679347455; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Py8U8PqFwPIRVvHHDItGJJ+sTjfy4CxHiyg06BPRgeo=; b=NyJCJ9tnHk0O3+MXWps8O+w+74dT2N/H35s635JnpB+eKAu4PfsVf+9YZe/UgUidZo GmwwSaiyfMqeQsT/VjFcQH80sF2Jb0/+SrOUwr9lXuc8dcA2/tKkp81NIl9fKuOuTLKy 96eX3gJxEslHw1/sSTg+yXMDXtdjq1AUbvKr4Gpd+6TcxSxpCYmuT1noXj2jY1bwDFqZ 1N5n7hYx8XHIY/vWbtq3YzmEzVyTcsp3S6blSxAKukRl9TT9NmKMlrT7ogXRGgcWGOGC Ca0iFy3liB7qq87YOP573sINyPrUg8HcOrHLoo0gz+C5vvnmf4omOIvLo1sCLu+VPcUd Dw3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679347455; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Py8U8PqFwPIRVvHHDItGJJ+sTjfy4CxHiyg06BPRgeo=; b=WfC7zlYvTfUSU7fjw8S4Qc6YjmTu9kUqKqs7dGfWOYsunGXkO4Cl8y0/UWyDBrOTPX NTsFAVW3S325Hlxq4mhML2SCCZEqgM8gU61y+JcM8leFBpAYsgBVrHRR0PxMFZcA8TOf TBeG6p/BmqejCrJqqMrDuilf1LVjvjApPrFF7r4+bAkyqOjcoQQAPiOW6/72kZgkA5JQ f/g1hvS4b/devz19aesTf0HGOEQkUU1fEMTkvKGISDTNdmyXixE+4mD+WdXWuIMZkuxY 2d+wUfVvN+6l+o0lN78sBO6XO5IAP4Qy6TXlyP7pNwOW9XIwo0zQqapuqUM/4G09Zc+4 7LwA== X-Gm-Message-State: AAQBX9dhS2o8IRJNSEuptuJ8p2iUXFBYjBJUtcvPcjuQIJ6fQxDC5KNO BE2jRPsi8KU0iDT/BexfnFO02RY1oAdm X-Google-Smtp-Source: AKy350Zh2/MbdZG8/LZzSAvOCJQEKf8aNlP302UyKhH88CujQvetA0j/fm+vFy4HgPJrvqGVtr9YvsEeG0ma X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:a30f:d1e2:fcd8:aa4d]) (user=irogers job=sendgmr) by 2002:a05:6902:703:b0:b6a:3632:12fd with SMTP id k3-20020a056902070300b00b6a363212fdmr20168ybt.2.1679347455142; Mon, 20 Mar 2023 14:24:15 -0700 (PDT) Date: Mon, 20 Mar 2023 14:22:41 -0700 In-Reply-To: <20230320212248.1175731-1-irogers@google.com> Message-Id: <20230320212248.1175731-11-irogers@google.com> Mime-Version: 1.0 References: <20230320212248.1175731-1-irogers@google.com> X-Mailer: git-send-email 2.40.0.rc1.284.g88254d51c5-goog Subject: [PATCH v5 10/17] perf test: Add extra diagnostics to maps test From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Thomas Gleixner , Darren Hart , Davidlohr Bueso , James Clark , John Garry , Riccardo Mancini , Yury Norov , Andy Shevchenko , Andrew Morton , Adrian Hunter , Leo Yan , Andi Kleen , Thomas Richter , Kan Liang , Madhavan Srinivasan , Shunsuke Nakamura , Song Liu , Masami Hiramatsu , Steven Rostedt , Miaoqian Lin , Stephen Brennan , Kajol Jain , Alexey Bayduraev , German Gomez , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, Eric Dumazet , Dmitry Vyukov , Hao Luo Cc: Stephane Eranian , Ian Rogers Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Dump the resultant and comparison maps on failure. Signed-off-by: Ian Rogers --- tools/perf/tests/maps.c | 51 +++++++++++++++++++++++++++++------------ 1 file changed, 36 insertions(+), 15 deletions(-) diff --git a/tools/perf/tests/maps.c b/tools/perf/tests/maps.c index fd0c464fcf95..1c7293476aca 100644 --- a/tools/perf/tests/maps.c +++ b/tools/perf/tests/maps.c @@ -1,4 +1,5 @@ // SPDX-License-Identifier: GPL-2.0 +#include #include #include #include "tests.h" @@ -17,22 +18,42 @@ static int check_maps(struct map_def *merged, unsigned = int size, struct maps *ma { struct map_rb_node *rb_node; unsigned int i =3D 0; - - maps__for_each_entry(maps, rb_node) { - struct map *map =3D rb_node->map; - - if (i > 0) - TEST_ASSERT_VAL("less maps expected", (map && i < size) || (!map && i = =3D=3D size)); - - TEST_ASSERT_VAL("wrong map start", map__start(map) =3D=3D merged[i].sta= rt); - TEST_ASSERT_VAL("wrong map end", map__end(map) =3D=3D merged[i].end); - TEST_ASSERT_VAL("wrong map name", !strcmp(map__dso(map)->name, merged[i= ].name)); - TEST_ASSERT_VAL("wrong map refcnt", refcount_read(&map->refcnt) =3D=3D 1= ); - - i++; + bool failed =3D false; + + if (maps__nr_maps(maps) !=3D size) { + pr_debug("Expected %d maps, got %d", size, maps__nr_maps(maps)); + failed =3D true; + } else { + maps__for_each_entry(maps, rb_node) { + struct map *map =3D rb_node->map; + + if (map__start(map) !=3D merged[i].start || + map__end(map) !=3D merged[i].end || + strcmp(map__dso(map)->name, merged[i].name) || + refcount_read(&map->refcnt) !=3D 1) { + failed =3D true; + } + i++; + } } - - return TEST_OK; + if (failed) { + pr_debug("Expected:\n"); + for (i =3D 0; i < size; i++) { + pr_debug("\tstart: %" PRIu64 " end: %" PRIu64 " name: '%s' refcnt: 1\n", + merged[i].start, merged[i].end, merged[i].name); + } + pr_debug("Got:\n"); + maps__for_each_entry(maps, rb_node) { + struct map *map =3D rb_node->map; + + pr_debug("\tstart: %" PRIu64 " end: %" PRIu64 " name: '%s' refcnt: %d\n= ", + map__start(map), + map__end(map), + map__dso(map)->name, + refcount_read(&map->refcnt)); + } + } + return failed ? TEST_FAIL : TEST_OK; } =20 static int test__maps__merge_in(struct test_suite *t __maybe_unused, int s= ubtest __maybe_unused) --=20 2.40.0.rc1.284.g88254d51c5-goog