From nobody Tue Apr 14 13:59:23 2026 Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) (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 2BA3636309F for ; Tue, 14 Apr 2026 07:13:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.170 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776150807; cv=none; b=Re/eNdNFFCYgtcqXJHKGNySU8wi8Gs53mx5YrMDV4DYUBhtZx3r3Qsj3daIqEZvMJHYRWa1WwNZ2DphEccikpaeNU4l8kJVdSJAuJSZX/eqmegaMmy0W2wK5SrSF1syECSlE76mV9dLi626vGyh7EKN6f5f+5xpUGWsf4pK7a4Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776150807; c=relaxed/simple; bh=RrspV2M3q1YMPaUF6NAuszBGY+gIKbsLaOiFuToNw3Y=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=lyEaBTE9bRaOAzSUHDoDVkB9Ti4u2D6Nel+kx3COvKK0S0BN0Avrz7ZBW0HW7IIYbGcuErIDX5v0uvOJNqBNwPW5GHiU+ORLKVFrPLa1xXlZpqPTFFyrSvlQZ8lC0+dLYb46C4W30p180nxGoZZ66IE/uHmzNZoXkwJSvOLyFNs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ltlS0kZT; arc=none smtp.client-ip=209.85.210.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ltlS0kZT" Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-82f33d28c1dso1198786b3a.3 for ; Tue, 14 Apr 2026 00:13:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776150805; x=1776755605; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=3ZR5ZSEZp74pl3SVnEkbEOwwj/yRKz7BitznZw1sh5s=; b=ltlS0kZTR9RXOmax5ag2pon1pcI6NpXbpv58fJCWq26yTqXvNkagRRqZ7VGt7iRnSd dGdUzMG/hihbx71ZdHfU65oTnKjRwM5GNOQwHQQXltvpHcbkZEhFkTq+KnH8WCVDf0le w9dFLF7QTbvt1js9BSVvsyGQA/LoOliuBwRMzHFmpH3Vv9Ia1HjwOTHEl21ZCUE5ejdw RZoZAHAZ4Y/JCg2ZVeNtJ4MAgYocoo/CGijc0AlcMeI7JQegIwI1M/LCGBHYjXVHHPJ5 BDDpES9RP/1AcBOjv1rkRLvJSP7efo3RNJFnRAlPvtUZhd8qpXSszjZ1vRLMyk6XdGjp M6Xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776150805; x=1776755605; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=3ZR5ZSEZp74pl3SVnEkbEOwwj/yRKz7BitznZw1sh5s=; b=RbGnvvZ/PO8HF0nZFeqZLkjsjcuIHz5JqBhyHx7aNODJoX41z7corQZRsf6puxiuur XoQ4cGlpojcDe9Er4wDh8JvLbKjXmpcB9BJZ1OL0FpKnL4aDsIJdVFMsAIvl2b+YweLZ UOajEddiNtYwH5ZenCD2xsXGWCXT42OQWnxNyWNo6WS0Cpsf0JSMNj7P+DzLyBexaRW9 Vi+6rA2lLB7QiXpScZGGXv684USmuGSj+joEBG6OO4i1U7+bt/HwAOceHriEZFQj3kAX V+rkVS6NSMbYowlIAIA2N8VMO0nSnwtsuPeOEShv8GrqD3LK/vn2VDEI9fDRQes/s6Af 66yw== X-Forwarded-Encrypted: i=1; AFNElJ8JSVTL5On4iTkTXZVfEuX5ebuX8asAl82Qol4b9rGf1zjegCXcTOLMk/oFKJtpCCfIIsiC9VimWc5rdrA=@vger.kernel.org X-Gm-Message-State: AOJu0Yy0sgozQzQ2zh/goCEOMhKbCe+D24t4qjC8mg/JzlTQTGaq29v9 HcP7q2IiHT37iHhQA1nBYKAbm34j+X+WCRijZfYQ7lC62yZB6MWqCVTZ X-Gm-Gg: AeBDievHFfCzf6TGJz9WuBGIlJJ1gMbXdqisoVqheNhyUjrCWuGoqALxGkZiUDulg8h g4OBLHmXZK5cWe3J3Locjy9IDFgycLww22hIqdJimgsyDOKFSaOegTHYoGAlIHkikWjqeU79vK4 Pub+b/AUT9QcLF3EwnsIXq7hpEYv0D9SmjGlHQ4jTaA+tCnLvfF5FPJNwMvn7TKX2670Qgh30I+ NSBLUm7KKU/HOpyzsp80HyH7AxlFuJhjKYxawkPenrmK5SfrnqXtAuf4gRiZGsIG+/f7nTNQ7py 8KMlWWLLAK6m+XOzhHcGG2EuXTnsMQbgxVb6h63gVkDdXdhLlSwRhE2tyIT8zDUtPhuw9zgIBWA AvYuDL0lR+bfbmKTy899/9dry4LYlML5ZIoRYj3OAVXlt1EzIY7mayoryyYFo1NLTSNgCXrPeuR dtIoVZ3KgIzWsMRpXdVFlwui1X5Yau4AfAgVT8uZ5x9QW+Zd43h5fXp2I28Uujr92kDI0HyRNts 0BuIqSiYqJYDJEYcBwiQ+zb0PcePA== X-Received: by 2002:a05:6a00:140f:b0:82c:dd31:b844 with SMTP id d2e1a72fcca58-82f0c316a23mr16607277b3a.40.1776150805492; Tue, 14 Apr 2026 00:13:25 -0700 (PDT) Received: from localhost.localdomain ([2601:600:8d02:27d0:15f3:5e9a:ad7d:22d1]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-82f0c506150sm13172519b3a.52.2026.04.14.00.13.24 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 14 Apr 2026 00:13:25 -0700 (PDT) From: Gaurav Sharma X-Google-Original-From: Gaurav Sharma To: linux-perf-users@vger.kernel.org Cc: acme@kernel.org, namhyung@kernel.org, irogers@google.com, stable@vger.kernel.org, linux-kernel@vger.kernel.org, Gaurav Sharma Subject: [PATCH] libperf: fix parallel build race with header install Date: Tue, 14 Apr 2026 00:12:42 -0700 Message-ID: <20260414071242.95637-1-mgsharm@amazon.com> X-Mailer: git-send-email 2.50.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" When perf is built with high parallelism (-j128), there is a race condition between the install_headers and libperf.a targets in the libperf sub-build. Both are invoked as targets of a single make invocation from Makefile.perf: $(MAKE) -C $(LIBPERF_DIR) ... $@ install_headers The perf tool's exported CFLAGS includes -I$(LIBPERF_OUTPUT)/include which points to the header install destination. The coreutils install command creates the destination file (truncated) before writing content. If the compiler runs between file creation and content write, it includes an empty header, causing incomplete type and missing prototype errors in the libperf source files. Fix this by making the libperf compilation target depend on install_headers, ensuring all headers are fully installed before any source files are compiled. Fixes: 91009a3a9913 ("perf build: Install libperf locally when building") Cc: stable@vger.kernel.org Signed-off-by: Gaurav Sharma --- tools/lib/perf/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/lib/perf/Makefile b/tools/lib/perf/Makefile index 32301a1d8f0c..8372cd9919b7 100644 --- a/tools/lib/perf/Makefile +++ b/tools/lib/perf/Makefile @@ -99,7 +99,7 @@ $(LIBAPI)-clean: $(call QUIET_CLEAN, libapi) $(Q)$(MAKE) -C $(LIB_DIR) O=3D$(OUTPUT) clean >/dev/null =20 -$(LIBPERF_IN): FORCE +$(LIBPERF_IN): install_headers FORCE $(Q)$(MAKE) $(build)=3Dlibperf =20 $(LIBPERF_A): $(LIBPERF_IN) --=20 2.50.1 (Apple Git-155)