Received: by 2002:ab2:604e:0:b0:1f4:60f3:cb4a with SMTP id a14csp11598lqm; Fri, 5 Apr 2024 07:26:59 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVI8DGpVxRYvHux1qnpghSBuAhcOWyc1w5P/DF3MZ48RFX/4jP2B/5iSY2EofSntUEDNg06Ppxyd6oSNQtEFQMzlXl7C4yK6bAQeCrXEQ== X-Google-Smtp-Source: AGHT+IE+6FmgEbo5QtY5CMiSu5jkqjT3fITd8cYIOz5sM2jhyw2GDOJ5w0oxuplp+g/YNLzpAp+l X-Received: by 2002:a17:902:f151:b0:1df:fd30:8b2d with SMTP id d17-20020a170902f15100b001dffd308b2dmr1092115plb.50.1712327219270; Fri, 05 Apr 2024 07:26:59 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1712327219; cv=pass; d=google.com; s=arc-20160816; b=VYXxz6Zoqx+E8sydhUfAnhZXmwK+d0EsqQIBQecW7mgxxKM2YwKaGqpLiZ4ArtuypO s7E7V8K0pgcUs9USDUDMWbP2nsYBf/KKWRN6zi+1UzAPxatt2KQ1jidZnKE6EfGKL1XD jDhzUn51FOoxx0qBpaCj8guaZFUYfixVzRsdi82MVY/IvU2fkySfgi9rq06OgKUZaT1t 6BO65kREJ+oo8wbd2twckblkZa8y9fvlxdlr2IvCDPsinf0JIStW37oDUiScd4j1rCL7 ViYGvW42QT8FkdiUKOQ1jSddKusH2bBAVHS7LmbUP8wG8djGCnSMU2zfV4j4GANyflFX tpww== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=d6uHe6VERz/bY8K2G97MuaHDAjuloqxu6LPRDVN1ZB8=; fh=9Zgtf/ZKslkPhT2lgmyxFxboPWW15gcwO5Ip91eUQfY=; b=HiHu30QYeuFD4U/bMni3M9vZFVdmnTT1Gs3IfP/ttQX6Dc5WQhXoO6wkesQfhfKMOJ cUTcLU8hKRfp9ZPHV9BDSxoMzRC0ZCZsxt6ACY0hFOF5FmRRWMDNocjEpijp68PiEBsg VVDcQz9aPB5IQXATnq5ewqmd6BUuH7w4T60IL5tzZmN9k7ao7jNka8MFLKx+ab+o+8wd KwlBieEMwbOTADOhELAU58nEsU+bOQtStPxxSgnk9W9MO96LNgIcrz+oKM/bcVAzQYv+ wn47Xab/ihTIsJnr7ifrpQ7upTPSbvE7DVpU53li040reXNR+499xqfJBfYfZeWfD7s4 Qg9w==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=GArRvp9X; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-133149-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-133149-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id y10-20020a17090322ca00b001e0f504a755si1454244plg.208.2024.04.05.07.26.58 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 05 Apr 2024 07:26:59 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-133149-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=GArRvp9X; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-133149-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-133149-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id BA1872841DF for ; Fri, 5 Apr 2024 14:26:58 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 1B04616EC1E; Fri, 5 Apr 2024 14:26:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="GArRvp9X" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 41FA716EC01; Fri, 5 Apr 2024 14:26:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712327204; cv=none; b=Hzm4Rtpo+Pqn+vthtxYZMFSos2uxwplh6Jb2YXT/VCA3b6P2FOell1N0g2rl2adPbVTtXDPCCUAGUTp5a1leP/JwGza50PriTWWkAJV0F4rHDn25xFiEW48evuoyWTLnpMabhBLG5UEmzKtKb+LpUVA8JbjhZb7ZG7L7ec+NM7Q= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1712327204; c=relaxed/simple; bh=4gI3JY/aS1qAjeKrQZ38gb5dce7Uv7MoJZjqtRTJfZU=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=MaJDYxf9wmREPP6KfG511OH9LHaAu+SdGSLoDvpvyPDh7Io3+CD7ySq/7O/AKjeRUNed/K5tnrETvFy1JhfyOWu+13Ji++FUchqdLIcaDxyNk6lgh1Fjs2zUXsdDYxxhylpUt7t0p+um91LUTxbaCySOgTgon2vfl0EGFD5MhVw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=GArRvp9X; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id A7AB3C433C7; Fri, 5 Apr 2024 14:26:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1712327203; bh=4gI3JY/aS1qAjeKrQZ38gb5dce7Uv7MoJZjqtRTJfZU=; h=From:To:Cc:Subject:Date:From; b=GArRvp9X47B5AB5J6I9p6riAu39YnE9MM5h4dyylwkf7e15QcZLFCyHlQRNBISuBt XamNQYOH6S1iUSGbllnKoEkdcqynh1bUoUYd0hXRnUiY3ybgW5OIF5Aj01XHaCKC6a qT++ZieI8cf4sLg5VaygYGfM58s2KEUf269XTxLCaKmQtxQ8CJj6uTmDQND954vM9J bdZcQSy82NRuI8qM/csPXFrVyLfzGOsM75nd36huucxsMZm9wHl1LBj4YbEbr9wpzp NtWUPBHogG/PTtoopIPUXXHeJXHSh/CSL1BBgAldrwOcZZOoU716KwlvMy9toXWPau wxr9fVMI8A7Yw== From: Arnd Bergmann To: Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Yonghong Song , John Fastabend Cc: Arnd Bergmann , Martin KaFai Lau , Eduard Zingerman , Song Liu , KP Singh , Shung-Hsi Yu , Kumar Kartikeya Dwivedi , Dave Marchevsky , bpf@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] bpf: fix perf_snapshot_branch_stack link failure Date: Fri, 5 Apr 2024 16:26:25 +0200 Message-Id: <20240405142637.577046-1-arnd@kernel.org> X-Mailer: git-send-email 2.39.2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Arnd Bergmann The newly added code to handle bpf_get_branch_snapshot fails to link when CONFIG_PERF_EVENTS is disabled: aarch64-linux-ld: kernel/bpf/verifier.o: in function `do_misc_fixups': verifier.c:(.text+0x1090c): undefined reference to `__SCK__perf_snapshot_branch_stack' Add a build-time check for that Kconfig symbol around the code to remove the link time dependency. Fixes: 314a53623cd4 ("bpf: inline bpf_get_branch_snapshot() helper") Signed-off-by: Arnd Bergmann --- kernel/bpf/verifier.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c index aca00ba61232..b34cdeff415e 100644 --- a/kernel/bpf/verifier.c +++ b/kernel/bpf/verifier.c @@ -20192,7 +20192,8 @@ static int do_misc_fixups(struct bpf_verifier_env *env) } /* Implement bpf_get_branch_snapshot inline. */ - if (prog->jit_requested && BITS_PER_LONG == 64 && + if (IS_ENABLED(CONFIG_PERF_EVENTS) && + prog->jit_requested && BITS_PER_LONG == 64 && insn->imm == BPF_FUNC_get_branch_snapshot) { /* We are dealing with the following func protos: * u64 bpf_get_branch_snapshot(void *buf, u32 size, u64 flags); -- 2.39.2