From patchwork Mon Jun 21 21:56:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 12335771 X-Patchwork-Delegate: bpf@iogearbox.net Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-26.3 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D538DC48BC2 for ; Mon, 21 Jun 2021 21:56:58 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id B8DB560C3D for ; Mon, 21 Jun 2021 21:56:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232169AbhFUV7M (ORCPT ); Mon, 21 Jun 2021 17:59:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47254 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232007AbhFUV7J (ORCPT ); Mon, 21 Jun 2021 17:59:09 -0400 Received: from mail-qt1-x849.google.com (mail-qt1-x849.google.com [IPv6:2607:f8b0:4864:20::849]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 83DC1C061574 for ; Mon, 21 Jun 2021 14:56:53 -0700 (PDT) Received: by mail-qt1-x849.google.com with SMTP id z4-20020ac87f840000b02902488809b6d6so16764102qtj.9 for ; Mon, 21 Jun 2021 14:56:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:message-id:mime-version:subject:from:to:cc; bh=cqqc0EDu2I7xCxfE/MPAJgRcE4NrX97BWzFjUvHGMpU=; b=WFY5SE/nXZWHGedgQMIcsyiRFbkJ5UKJty2UoIJN2MhgpSE0jZ6OSSya1WfhDk3xyV UhV1hnt90aAsqKzqZejcfBqI0/lwXJxfxDO1V4EmP09E5iB5JOfEHpc7l1+RAyWbHoZG glnUe3AIVXn40Bo9QeDxLVhGf7XJW9J+FXgb5JGUJPx0NheMmUP1BfpL/fkfICCRJOAf fFFl9iAPR0niRHl/c8hF1SSnAdFT7p4Uz9Ngb7GXdQ04VyrYgcz098wvMjQGNMCiePfE gWZZDX+eevbClaxKlRlisqJXnUAwH/AJEwdqEqDLMh54QEEpF+RKZWU8agoPpeY2eoWy vONw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=cqqc0EDu2I7xCxfE/MPAJgRcE4NrX97BWzFjUvHGMpU=; b=T/AQiq8W/kcXcjmYb3Kvb+snJIqvISn70QQkiRvLwEe41x7I8cxptJ1shnJZo5UWjT E5KjyXJ/u7MQigd9o7YYNlFpnA/lPq2OPjP8QyqwYGBGu5g6XDfutEu3JMiFb09CcBk8 GMZkt5UrF33ZuVGRudyiRbeMGkcpexWQ9swwBPmyTxHztVUpDhCzHzyc58iyZKOX7X0/ Exh//km6Jj9yZbfmxrElc3PQJKrqcPDq29fGMVdwdigaGRIiv30NI+WXOK++AWXI95eO bQfjz2ZK+Sw+H/irQu3pgeqNLc6SC00EK07i1L4ZZ14P3CR00Ly+tWYwVkaRtRtHxp6I sT+w== X-Gm-Message-State: AOAM531xAmvG6HrmNLsXHDRlGdqi3u1YYoS4RJKG5zAtzG/9wLOHnJdD 7ttoZxjDc14ZI7CPQsfXCclMJggbNbWe X-Google-Smtp-Source: ABdhPJxT1HOzhSPxG+dba5yvPloQAdBq1wQTi12sBnJhG2cGE7eQtv3+Xj8VRwJUw0MSSIDPJ7hpb3lFFy0I X-Received: from irogers.svl.corp.google.com ([2620:15c:2cd:202:ffd6:b7f5:87ee:7be2]) (user=irogers job=sendgmr) by 2002:a05:6214:12c6:: with SMTP id s6mr22087093qvv.19.1624312612642; Mon, 21 Jun 2021 14:56:52 -0700 (PDT) Date: Mon, 21 Jun 2021 14:56:46 -0700 Message-Id: <20210621215648.2991319-1-irogers@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.32.0.288.g62a8d224e6-goog Subject: [PATCH v2 1/3] perf test: Pass the verbose option to shell tests From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Song Liu , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org Cc: Ian Rogers Precedence: bulk List-ID: X-Mailing-List: bpf@vger.kernel.org Having a verbose option will allow shell tests to provide extra failure details when the fail or skip. Signed-off-by: Ian Rogers --- tools/perf/tests/builtin-test.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/perf/tests/builtin-test.c b/tools/perf/tests/builtin-test.c index cbbfe48ab802..e1ed60567b2f 100644 --- a/tools/perf/tests/builtin-test.c +++ b/tools/perf/tests/builtin-test.c @@ -577,10 +577,13 @@ struct shell_test { static int shell_test__run(struct test *test, int subdir __maybe_unused) { int err; - char script[PATH_MAX]; + char script[PATH_MAX + 3]; struct shell_test *st = test->priv; - path__join(script, sizeof(script), st->dir, st->file); + path__join(script, sizeof(script) - 3, st->dir, st->file); + + if (verbose) + strncat(script, " -v", sizeof(script) - strlen(script) - 1); err = system(script); if (!err) From patchwork Mon Jun 21 21:56:47 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 12335773 X-Patchwork-Delegate: bpf@iogearbox.net Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-26.3 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6C324C4743C for ; Mon, 21 Jun 2021 21:57:00 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4FA376135D for ; Mon, 21 Jun 2021 21:57:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231793AbhFUV7N (ORCPT ); Mon, 21 Jun 2021 17:59:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47272 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232180AbhFUV7M (ORCPT ); Mon, 21 Jun 2021 17:59:12 -0400 Received: from mail-qk1-x749.google.com (mail-qk1-x749.google.com [IPv6:2607:f8b0:4864:20::749]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 661D9C061756 for ; Mon, 21 Jun 2021 14:56:56 -0700 (PDT) Received: by mail-qk1-x749.google.com with SMTP id t131-20020a37aa890000b02903a9f6c1e8bfso15561574qke.10 for ; Mon, 21 Jun 2021 14:56:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=o7AiO7cf+g5j73bnIKC5PyTIHqUoKVu2uLnXWRb97sM=; b=ZArou9EpOMHKZdF4JziC2HUFizemZfHZxYohE3H/4NjcwmlquDQ2fdyZIrSB4+jrGa qKjnVY3MV7YctoL7xZq2jvEu2DE8x03uMjUTGvi63UUsOqaULaUISvn/ymiX17zzp1iX XYw12fKEsRvWK1PQmAa1IbLPJ6XP6a8/qfVSvp3poP9JHGMV+LAR+ou5QzseEkjnAG/R qWhObxJnFu16ryTZ0BP7ZKBAO9Qd4bBcKHX4Mqf8nJq70mUuiC4WTpb6qRbdUYj/4lZ3 pcLQdqdBhNMd57MwVAA5807sijCAQ9PHJaAussOPguyfoICmC6VLJ3dTFDS4qE/2Gqwd cBMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=o7AiO7cf+g5j73bnIKC5PyTIHqUoKVu2uLnXWRb97sM=; b=g7DWSuxtWFwDaQjaz/bolGx6LilnT0lcILWA293E/aMMTKsIZe81KvGyOva2xFwhgr kr9h0XQgDmf6FjAUc0q39Fk4lRwF2hsVyr6rwSbzA62bdiAeo/9h0hjSb0hc1t9XrSrY yR8iqo1cOmCQ2qySK+e2beOtCTbDacC3jQl9cC4T0yKsIBcoDYy8tXLfO1+RJppAp98n 16VwLXR4wah+NbqvNoc6JajA5x8rofxAF1Cp+9m4X5B7JCqDWJKvRtZ5Z1J7f1gCM40A Y5+80i498uFSnAo3YWRLwD+AH5edcKnjL8+Sah1jVspdSaEowGDgjwSiI5yIZbjw/tRU ItFw== X-Gm-Message-State: AOAM532wDzQJo6u4XZTQGRE/kwr9kNb67cTsX25RatX3sdJHM3saznpd u2RTY/9lDohKsVJtrMqALO//MQq6djfz X-Google-Smtp-Source: ABdhPJyGBlSlo07F4G7w4AxwWPsxT8RK5eHECX8mtkRUDvlMQ9S86+4p8nnfQnKE92k781Q430veQF9794kH X-Received: from irogers.svl.corp.google.com ([2620:15c:2cd:202:ffd6:b7f5:87ee:7be2]) (user=irogers job=sendgmr) by 2002:a25:cac4:: with SMTP id a187mr112611ybg.423.1624312615504; Mon, 21 Jun 2021 14:56:55 -0700 (PDT) Date: Mon, 21 Jun 2021 14:56:47 -0700 In-Reply-To: <20210621215648.2991319-1-irogers@google.com> Message-Id: <20210621215648.2991319-2-irogers@google.com> Mime-Version: 1.0 References: <20210621215648.2991319-1-irogers@google.com> X-Mailer: git-send-email 2.32.0.288.g62a8d224e6-goog Subject: [PATCH v2 2/3] perf test: Add verbose skip output for bpf counters From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Song Liu , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org Cc: Ian Rogers Precedence: bulk List-ID: X-Mailing-List: bpf@vger.kernel.org Provide additional context for when the stat bpf counters test skips. Signed-off-by: Ian Rogers --- tools/perf/tests/shell/stat_bpf_counters.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tools/perf/tests/shell/stat_bpf_counters.sh b/tools/perf/tests/shell/stat_bpf_counters.sh index 22eb31e48ca7..85eb689fe202 100755 --- a/tools/perf/tests/shell/stat_bpf_counters.sh +++ b/tools/perf/tests/shell/stat_bpf_counters.sh @@ -22,7 +22,13 @@ compare_number() } # skip if --bpf-counters is not supported -perf stat --bpf-counters true > /dev/null 2>&1 || exit 2 +if ! perf stat --bpf-counters true > /dev/null 2>&1; then + if [ "$1" == "-v" ]; then + echo "Skipping: --bpf-counters not supported" + perf --no-pager stat --bpf-counters true || true + fi + exit 2 +fi base_cycles=$(perf stat --no-big-num -e cycles -- perf bench sched messaging -g 1 -l 100 -t 2>&1 | awk '/cycles/ {print $1}') bpf_cycles=$(perf stat --no-big-num --bpf-counters -e cycles -- perf bench sched messaging -g 1 -l 100 -t 2>&1 | awk '/cycles/ {print $1}') From patchwork Mon Jun 21 21:56:48 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 12335775 X-Patchwork-Delegate: bpf@iogearbox.net Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-26.3 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EB5B3C48BE5 for ; Mon, 21 Jun 2021 21:57:01 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id D4830611CE for ; Mon, 21 Jun 2021 21:57:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232055AbhFUV7P (ORCPT ); Mon, 21 Jun 2021 17:59:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47288 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231970AbhFUV7O (ORCPT ); Mon, 21 Jun 2021 17:59:14 -0400 Received: from mail-qk1-x749.google.com (mail-qk1-x749.google.com [IPv6:2607:f8b0:4864:20::749]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF725C06175F for ; Mon, 21 Jun 2021 14:56:58 -0700 (PDT) Received: by mail-qk1-x749.google.com with SMTP id 14-20020a37060e0000b02903aad32851d2so15621625qkg.1 for ; Mon, 21 Jun 2021 14:56:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=gKtEXdH2Nx268P6rXxdFqr+OoxaI6ttnIQOvnZF/0dA=; b=P/rlbyxwsp6ZshUS6sfulzKZK7nUGluueOk8obRwKeSTExQb0SYgYYv4hyYUm8XkI8 OvlWjFYjQfucnhGYRaUBWm17KPz7zQtqe0m5X78EuMa6F970tM62fsSoD+14b4tD6gEV aSpxVYIas/gHuPY1o+jb0MPYJ7XKlOV49MKAVKjJSIIoGqN9HEYJ0zvFmb2I0RUE7eiI /xYaQACjzYqKH3zb1N3vHv5ZSzW0G9Bs/fPZm0NAv2Pc2uYrs4iudmmyDR5oBkrk6lV+ fjfOmZTzA1PZS4/O2Pht6T17q7HuDnXhQiX/y5Mg0Q1mvEwDAxvkuepxxE3qfkDukyzc SJRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=gKtEXdH2Nx268P6rXxdFqr+OoxaI6ttnIQOvnZF/0dA=; b=uRXw/zmAG6gwmNzoWid5AFqz148iWwVl5G4gbubSl5xpQFESWGHApcu9kg5BirUna2 H7RmTZ/AJ2qzoVns9GoZ9ET69qRshs9MZ+Gf9VBWHwpj52dddc08jQ6aMFcvLBUDq9B9 Ruh1Hb8CJSPdGoMhcUoDUM0oF1KFFhhfGLKZqdFHMmnzE6Cy1YPD55AkCj3VVD+ljBpj zZ7NaNfOklGApWqlc6qr3bDKcxRh9sDcFKkEsjE9xWGN/8mDeQ3WOAYNf+OF6H7B3Bii HIw89dDO/gaLt8ftHfS30567yVwLsLxvmehmaii87hBf2zQ+bwUE5/uJM3rEK6pS0SSK ykmg== X-Gm-Message-State: AOAM533FP53w/eZXb/PuvXYNwORUZ6QyDk3cSKFfdlnJyovTsdPSiroS D7Eva6aSg1JHgIiTvKZyR62vMEukorCJ X-Google-Smtp-Source: ABdhPJzgyeCAgazYmeNf8rJ2OwwEv8oUVZtJVF6ZWaW32G4LBTJ7DhWecTIa0hW5LwFJz5dih8yLnCCDJJui X-Received: from irogers.svl.corp.google.com ([2620:15c:2cd:202:ffd6:b7f5:87ee:7be2]) (user=irogers job=sendgmr) by 2002:a05:6214:20e3:: with SMTP id 3mr22082009qvk.48.1624312617995; Mon, 21 Jun 2021 14:56:57 -0700 (PDT) Date: Mon, 21 Jun 2021 14:56:48 -0700 In-Reply-To: <20210621215648.2991319-1-irogers@google.com> Message-Id: <20210621215648.2991319-3-irogers@google.com> Mime-Version: 1.0 References: <20210621215648.2991319-1-irogers@google.com> X-Mailer: git-send-email 2.32.0.288.g62a8d224e6-goog Subject: [PATCH v2 3/3] perf test: Make stat bpf counters test more robust From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Song Liu , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, bpf@vger.kernel.org Cc: Ian Rogers Precedence: bulk List-ID: X-Mailing-List: bpf@vger.kernel.org If the test is run on a hypervisor then the cycles event may not be counted, skip the test in this situation. Fail the test if cycles are not counted in the subsequent bpf counter run. Signed-off-by: Ian Rogers --- tools/perf/tests/shell/stat_bpf_counters.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tools/perf/tests/shell/stat_bpf_counters.sh b/tools/perf/tests/shell/stat_bpf_counters.sh index 85eb689fe202..6b156dd85469 100755 --- a/tools/perf/tests/shell/stat_bpf_counters.sh +++ b/tools/perf/tests/shell/stat_bpf_counters.sh @@ -31,7 +31,15 @@ if ! perf stat --bpf-counters true > /dev/null 2>&1; then fi base_cycles=$(perf stat --no-big-num -e cycles -- perf bench sched messaging -g 1 -l 100 -t 2>&1 | awk '/cycles/ {print $1}') +if [ "$base_cycles" == "&1 | awk '/cycles/ {print $1}') +if [ "$bpf_cycles" == "