Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp232447pxb; Thu, 2 Sep 2021 02:58:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwuSUdax90KPIGjTEUrldxANIJCjOcc/nDvu2cXS4UAF2Iy53enga+y9Z95M/f7oT7Nji/u X-Received: by 2002:a5d:9355:: with SMTP id i21mr2098733ioo.12.1630576737606; Thu, 02 Sep 2021 02:58:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630576737; cv=none; d=google.com; s=arc-20160816; b=sRcX9DtQHBXrB5Q6jXF03wW56DCe3RHwdz0hQXNvUXwOgJIZyzFJDKFJZ0y7ANf1ez 9JHDg3B3nQ5+ryQvsdp4PxLfXh72sTHHfZOe+vdOQFrLDm/T0vtJv2B8tU1eHmraCW+X nwXtK4dn+JrkOasTC0D02Wlg3t901HdKQNS0iFNKYFk4qwlyeHuDOWE60/a7/XUY50xP 3MduhHTfVe7KW5Ar9Kuo/UMac8tYXhNdc4MoDyIDgK96CApUTZqFuxtpU+SCz/YpQDHQ MJDXYRUcR2JwYnPcaaEbXavdIofJR6dvkz6uD0whq/0QeylXkB8dYOgoJWnZeB5r9CL5 CZ5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=u9yOcWqE0BKudTynYPQBJV1peSukdjlV2nxzmGYyKx0=; b=adzmZ6ma7txzOsHx19Jl+gleH7zyFWoG9SfCmNjlHJ0EVkPhszBrFCgaK9Fc2WZHCi AUY2wasVP/wzyBWOAWXIL+UgU128o3upc8hEw7NDXX3xSavJD+d8drw/W6c2loAeG4c7 8oZ5TTK5GJpd+nkYTc9/dnji1kSnR4WMZJCUv96592jGghrPuGYmBMqKJU6WoOmoAfeb 4Ra01i++TdLyViZ2DXbRXvUntrQO7lENu8WpsypJQKBZJvuP+0SFHgqxUlHdQQhsUGwm j6lTWaiwS3VWk6TKfXKXTgZurnJ0zNv0WL3CzePvwsck04ipEuEsKGPxXWfbCl1Q+BpX beLA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e15si1534917ilu.153.2021.09.02.02.58.46; Thu, 02 Sep 2021 02:58:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242586AbhIBHCr (ORCPT + 99 others); Thu, 2 Sep 2021 03:02:47 -0400 Received: from mga17.intel.com ([192.55.52.151]:4566 "EHLO mga17.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242571AbhIBHCp (ORCPT ); Thu, 2 Sep 2021 03:02:45 -0400 X-IronPort-AV: E=McAfee;i="6200,9189,10094"; a="199225889" X-IronPort-AV: E=Sophos;i="5.84,371,1620716400"; d="scan'208";a="199225889" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Sep 2021 00:01:46 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.84,371,1620716400"; d="scan'208";a="467243071" Received: from kbl-ppc.sh.intel.com ([10.239.159.163]) by orsmga007.jf.intel.com with ESMTP; 02 Sep 2021 00:01:43 -0700 From: Jin Yao To: acme@kernel.org, jolsa@kernel.org, peterz@infradead.org, mingo@redhat.com, alexander.shishkin@linux.intel.com Cc: Linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, ak@linux.intel.com, kan.liang@intel.com, yao.jin@intel.com, rickyman7@gmail.com, john.garry@huawei.com, Jin Yao Subject: [PATCH v7 0/2] perf tools: Add PMU alias support Date: Thu, 2 Sep 2021 14:59:53 +0800 Message-Id: <20210902065955.1299-1-yao.jin@linux.intel.com> X-Mailer: git-send-email 2.17.1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org A perf uncore PMU may have two PMU names, a real name and an alias name. With this patch set, the perf tool can monitor the PMU with either the real name or the alias. Use the real name, $ perf stat -e uncore_cha_2/event=1/ -x, 4044879584,,uncore_cha_2/event=1/,2528059205,100.00,, Use the alias, $ perf stat -e uncore_type_0_2/event=1/ -x, 3659675336,,uncore_type_0_2/event=1/,2287306455,100.00,, v7: --- 1. Create 'struct perf_pmu_alias_name' constructor/destructor. 2. Return '-errno' if opendir() is failed. v6: --- 1. Call setup_pmu_alias_list in pmu_find_alias_name. 2. Check pmu->name and pmu->alias_name after strdup in pmu_lookup. v5: --- 1. Don't use strdup in find functions (pmu_find_real_name and pmu_find_alias_name). Just return name and keep the 'pmu->name = strdup(name);' in pmu_lookup. 2. Remove invalid comment for alias_name in struct perf_pmu. v4: --- 1. Fix memory leaks in pmu_lookup. 2. Rebase to perf/core. v3: --- 1. Use fgets() to replace fscanf(). 2. Resource cleanup. v2: --- Add test case to verify the real name and alias name having same effect. Jin Yao (1): perf tests: Test for PMU alias Kan Liang (1): perf pmu: Add PMU alias support tools/perf/arch/x86/util/pmu.c | 155 +++++++++++++++++++++++++++++++- tools/perf/tests/parse-events.c | 92 +++++++++++++++++++ tools/perf/util/parse-events.y | 3 +- tools/perf/util/pmu.c | 40 ++++++++- tools/perf/util/pmu.h | 5 ++ 5 files changed, 290 insertions(+), 5 deletions(-) -- 2.17.1