From patchwork Thu Oct 17 00:13:43 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ian Rogers X-Patchwork-Id: 13839129 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BA67BD2F7D8 for ; Thu, 17 Oct 2024 00:29:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:To:From:Subject:Mime-Version:Message-Id :Date:Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=LLI8QllYe9BKYk19JJibeLxF+V+GikF4eQlo99GeeDo=; b=K87mKxy2I/bOMw DqQSuHbSrsHGqgHDJ5UifO414RwLXNtT15UZHPFBTu7OrsIkaeZbkgAKbn/DVbU9nCRB+RIbmd8jM n0F5v36uGhuU3Jq0HKAnWA+LLM2rZixidOHwxlA3ikjjsOuZgbRaPBseKi2k20eIKnRl4J1WniSER 5l1MvIMmdTKBgOvDN0RQK6TneuGrpJH1aMVtIPvVERn/RnbdJLDsYX88L0lkpttTa0/fN4+66qZi4 x0LFzKkTcQRs/VnjkFjiTcq6zcOGuZWQBQYsnSkgIYwFv6z81PhMeowuC4iDQgKgexpkp60IZ39Jk /gapN3Utd1qBux0UAHKw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1t1EOX-0000000DLDM-2uZm; Thu, 17 Oct 2024 00:29:37 +0000 Received: from mail-yb1-xb49.google.com ([2607:f8b0:4864:20::b49]) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1t1E9V-0000000DI8w-0kP3 for linux-riscv@lists.infradead.org; Thu, 17 Oct 2024 00:14:06 +0000 Received: by mail-yb1-xb49.google.com with SMTP id 3f1490d57ef6-e2974759f5fso511892276.0 for ; Wed, 16 Oct 2024 17:14:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1729124043; x=1729728843; darn=lists.infradead.org; h=to:from:subject:mime-version:message-id:date:from:to:cc:subject :date:message-id:reply-to; bh=EiSvPeoRUp8BxyR9oFd1+sHW5VYvYw8ni5QPRWGYfRA=; b=hn0he7JzRcJUolx7Lr00N+dUaOg3eMqkGTCdS0P8E6a4sXdumKjafwheUHfpVWCDfP Zp06fC7gBK7V0oDDqqy5fGg0GqbL9kglOYmBoJfrZD/q2NPB5KAj4Pm+wgilpwZIDj6G syVZ1ThwwoRadtxjkpy4FLNYkQcH63/ETiuBVf9n+Ltr3yH+3TDyq2kCX7pGTCOxYF1f B0AgCL1swnrSo5tTxkYUsPFr8OG8cdVBKcEDCoJ5TMw3ILi7tRz1brBIkp+eKQm19/bZ aNSKIxElV/QgYgPtNyBYlXR+wBYX7j+MQFUpFk0rMbreZfZ6guRVx3T+wk+NgtSy0o2a 380Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729124043; x=1729728843; h=to:from:subject:mime-version:message-id:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=EiSvPeoRUp8BxyR9oFd1+sHW5VYvYw8ni5QPRWGYfRA=; b=kSAiuKeNbde/BLu7t5CxAPLeH/xHUlNffeMnJPVHGp9ddml70dWn8QCONqYgyvhzvg 9cqHW7umvzEAFJr+G4oRhxIt4HxeL27AEejkhzYbFe/Zwq8BnIJ4xVbEObtJpLUySKd7 5GG/o2QHG/zGdv2ffTZByN8lZkaaxcEqW5nYm9wGc3E9i2uWb177j2IYQgenfL18ZqmH svzbTtzG5NgyrGSJuxDrha5lvl2gpPICv1PVNtKBOVZKZevfhnD8swodHYYMTAzIDYuo e4LTPZlnwYYvqXCLCdDLKyAvNNsP4TA2r7K5j1wmNHTmVsDObsjygVISuJOp85NtC9cs 6bfA== X-Forwarded-Encrypted: i=1; AJvYcCXBxjHUhsiq4UZ+7gTk+1ihce8mz6JPkPYEgih9vD/zabpWsuHQJM0MeF3QWNvVqNn3z7KKty4lXnXrtg==@lists.infradead.org X-Gm-Message-State: AOJu0YxmCbNVlhIqXemABeINLl/BdN8iXbmLlU7f8J98rqhl5wCKmjjV W191tPEncScnOvu3+noi0p0Y390yqi5RarHN3LETXxC9QcBELuHH5RV/einbgoVsRjOr8ePM8Id 5tdV/HQ== X-Google-Smtp-Source: AGHT+IGWAA1ezUi0zImlaYNN3LkMp/FqrMVYh+LBbCtzIRBEEa/71ZWVK8WYNSeDn0R7vnfNGuT6qxuKOTd6 X-Received: from irogers.svl.corp.google.com ([2620:15c:2c5:11:a00a:f237:9bc0:79c]) (user=irogers job=sendgmr) by 2002:a25:664c:0:b0:e29:7454:e773 with SMTP id 3f1490d57ef6-e2b9d02921cmr1374276.5.1729124043150; Wed, 16 Oct 2024 17:14:03 -0700 (PDT) Date: Wed, 16 Oct 2024 17:13:43 -0700 Message-Id: <20241017001354.56973-1-irogers@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.47.0.105.g07ac214952-goog Subject: [PATCH v3 00/11] Libdw/dwarf build clean up From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Jiri Olsa , Ian Rogers , Adrian Hunter , Kan Liang , John Garry , Will Deacon , James Clark , Mike Leach , Leo Yan , Guo Ren , Paul Walmsley , Palmer Dabbelt , Albert Ou , Nick Terrell , "Masami Hiramatsu (Google)" , Changbin Du , Guilherme Amadio , Yang Jihong , Aditya Gupta , Athira Rajeev , Masahiro Yamada , Bibo Mao , Huacai Chen , Kajol Jain , Atish Patra , Shenlin Liang , Anup Patel , Oliver Upton , "Steinar H. Gunderson" , "Dr. David Alan Gilbert" , Chen Pei , Dima Kogan , Przemek Kitszel , "David S. Miller" , Alexander Lobakin , linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org, linux-riscv@lists.infradead.org X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241016_171405_232675_535089A6 X-CRM114-Status: GOOD ( 17.46 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org These patches were originally on top of: https://lore.kernel.org/lkml/20240924003720.617258-1-irogers@google.com/ where it was pointed out that a lot of the libdw conditional compilation was due to features that have now been standard for 10 or 15 years. The patches remove the conditional compilation assuming the features are in libdw where the feature test is expanded to check there pressence. The patch series is now on top of: https://lore.kernel.org/lkml/20241016235622.52166-1-irogers@google.com/ In the Makefile code, and for `perf record --call-graph`, dwarf tends to mean unwind or libdw support for dwarf things. To make it clearer when dwarf really just means libdw numerous build variables and defines are renamed. There is some tech debt in the changes as perf check still reports the values using the old name and for features that are no longer tested. This can be cleanup for another day. v3: Move PERF_HAVE_DWARF_REGS cleanup to follow up patch series. Add build fix from patch series these changes are on top of. v2: Instead of renaming PERF_HAVE_DWARF_REGS to PERF_HAVE_LIBDW_REGS, remove it. Ian Rogers (11): perf build: Fix LIBDW_DIR perf build: Rename NO_DWARF to NO_LIBDW perf build: Remove defined but never used variable perf build: Rename test-dwarf to test-libdw perf build: Combine libdw-dwarf-unwind into libdw feature tests perf build: Combine test-dwarf-getlocations into test-libdw perf build: Combine test-dwarf-getcfi into test-libdw perf probe: Move elfutils support check to libdw check perf libdw: Remove unnecessary defines perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT perf build: Rename CONFIG_DWARF to CONFIG_LIBDW tools/build/Makefile.feature | 11 +--- tools/build/feature/Makefile | 24 ++------ tools/build/feature/test-all.c | 16 +----- tools/build/feature/test-dwarf.c | 11 ---- tools/build/feature/test-dwarf_getcfi.c | 9 --- tools/build/feature/test-dwarf_getlocations.c | 13 ----- tools/build/feature/test-libdw-dwarf-unwind.c | 14 ----- tools/build/feature/test-libdw.c | 56 +++++++++++++++++++ tools/perf/Documentation/perf-check.txt | 6 +- tools/perf/Makefile.config | 47 +++++----------- tools/perf/Makefile.perf | 2 +- tools/perf/arch/arm/Makefile | 2 +- tools/perf/arch/arm/util/Build | 2 +- tools/perf/arch/arm64/Makefile | 2 +- tools/perf/arch/arm64/util/Build | 2 +- tools/perf/arch/csky/Makefile | 2 +- tools/perf/arch/csky/util/Build | 2 +- tools/perf/arch/loongarch/Makefile | 2 +- tools/perf/arch/loongarch/util/Build | 2 +- tools/perf/arch/mips/Makefile | 2 +- tools/perf/arch/mips/util/Build | 2 +- tools/perf/arch/powerpc/Makefile | 2 +- .../perf/arch/powerpc/annotate/instructions.c | 4 +- tools/perf/arch/powerpc/util/Build | 4 +- tools/perf/arch/riscv/Makefile | 2 +- tools/perf/arch/riscv/util/Build | 2 +- tools/perf/arch/s390/Makefile | 2 +- tools/perf/arch/s390/util/Build | 2 +- tools/perf/arch/sh/Makefile | 2 +- tools/perf/arch/sh/util/Build | 2 +- tools/perf/arch/sparc/Makefile | 2 +- tools/perf/arch/sparc/util/Build | 2 +- tools/perf/arch/x86/Makefile | 2 +- tools/perf/arch/x86/annotate/instructions.c | 2 +- tools/perf/arch/x86/util/Build | 2 +- tools/perf/arch/xtensa/Makefile | 2 +- tools/perf/arch/xtensa/util/Build | 2 +- tools/perf/builtin-annotate.c | 2 +- tools/perf/builtin-check.c | 6 +- tools/perf/builtin-probe.c | 14 ++--- tools/perf/builtin-report.c | 4 +- tools/perf/util/Build | 12 ++-- tools/perf/util/annotate-data.h | 8 +-- tools/perf/util/debuginfo.h | 6 +- tools/perf/util/disasm.c | 4 +- tools/perf/util/disasm.h | 4 +- tools/perf/util/dwarf-aux.c | 6 -- tools/perf/util/dwarf-aux.h | 54 ------------------ tools/perf/util/genelf.c | 4 +- tools/perf/util/genelf.h | 2 +- tools/perf/util/include/dwarf-regs.h | 6 +- tools/perf/util/probe-event.c | 4 +- tools/perf/util/probe-finder.c | 6 -- tools/perf/util/probe-finder.h | 6 +- 54 files changed, 154 insertions(+), 259 deletions(-) delete mode 100644 tools/build/feature/test-dwarf.c delete mode 100644 tools/build/feature/test-dwarf_getcfi.c delete mode 100644 tools/build/feature/test-dwarf_getlocations.c delete mode 100644 tools/build/feature/test-libdw-dwarf-unwind.c create mode 100644 tools/build/feature/test-libdw.c