From patchwork Fri Feb 23 16:05:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Garry X-Patchwork-Id: 129379 Delivered-To: patch@linaro.org Received: by 10.80.172.228 with SMTP id x91csp749790edc; Fri, 23 Feb 2018 07:16:32 -0800 (PST) X-Google-Smtp-Source: AH8x224QnsRCIOPq14fXbM1yPm3pziopFATSA6svIXNfs++pLA0lrnTX9/Ws2x3U4Ae4ZBCgdcwG X-Received: by 10.99.38.67 with SMTP id m64mr1720659pgm.2.1519398992386; Fri, 23 Feb 2018 07:16:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519398992; cv=none; d=google.com; s=arc-20160816; b=lBTuwjXh9FY3Bvze0xXwO/qB0Fz8Bm1FOBNbOZtY/aIdUlKl76C7ozwTjN4bS9gOHz 53jEqx3EZBKuKhxYxanDcbag1ARo9BYN70tZ22YjUrfBNw1+IPAFqadp9sS91x/iA+4H LG4AUlrHYCrwGYkmtf9+sQkPPakQqednltUQ9Tpm9u39cyZPLOiGGYY1wfzgzaWEgjxk eSkIScO8+VnVVTn0FJ3xf3fNdF8jv3PkcLIjzcgrB8X+6iGT15+fzTWjsiehA6hCPFoY qLC3T/LUEz2BF3Qe7quz5U7nPwDH4i8ZhR2SBMiOW+1Jy8bU2XAlHhj0WycBcUP2Gegc m6sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:cc :to:from:arc-authentication-results; bh=KHLp1CXUW7XsM/CwKXtA3J6t7CKTbyAhfDZqDMYwW8U=; b=ENBodrf5n7KMOUMFYk5Grtme67BCN9FrLvX1fYZRzUGTM1NEBpgz+U4LmlpNCd+yID qzLc8nmt4Ct1m8d3YA5RA4HWzIaFT6QumB0Clsdg71xh0d74/262acKI+7j1lMEuAUc+ c0DIKmKPWwmil1YToaINeoxoVVrDbmfP408BCcGwF/iMi9VvmHR1obcpaD+k4xJMqk4R NHNo5MpU7GtYJenYRAlAWF6+gNpRyMzMo8aI/CCkzoh79IAXZrYLEMDR8Ayf7Td7Zd4w CeSGdKyOXYVWV5dder75+24ETcML64ymHkSq37D5rEIBjuUNUIGgDAWP2uwduKF1TM4C ayzg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 73si1033911pfu.71.2018.02.23.07.16.32; Fri, 23 Feb 2018 07:16:32 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752047AbeBWPQ3 (ORCPT + 28 others); Fri, 23 Feb 2018 10:16:29 -0500 Received: from szxga07-in.huawei.com ([45.249.212.35]:39855 "EHLO huawei.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1751784AbeBWPO1 (ORCPT ); Fri, 23 Feb 2018 10:14:27 -0500 Received: from DGGEMS413-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id 48287C0657B2A; Fri, 23 Feb 2018 23:14:19 +0800 (CST) Received: from localhost.localdomain (10.67.212.75) by DGGEMS413-HUB.china.huawei.com (10.3.19.213) with Microsoft SMTP Server id 14.3.361.1; Fri, 23 Feb 2018 23:14:10 +0800 From: John Garry To: , , , , , , , , , CC: , , , , "John Garry" Subject: [PATCH v2 00/11] perf events patches for improved ARM64 support Date: Sat, 24 Feb 2018 00:05:21 +0800 Message-ID: <1519401932-205051-1-git-send-email-john.garry@huawei.com> X-Mailer: git-send-email 1.9.1 MIME-Version: 1.0 X-Originating-IP: [10.67.212.75] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset adds support for some perf events features, targeted at ARM64, implemented in a generic fashion. The two main features are as follows: - support for arch/vendor/platform pmu events directory structure - to support this, topic subdirectory support needs to be dropped - support for parsing standard architecture pmu events On the back of these, the Cavium ThunderX2, ARM Cortex-A53, and HiSilicon hip08 JSONs are relocated/added/updated. In addition, there is a patch to drop mutli-mapfile.csv support and also a bugfix in jevents.c for an error code value. Differences to v1: - Address coding issues from Jiri Olsa in adding arch std event support (https://lkml.org/lkml/2018/2/6/501) - add patch to drop topic subdirectory support - add patch for bug fix in json_events() - add review tags from Jiri Olsa Differences to RFC: - reworked patch for arch standard events - added arch standard event keyword support - use some macros to make the code more condense - use - standardised some function names - updated README - for patch to support vendor subdir, add check for unknown dirent type -add patch to drop mutliple mapfile.csv support - dealt with new cortex a53 JSONs John Garry (11): perf vendor events: drop incomplete multiple mapfile support perf vendor events: fix error code in json_events() perf vendor events: drop support for unused topic directories perf vendor events: add support for pmu events vendor subdirectory perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory perf vendor events arm64: Relocate Cortex A53 JSONs to arm subdirectory perf vendor events: add support for arch standard events perf vendor events arm64: add armv8-recommended.json perf vendor events arm64: fixup ThunderX2 to use recommended events perf vendor events arm64: fixup A53 to use recommended events perf vendor events arm64: add HiSilicon hip08 JSON file tools/perf/pmu-events/Build | 2 + tools/perf/pmu-events/README | 15 +- .../arch/arm64/arm/cortex-a53/branch.json | 26 ++ .../pmu-events/arch/arm64/arm/cortex-a53/bus.json | 10 + .../arch/arm64/arm/cortex-a53/cache.json | 27 ++ .../arch/arm64/arm/cortex-a53/memory.json | 12 + .../arch/arm64/arm/cortex-a53/other.json | 30 ++ .../arch/arm64/arm/cortex-a53/pipeline.json | 52 +++ .../pmu-events/arch/arm64/armv8-recommended.json | 452 +++++++++++++++++++++ .../arch/arm64/cavium/thunderx2-imp-def.json | 62 --- .../arch/arm64/cavium/thunderx2/core-imp-def.json | 42 ++ .../pmu-events/arch/arm64/cortex-a53/branch.json | 27 -- .../perf/pmu-events/arch/arm64/cortex-a53/bus.json | 22 - .../pmu-events/arch/arm64/cortex-a53/cache.json | 27 -- .../pmu-events/arch/arm64/cortex-a53/memory.json | 22 - .../pmu-events/arch/arm64/cortex-a53/other.json | 32 -- .../pmu-events/arch/arm64/cortex-a53/pipeline.json | 52 --- .../arch/arm64/hisilicon/hip08/core-imp-def.json | 140 +++++++ tools/perf/pmu-events/arch/arm64/mapfile.csv | 5 +- tools/perf/pmu-events/jevents.c | 286 ++++++++++--- 20 files changed, 1045 insertions(+), 298 deletions(-) create mode 100644 tools/perf/pmu-events/arch/arm64/arm/cortex-a53/branch.json create mode 100644 tools/perf/pmu-events/arch/arm64/arm/cortex-a53/bus.json create mode 100644 tools/perf/pmu-events/arch/arm64/arm/cortex-a53/cache.json create mode 100644 tools/perf/pmu-events/arch/arm64/arm/cortex-a53/memory.json create mode 100644 tools/perf/pmu-events/arch/arm64/arm/cortex-a53/other.json create mode 100644 tools/perf/pmu-events/arch/arm64/arm/cortex-a53/pipeline.json create mode 100644 tools/perf/pmu-events/arch/arm64/armv8-recommended.json delete mode 100644 tools/perf/pmu-events/arch/arm64/cavium/thunderx2-imp-def.json create mode 100644 tools/perf/pmu-events/arch/arm64/cavium/thunderx2/core-imp-def.json delete mode 100644 tools/perf/pmu-events/arch/arm64/cortex-a53/branch.json delete mode 100644 tools/perf/pmu-events/arch/arm64/cortex-a53/bus.json delete mode 100644 tools/perf/pmu-events/arch/arm64/cortex-a53/cache.json delete mode 100644 tools/perf/pmu-events/arch/arm64/cortex-a53/memory.json delete mode 100644 tools/perf/pmu-events/arch/arm64/cortex-a53/other.json delete mode 100644 tools/perf/pmu-events/arch/arm64/cortex-a53/pipeline.json create mode 100644 tools/perf/pmu-events/arch/arm64/hisilicon/hip08/core-imp-def.json -- 1.9.1 Acked-by: Jiri Olsa