From patchwork Fri Jul 31 23:08:05 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kees Cook X-Patchwork-Id: 11695579 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 42DD1138A for ; Fri, 31 Jul 2020 23:12:46 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id BEA9A206DA for ; Fri, 31 Jul 2020 23:12:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="kebPjqPu"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="EZmZ49NG"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="HwWUijwC" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BEA9A206DA Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=/SLaIhFf0AHGUBrckyHsNCxWBb1e17egVLN5P8Gxbqg=; b=kebPjqPuy4jEmoluu+ZmGtXOC DJiKvqHkmbSY3aCXi6j8+mejGpBIK7UCuMSnlol+Lcs6g42n2/764KQWwiB4dvGpdrGIM+E8+hlNE QWE/ig18Epdg6FKUKyjr5FMn8thVdsfCxjkEpvQ/J/p+c4747pLeTvSj6HAqX+za2FGpIQ9T1+kwR 3Qb3qyLBE4UUxcLfMShhsY6piyqtJdJmZOLSwIbrt3n3lLVTdZRJt2Yg79tYy8y0TqRpfaydNRjnY ckkeyRLpQl3zC1OSAh3o+oTNxGmo2xXWBHhO/ggo346ymAxdN5KH4eZzT1ZAGFysvD52apP9kyUU0 hOD2BHS0A==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1k1eCR-0001Gp-3f; Fri, 31 Jul 2020 23:12:27 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k1e97-0008HI-MI for linux-arm-kernel@merlin.infradead.org; Fri, 31 Jul 2020 23:09:01 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To: Content-Type:Content-ID:Content-Description; bh=gw0qFrlLAeGFNQICDxZAEcvNQljVuXBAcUPpDFT6mlY=; b=EZmZ49NGJ1sm+s/3mNm2p2IsCR iGXtvQf+ayk3xFG0gU+IPJRd9DRxbkOzh71kndjgQOM8sg8eH8Ok1axGMSpSMv29lj2e/kCpIVAW+ oJ4DgAeFnuKPFbTqZXfbq0TFSe+uieZnfTSIvJXzFgYkOopRzt5sN3XZtdvnRwzhBs2Qx6OfieaQW kTEkSJI34FvpedC+ZRre6tcjLJjhSLz7z+x327SRcxI5bnJMFx9lMWHZwktH/RudZK9+E+F+O4flr EMf0tJKZLhdKmj71V15BgfbFTmdpqvjwO9Kf4e/tD/0QwVn3EMQSM38GTzAxDjR16J0td+IBTeSRJ CDvvQmJA==; Received: from mail-pj1-x1043.google.com ([2607:f8b0:4864:20::1043]) by casper.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1k1e8t-0000ZL-Pw for linux-arm-kernel@lists.infradead.org; Fri, 31 Jul 2020 23:09:00 +0000 Received: by mail-pj1-x1043.google.com with SMTP id c6so8077985pje.1 for ; Fri, 31 Jul 2020 16:08:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gw0qFrlLAeGFNQICDxZAEcvNQljVuXBAcUPpDFT6mlY=; b=HwWUijwCN1yHVvMTBcWpAPeJzy4e7bIML4GGEjnycX031r9VYKdxWVfS6nNaj90cTh WCgBr3fpJFTJ9DUUwuFweceKIqpoU17PdRLq9usS711E+wIEnR2UVx9rK2Jqm12MH2Ly leK+goXQHjXkoEk8FTiq2zz0QFdbtKl/unv3M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gw0qFrlLAeGFNQICDxZAEcvNQljVuXBAcUPpDFT6mlY=; b=fE9D5Dvnl8XQr698KuykBR/SBK3D6DK8uKEFfJggn1rDSHMRPLnXG+K9Ak3slbzFel 6YqiAP93h28e2Thd2cX/4vUS7KYvIPUHFkJiKVoBKfPw+vw+bTuSVPWXQZny2Hnmn4Uj JeMGGadS3r0DVLyE9DGyT/G7sTgSOGYrnDfOVQT0MOoZB6CLIFGSmOOfHrxUSwQd2dBt CcdjJ6hgFG+EsaR7mbuoVndogav15whSCBihJx7eFS4EgbqD3nc00EY7NBXmG+Z0HUMC DYLCqUiQwEO8zlz1jSqQXI9aLmKpYCG4fBF7U9Gy38eAvJ7agrtA7Jz6Kwq9gwlBELnn 98SQ== X-Gm-Message-State: AOAM532k5/nJVV/ZzJ9BOVqoW1nJzoKU12mIQK3JGxTQLc+GLEvdrLRt 8sY5Lbkz9tpkTRmB328l44u/1Q== X-Google-Smtp-Source: ABdhPJz6/VTMQ01SrfhMQ/SLXbQUnTuGTkQpv8usqAy0lJH0IrS74Nhjz+iAd2EIkwdY4wSBBsMY5A== X-Received: by 2002:a17:90a:5d15:: with SMTP id s21mr6354051pji.154.1596236925542; Fri, 31 Jul 2020 16:08:45 -0700 (PDT) Received: from www.outflux.net (smtp.outflux.net. [198.145.64.163]) by smtp.gmail.com with ESMTPSA id j20sm3120709pjy.51.2020.07.31.16.08.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 31 Jul 2020 16:08:44 -0700 (PDT) From: Kees Cook To: Thomas Gleixner , Will Deacon Subject: [PATCH v5 21/36] arm64/build: Warn on orphan section placement Date: Fri, 31 Jul 2020 16:08:05 -0700 Message-Id: <20200731230820.1742553-22-keescook@chromium.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200731230820.1742553-1-keescook@chromium.org> References: <20200731230820.1742553-1-keescook@chromium.org> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200801_000848_633026_25B806ED X-CRM114-Status: GOOD ( 12.25 ) X-Spam-Score: -2.1 (--) X-Spam-Report: SpamAssassin version 3.4.4 on casper.infradead.org summary: Content analysis details: (-2.1 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [2607:f8b0:4864:20:0:0:0:1043 listed in] [list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.0 DKIMWL_WL_HIGH DKIMwl.org - Whitelisted High sender X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , linux-arch@vger.kernel.org, linux-efi@vger.kernel.org, Kees Cook , Arnd Bergmann , Catalin Marinas , Masahiro Yamada , x86@kernel.org, Nick Desaulniers , Russell King , linux-kernel@vger.kernel.org, clang-built-linux@googlegroups.com, Arvind Sankar , Ingo Molnar , James Morse , Nathan Chancellor , Borislav Petkov , Peter Collingbourne , Ard Biesheuvel , linux-arm-kernel@lists.infradead.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org We don't want to depend on the linker's orphan section placement heuristics as these can vary between linkers, and may change between versions. All sections need to be explicitly handled in the linker script. With all sections now handled, enable orphan section warnings. Acked-by: Will Deacon Signed-off-by: Kees Cook --- arch/arm64/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile index 35de43c29873..b8a3142db0dd 100644 --- a/arch/arm64/Makefile +++ b/arch/arm64/Makefile @@ -29,6 +29,10 @@ LDFLAGS_vmlinux += --fix-cortex-a53-843419 endif endif +# We never want expected sections to be placed heuristically by the +# linker. All sections should be explicitly named in the linker script. +LDFLAGS_vmlinux += --orphan-handling=warn + ifeq ($(CONFIG_ARM64_USE_LSE_ATOMICS), y) ifneq ($(CONFIG_ARM64_LSE_ATOMICS), y) $(warning LSE atomics not supported by binutils)