From mboxrd@z Thu Jan 1 00:00:00 1970 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3B9AEC76195 for ; Tue, 28 Mar 2023 01:41:15 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232224AbjC1BlO (ORCPT ); Mon, 27 Mar 2023 21:41:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41246 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229610AbjC1BlN (ORCPT ); Mon, 27 Mar 2023 21:41:13 -0400 Received: from mail-yw1-x114a.google.com (mail-yw1-x114a.google.com [IPv6:2607:f8b0:4864:20::114a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 50C141FF2 for ; Mon, 27 Mar 2023 18:41:11 -0700 (PDT) Received: by mail-yw1-x114a.google.com with SMTP id 00721157ae682-545d3b026a8so54951757b3.7 for ; Mon, 27 Mar 2023 18:41:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1679967670; h=to:from:subject:mime-version:message-id:date:from:to:cc:subject :date:message-id:reply-to; bh=aw1R5c6S7HXa58dwvgrpM64BjFXPZraFszzosCRiAqw=; b=c05M4jtyYHK6yLk4RsHmclGkBpHXTJCTSOHQgnFd/jLlrLXJn70Wc/z+eJRyffNCrA N3n/GOv9bI55P1E6QOhMYeMU+gDpRE4SIcTr9eakvsMbxc/82Tykd/zCNm8ajSQpaPPF E/13JdTBIR5GbPrxb1anVJJ9l331Vt9cRVb659lMyRuL6r2WT520cqszKKq4WHwF/+dj 7NcbBhmjQ3K7wVQhsAr5z77xSJAmuBXLG9XpMclkLJEsJADLPnZc22uGBbdL2mFbFSvd QL5L/TY3riSrbtW7LfJATj2tZPPsJrcGhBb8VX6/LF6hFAvEB7g607c36KgSfgGWkXL/ t4sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679967670; h=to:from:subject:mime-version:message-id:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=aw1R5c6S7HXa58dwvgrpM64BjFXPZraFszzosCRiAqw=; b=em7GQrAaGiSfdLSGORuOYqN5PotBkF6n2umk2WM7p8q/wDRLiH4yLczteLzqGzJp4r LEra74zXVzZnZuo3OEumIBdFBh/mAi61zjsCIS19hqwI9nzZzT1Xs1EX+pqQ3qsWJCBR mF9ZDp1OXgSBZfRwZoZwTozKXjsOWI9Rvxvr5puAVL8QJDGauFMD0ACECXbKxvJrExaF MPCGPh909CLhqLDJsi4H7g0eCCK+iIk4o2FJP4fA+ozVMO6sWld7k8tdnjaC78yJfFTk ekCd24DeUc6fOhiAVxCXXbiH5L78/eW0/q/zViQUfkfaIdv/kW9L0Jkj728QU2+6aLx8 YZdQ== X-Gm-Message-State: AAQBX9dFmMZ07ih7k1pfXBBDYge5GxwjFg/7dfPYqPO4Ek+wdoZpRsfN 8ITfDhc6eE/vADi9/M/VlfRIVtQtwjhl X-Google-Smtp-Source: AKy350Y0rOMqLtLagX9tq489iwyEP1VygEZbAsrGvCbDh8RQuFmfhf69wdPkH5xAnbrrYsIJRNwXl8RajUcD X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:a544:20a5:5228:d98f]) (user=irogers job=sendgmr) by 2002:a05:6902:70d:b0:b45:5cbe:48b3 with SMTP id k13-20020a056902070d00b00b455cbe48b3mr8845196ybt.0.1679967670518; Mon, 27 Mar 2023 18:41:10 -0700 (PDT) Date: Mon, 27 Mar 2023 18:40:52 -0700 Message-Id: <20230328014058.870413-1-irogers@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.40.0.348.gf938b09366-goog Subject: [PATCH v1 0/6] Simplify linking against tools/perf code From: Ian Rogers To: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Ian Rogers , Adrian Hunter , John Garry , Will Deacon , James Clark , Mike Leach , Leo Yan , Mathieu Poirier , Suzuki K Poulose , Kan Liang , Raul Silvera , Athira Rajeev , Ravi Bangoria , Florian Fischer , Rob Herring , Xing Zhengjun , Sean Christopherson , Chengdong Li , Denis Nikitin , "=?UTF-8?q?Martin=20Li=C5=A1ka?=" , linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, coresight@lists.linaro.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-perf-users@vger.kernel.org When fuzzing something like parse-events, having the main function in perf.c alongside global variables like input_name means that input_name must be redeclared with the fuzzer function's main. However, as the fuzzer is using the tools/perf code as a library this causes backward linking reference that the linker may warn about. Reorganize perf.c and perf.h to avoid potential backward references, or so that the declaration/definition locations are more consistent. Ian Rogers (6): perf ui: Move window resize signal functions perf usage: Move usage strings perf header: Move perf_version_string declaration perf version: Use regular verbose flag perf util: Move input_name to util perf util: Move perf_guest/host declarations tools/perf/builtin-annotate.c | 2 +- tools/perf/builtin-buildid-list.c | 2 +- tools/perf/builtin-c2c.c | 2 +- tools/perf/builtin-data.c | 2 +- tools/perf/builtin-diff.c | 2 +- tools/perf/builtin-evlist.c | 2 +- tools/perf/builtin-help.c | 1 + tools/perf/builtin-kmem.c | 2 +- tools/perf/builtin-kvm.c | 1 + tools/perf/builtin-kwork.c | 2 +- tools/perf/builtin-mem.c | 2 +- tools/perf/builtin-sched.c | 2 +- tools/perf/builtin-stat.c | 2 +- tools/perf/builtin-timechart.c | 2 +- tools/perf/builtin-version.c | 7 +++---- tools/perf/builtin.h | 3 --- tools/perf/perf.c | 27 +-------------------------- tools/perf/perf.h | 9 --------- tools/perf/ui/browsers/hists.c | 2 +- tools/perf/ui/hist.c | 2 +- tools/perf/ui/setup.c | 19 +++++++++++++++++++ tools/perf/ui/tui/setup.c | 1 - tools/perf/ui/ui.h | 3 +++ tools/perf/util/cs-etm.c | 1 + tools/perf/util/event.c | 2 +- tools/perf/util/evlist.c | 1 + tools/perf/util/header.h | 2 ++ tools/perf/util/parse-events.c | 2 +- tools/perf/util/session.c | 2 +- tools/perf/util/top.c | 2 +- tools/perf/util/usage.c | 6 ++++++ tools/perf/util/util.c | 2 ++ tools/perf/util/util.h | 8 ++++++++ 33 files changed, 66 insertions(+), 61 deletions(-) -- 2.40.0.348.gf938b09366-goog