Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp5053689iob; Mon, 9 May 2022 07:44:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzOYfok4juPe3X4QOTMnkcTPMQATAuiIufP0n5Tr0cxG4rwOQMJa0E5zaPSPUbE4GnV/iDa X-Received: by 2002:a17:902:a585:b0:14d:58ef:65 with SMTP id az5-20020a170902a58500b0014d58ef0065mr16504330plb.139.1652107487987; Mon, 09 May 2022 07:44:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1652107487; cv=none; d=google.com; s=arc-20160816; b=P7uI1s3gnx7sjzckSChkQpwYqhAa1rtcqksIXuz/oCislROobkHhwcKqelkkwOCU9l YpH3y24YGtNXDP/Q+yoEquJ7A2uc2g0Gv7j5f5KQWMYkHENLOjW+UfIDjpuBpTIXdFnC eFfMkCh7lZvfzWTxdkkXAid2n/SM4l066tZnU9tXKOFHSDpBWzaLIar02tsw+GEmsbPt 0pXROkjMm01nhWX2++2iEh2K3ESspvKQsXIS+KifdQ4oYywJA3EcGSndwBqpmuWUaZn+ dSaI6ngCh8EIeXaEQVKUBcTgBZyGdu6QfVrFXNegj6NGKDK/97HH1B9xfej/1e0UPpX4 q1ow== 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=PgVl7pP0trolMHysX4ROIarNKJ/fGTeb7H/fd3alLc0=; b=qIAUgpk0prnIat+cM+D7CWwW+PLCAdfK+wY6XnoBhphLjAgTJa/FfsZvdVr2Ekca1w KauruhYq5S5TPY/h3aE5ldQFYmJuQ8oKOU0n+JK/4j2x4qWpU9BJ+3YouG0R/mssnLGO IUc3mg72GXENGsCZfhxhY3By7GKFNKVPPIzyYRCRg8Y0EEL/MOqhjMMoFD9XWB8i8Os7 +kWXa+CR11dcMGGnc85G+CZN8qsvBJ2x6YI9DCv4+frEycpZt2J3H8P7dY0nARaOZs8y fNMCGhDhoerjuSuNkFGYcSTaAk+IxXfgXYuJhBwBa4832cEjEcN1CSreMeGTf/eVEP3M pYSQ== ARC-Authentication-Results: i=1; mx.google.com; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 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 lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id d22-20020a056a0024d600b00505fa50d8f0si15545498pfv.334.2022.05.09.07.44.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 May 2022 07:44:47 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 085F01BB10E; Mon, 9 May 2022 07:43:33 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237507AbiEIOrU (ORCPT + 99 others); Mon, 9 May 2022 10:47:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34164 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237194AbiEIOrS (ORCPT ); Mon, 9 May 2022 10:47:18 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id E10101B3B97; Mon, 9 May 2022 07:43:24 -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 B65B01480; Mon, 9 May 2022 07:43:24 -0700 (PDT) Received: from e121896.arm.com (unknown [10.57.4.213]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 65AD53F73D; Mon, 9 May 2022 07:43:21 -0700 (PDT) From: James Clark To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, broonie@kernel.org Cc: german.gomez@arm.com, James Clark , John Garry , Will Deacon , Mathieu Poirier , Leo Yan , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , linux-doc@vger.kernel.org Subject: [PATCH v1 0/6] perf: arm64: Support for Dwarf unwinding through SVE functions Date: Mon, 9 May 2022 15:42:48 +0100 Message-Id: <20220509144257.1623063-1-james.clark@arm.com> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RDNS_NONE, SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no 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 When SVE registers are pushed onto the stack the VG register is required to unwind because the stack offsets would vary by the SVE register width at the time when the sample was taken. The first two patches add support for sampling the VG register to the kernel and the docs. The remaining patches add the support to userspace perf. A small change is also required to libunwind or libdw depending on which unwinder is used, and these will be published later. Without these changes Perf continues to work with both libraries, although the VG register is still not used for unwinding. James Clark (6): perf: arm64: Add SVE vector granule register to user regs arm64/sve: Add Perf extensions documentation perf tools: arm64: Copy perf_regs.h from the kernel perf tools: Use dynamic register set for Dwarf unwind perf tools: arm64: Decouple Libunwind register names from Perf perf tools: arm64: Add support for VG register Documentation/arm64/sve.rst | 20 +++++ arch/arm64/include/uapi/asm/perf_regs.h | 7 +- arch/arm64/kernel/perf_regs.c | 30 +++++++- drivers/perf/arm_pmu.c | 2 +- tools/arch/arm64/include/uapi/asm/perf_regs.h | 7 +- tools/perf/arch/arm64/util/perf_regs.c | 34 +++++++++ tools/perf/arch/arm64/util/unwind-libunwind.c | 73 +------------------ tools/perf/util/evsel.c | 2 +- tools/perf/util/perf_regs.c | 2 + 9 files changed, 100 insertions(+), 77 deletions(-) -- 2.28.0