From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dl1-f74.google.com (mail-dl1-f74.google.com [74.125.82.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2AA453BF68F for ; Tue, 12 May 2026 05:36:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.74 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778564170; cv=none; b=WCC296SK19tCEcb60niiiLeOjLMXlYmwCbI9L921RrSU13zyI7yYbZePISRgMONzi9wsir3IaeGwaSIJP1LMxLB/mSpQhtKmcFQZw4dcfG9mFjfVPHpjvNrSZbfESq3fdYGlS9GaN/NwLmovPRj+QlTQ2DOYPlTaKWYBD7BT1xI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778564170; c=relaxed/simple; bh=75eKE+tJFe0OAfOA1qho8SQB/O8Uy2A/+7SXYIEKmzA=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=NzugR4/vZZlN3i3dY9fo1/5fa0hulOJqZ/Wr5ZmACQgpe4DwsqetLpLigczvFCOx/+cHU5AzPsHfIiGlLI77RhP/LpJwI+p0Rm6oiGbGcHXP5PoMd9vwi/kL9QuNHm2RBdRndiDyCq8rtDw/sLjkBOU51bRKb9jm2j/Btr/CdWE= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=BuCwMr77; arc=none smtp.client-ip=74.125.82.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--irogers.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="BuCwMr77" Received: by mail-dl1-f74.google.com with SMTP id a92af1059eb24-13312be8a31so6429175c88.1 for ; Mon, 11 May 2026 22:36:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1778564164; x=1779168964; darn=vger.kernel.org; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Zvl3sORFLrEwbrjqVU+zw5LLtprwRT4ak9UnaDwB2ig=; b=BuCwMr77ZtTtEt7kHXYZ2lrtul6Cx4Of2QoE8KTGTdHeo/3USz3smQRAfXNVeoJ0Kq ADEpWPQH7oGjuSxknNa4wNMF1TWIiw5BtcjYqBccOBaDkmlJCn30ajXs6hqcXws9V580 108aeSmh8c7wj/upjv+lr960X8HS83U812QuQjg3U3+KfvdmVZefRe59TbSpAZNiOk4X 0EN5OzobYJNoQZpiip5Tlbv6RPt0x8hceE33P5Qak2J6CwY6xfUvWTHmb0ZyO/ti6uM+ zPTXHkeMpTK2Y5+JQLBzdlut1Ul2rt/9GFZqXq/qTj5ZNQo4sBvOpC5RtERGeMxyXfOl caEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778564164; x=1779168964; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Zvl3sORFLrEwbrjqVU+zw5LLtprwRT4ak9UnaDwB2ig=; b=Dqh8DSnm/qqxdtZDEt3XoMnmW999jkuDkqNnau3GzTdlyCEho73qjZzYgTFgo0D42j 0FCIburmY8hKUItwGxIksDx5tnI5Dx2fGp0mVNVN5G3g1inkxGpqtzlM8pbk3U72egIe +I81wcaO8odbSpZU449M+cEJH2Kaecon3SS1inPwGLEpG8czG0NSHkd9KZl49B5H74AN /1pz2+wBYBUutscPz/ryEz6oHR2vvvHsAYPE62LnDrswsbztRPxcoCPyKT/bOQlcSrcC f46DuJS6l0vGgxhvVON4ZvOb/UlBqDl6tjaZQb1kOE0idoo4e/LhBJMEH4iG0pqwgM3l h7nA== X-Forwarded-Encrypted: i=1; AFNElJ8KTC02lKot2TNE8YRP3hnRWHOIae3t2kCKg08y/d7QHrtYFEmS78f1xTyUon/83ByXgpESojoDX8M1DW4=@vger.kernel.org X-Gm-Message-State: AOJu0YwwETSCGxiQXbxHNjXnV/IpvRZE4g857L31qtWpDQIIqCVvQ8yw 46yYbmPwOXfR31JYBf+E7R3Y/8NxxzxTfCS1cVBHugo4Kc23/SbTpEL9ll/QK/ZCEb0biVAp7MR 7yL/gnuYQtw== X-Received: from dybgn40.prod.google.com ([2002:a05:7301:2528:b0:2d1:6536:ac8a]) (user=irogers job=prod-delivery.src-stubby-dispatcher) by 2002:a05:7022:fb0c:b0:12d:ca31:f19d with SMTP id a92af1059eb24-13271b86630mr9447493c88.28.1778564164216; Mon, 11 May 2026 22:36:04 -0700 (PDT) Date: Mon, 11 May 2026 22:35:32 -0700 In-Reply-To: <20260512053539.3410189-1-irogers@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20260512053539.3410189-1-irogers@google.com> X-Mailer: git-send-email 2.54.0.563.g4f69b47b94-goog Message-ID: <20260512053539.3410189-8-irogers@google.com> Subject: [PATCH v1 07/14] perf build: Move static libbpf dependency out of prepare step From: Ian Rogers To: Quentin Monnet , Daniel Borkmann , Andrii Nakryiko , Martin KaFai Lau , Eduard Zingerman , Kumar Kartikeya Dwivedi , Song Liu , Yonghong Song , Jiri Olsa , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Adrian Hunter , James Clark , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Nick Terrell , David Sterba , Nathan Chancellor , Tomas Glozar , Dmitrii Dolgov <9erthalion6@gmail.com>, Costa Shulyupin , Alexandre Chartre , Yuzhuo Jing , Leo Yan , Ankur Arora , Markus Mayer , Collin Funk , Howard Chu , Dapeng Mi , Swapnil Sapkal , Thomas Falcon , Ricky Ringler , linux-kernel@vger.kernel.org, bpf@vger.kernel.org, linux-perf-users@vger.kernel.org Cc: Ian Rogers Content-Type: text/plain; charset="UTF-8" The prepare step is a large serialization point before parallel sub-makes build the perf tool. The libbpf headers are used in the bench and util libraries, as well as individual perf builtin commands. Move the libbpf dependency out of the prepare step and into the dependencies for those targets to avoid it being a source of serialization in the prepare step. Assisted-by: Gemini:gemini-3.1-pro-preview Signed-off-by: Ian Rogers --- tools/perf/Makefile.perf | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf index ec0e91bedce1..5af767415c11 100644 --- a/tools/perf/Makefile.perf +++ b/tools/perf/Makefile.perf @@ -547,7 +547,7 @@ export NO_JEVENTS build := -f $(srctree)/tools/build/Makefile.build dir=. obj -$(PERF_IN): prepare FORCE +$(PERF_IN): prepare $(LIBBPF) FORCE $(Q)$(MAKE) $(build)=perf $(LIBPMU_EVENTS_IN): FORCE $(LIBPERF) @@ -558,7 +558,7 @@ $(LIBPMU_EVENTS): $(LIBPMU_EVENTS_IN) # The $(LIBPERF_UTIL) dependency is to ensure bpftool and vmlinux.h # aren't racily built for bench/bpf_skel/bench_uprobe.bpf.c -$(LIBPERF_BENCH_IN): FORCE prepare | $(LIBPERF_UTIL) +$(LIBPERF_BENCH_IN): FORCE prepare $(LIBBPF) | $(LIBPERF_UTIL) $(Q)$(MAKE) $(build)=perf-bench $(LIBPERF_BENCH): $(LIBPERF_BENCH_IN) @@ -576,7 +576,7 @@ $(LIBPERF_UI_IN): FORCE prepare $(LIBPERF_UI): $(LIBPERF_UI_IN) $(QUIET_AR)$(RM) $@ && $(AR) rcs $@ $< -$(LIBPERF_UTIL_IN): FORCE prepare +$(LIBPERF_UTIL_IN): FORCE prepare $(LIBBPF) $(Q)$(MAKE) $(build)=perf-util $(LIBPERF_UTIL): $(LIBPERF_UTIL_IN) @@ -636,10 +636,6 @@ prepare: $(OUTPUT)PERF-VERSION-FILE \ $(LIBSUBCMD) \ $(LIBSYMBOL) -ifdef LIBBPF_STATIC -prepare: $(LIBBPF) -endif - $(OUTPUT)%.o: %.c prepare FORCE $(Q)$(MAKE) -f $(srctree)/tools/build/Makefile.build dir=$(build-dir) $@ -- 2.54.0.563.g4f69b47b94-goog