Received: by 2002:ac0:e34a:0:0:0:0:0 with SMTP id g10csp526682imn; Thu, 28 Jul 2022 07:59:17 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sOGpjv23Pt2WKBSQ0s2Vug9qSR5LBSS6RtGOEFGn+bsXKS5K0Go6t31q5NpGqDtdByJzN7 X-Received: by 2002:a05:6a00:c96:b0:52a:cad7:d74e with SMTP id a22-20020a056a000c9600b0052acad7d74emr27354162pfv.76.1659020357554; Thu, 28 Jul 2022 07:59:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1659020357; cv=none; d=google.com; s=arc-20160816; b=L+4ejaTXIZlpcAiPIFJsMr3LBIZdrorF5FJLONtlPAN2vDmAYkCzuhZjpSZndV0dmh 0nRJSi4i4Hx0joshp8Ek7r7UGFFdoE4w/24ordEL6Dlk9R1u/QdwFh92iopUx8VCeETh 7XhVDw5Nu7wKf81mCOW8VKnFzkSYLpE9EpuT+tp8ESC0jzf49G3LhVPknzRcKSmh+FZG TWp6pX8gHHFoTERMwxyqnYQPoF2520Tb13E+Q/450beXx6ruXAUQX9nKiHiSXfalcC6L J0aNf9N5saoE96WgKiy4/D19CoKVF7T5BkRFYWzN0Td6FL8zRAk7UcBG6QEodws8jVZa zY1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=YIBGN7SbSldYJhtVTwLhqDz8egXJr/GVo5q3dBw2Cew=; b=OXdmdG+Qj6LXPc0UyuUHo+i3zfotm/uDoWLmUVNl3RzppHlEwCFmM7tz5u4289ApoY AHeBWDRb/uPg0ENUzNW6Zmf8K2RxoE4qO3OK5HQ+lmNyOtN+yMd0Kc1hL1zJf88rzW6w TpMMXUJc99+81rEG88nTFyuFBtQU/DAFZIxrVewlsi2SwwJMmDcy/hHfJ0I0obYFk1eF ytrxpPjZ4s/OdGrUNxaIgJOUHojT6uk11Jr1KnIFcVt+dhhM8lGv4lgxFqKVyPBS4LZa sao9gESNRsl5MPNOT1LyWxcEv6I4mj+FqGdUYJtdgmvHaaXdyvAF3KXfEc+kpkw5Gkpq eyRQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 14-20020a63184e000000b004167867429fsi1280509pgy.82.2022.07.28.07.59.00; Thu, 28 Jul 2022 07:59:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232818AbiG1Oxq (ORCPT + 99 others); Thu, 28 Jul 2022 10:53:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33220 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232947AbiG1OxS (ORCPT ); Thu, 28 Jul 2022 10:53:18 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 7133E6050B; Thu, 28 Jul 2022 07:53:15 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5698C106F; Thu, 28 Jul 2022 07:53:15 -0700 (PDT) Received: from e126387.arm.com (unknown [10.57.11.24]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 7C9A83F70D; Thu, 28 Jul 2022 07:53:13 -0700 (PDT) From: carsten.haitzler@foss.arm.com To: linux-kernel@vger.kernel.org Cc: coresight@lists.linaro.org, suzuki.poulose@arm.com, mathieu.poirier@linaro.org, mike.leach@linaro.org, leo.yan@linaro.org, linux-perf-users@vger.kernel.org, acme@kernel.org Subject: [PATCH v5 00/14] A patch series improving data quality of perf test for CoreSight Date: Thu, 28 Jul 2022 15:52:42 +0100 Message-Id: <20220728145256.2985298-1-carsten.haitzler@foss.arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_NONE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: "Carsten Haitzler (Rasterman)" This is a prelude to adding more tests to shell tests and in order to support putting those tests into subdirectories, I need to change the test code that scans/finds and runs them. To support subdirs I have to recurse so it's time to refactor the code to allow this and centralize the shell script finding into one location and only one single scan that builds a list of all the found tests in memory instead of it being duplicated in 3 places. This code also optimizes things like knowing the max width of desciption strings (as we can do that while we scan instead of a whole new pass of opening files). It also more cleanly filters scripts to see only *.sh files thus skipping random other files in directories like *~ backup files, other random junk/data files that may appear and the scripts must be executable to make the cut (this ensures the script lib dir is not seen as scripts to run). This avoids perf test running previous older versions of test scripts that are editor backup files as well as skipping perf.data files that may appear and so on. Signed-off-by: Carsten Haitzler Carsten Haitzler (Rasterman) (14): perf test: Refactor shell tests allowing subdirs perf test: Add CoreSight shell lib shared code for future tests perf test: Add build infra for perf test tools for CoreSight tests perf test: Add asm pureloop test tool perf test: Add asm pureloop test shell script perf test: Add git ignore for perf data generated by the CoreSight tests perf test: Add memcpy thread test tool perf test: Add memcpy thread test shell script perf test: Add thread loop test tool perf test: Add thread loop test shell scripts perf test: Add unroll thread test tool perf test: Add unroll thread test shell script perf test: Add git ignore for tmp and output files of CoreSight tests perf test: Add relevant documentation about CoreSight testing .../trace/coresight/coresight-perf.rst | 160 ++++++++++++++ MAINTAINERS | 1 + tools/perf/.gitignore | 6 +- tools/perf/Documentation/arm-coresight.txt | 5 + tools/perf/Makefile.perf | 18 +- tools/perf/tests/Build | 1 + tools/perf/tests/builtin-test-list.c | 207 ++++++++++++++++++ tools/perf/tests/builtin-test-list.h | 12 + tools/perf/tests/builtin-test.c | 152 ++----------- tools/perf/tests/shell/coresight/Makefile | 30 +++ .../tests/shell/coresight/Makefile.miniconfig | 24 ++ .../tests/shell/coresight/asm_pure_loop.sh | 18 ++ .../shell/coresight/asm_pure_loop/.gitignore | 1 + .../shell/coresight/asm_pure_loop/Makefile | 34 +++ .../coresight/asm_pure_loop/asm_pure_loop.S | 28 +++ .../shell/coresight/memcpy_thread/.gitignore | 1 + .../shell/coresight/memcpy_thread/Makefile | 33 +++ .../coresight/memcpy_thread/memcpy_thread.c | 79 +++++++ .../shell/coresight/memcpy_thread_16k_10.sh | 18 ++ .../shell/coresight/thread_loop/.gitignore | 1 + .../shell/coresight/thread_loop/Makefile | 33 +++ .../shell/coresight/thread_loop/thread_loop.c | 86 ++++++++ .../coresight/thread_loop_check_tid_10.sh | 19 ++ .../coresight/thread_loop_check_tid_2.sh | 19 ++ .../coresight/unroll_loop_thread/.gitignore | 1 + .../coresight/unroll_loop_thread/Makefile | 33 +++ .../unroll_loop_thread/unroll_loop_thread.c | 74 +++++++ .../shell/coresight/unroll_loop_thread_10.sh | 18 ++ tools/perf/tests/shell/lib/coresight.sh | 132 +++++++++++ 29 files changed, 1105 insertions(+), 139 deletions(-) create mode 100644 Documentation/trace/coresight/coresight-perf.rst create mode 100644 tools/perf/Documentation/arm-coresight.txt create mode 100644 tools/perf/tests/builtin-test-list.c create mode 100644 tools/perf/tests/builtin-test-list.h create mode 100644 tools/perf/tests/shell/coresight/Makefile create mode 100644 tools/perf/tests/shell/coresight/Makefile.miniconfig create mode 100755 tools/perf/tests/shell/coresight/asm_pure_loop.sh create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/.gitignore create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/Makefile create mode 100644 tools/perf/tests/shell/coresight/asm_pure_loop/asm_pure_loop.S create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/.gitignore create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/Makefile create mode 100644 tools/perf/tests/shell/coresight/memcpy_thread/memcpy_thread.c create mode 100755 tools/perf/tests/shell/coresight/memcpy_thread_16k_10.sh create mode 100644 tools/perf/tests/shell/coresight/thread_loop/.gitignore create mode 100644 tools/perf/tests/shell/coresight/thread_loop/Makefile create mode 100644 tools/perf/tests/shell/coresight/thread_loop/thread_loop.c create mode 100755 tools/perf/tests/shell/coresight/thread_loop_check_tid_10.sh create mode 100755 tools/perf/tests/shell/coresight/thread_loop_check_tid_2.sh create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/.gitignore create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/Makefile create mode 100644 tools/perf/tests/shell/coresight/unroll_loop_thread/unroll_loop_thread.c create mode 100755 tools/perf/tests/shell/coresight/unroll_loop_thread_10.sh create mode 100644 tools/perf/tests/shell/lib/coresight.sh -- 2.32.0