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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 82854C433F5 for ; Mon, 17 Jan 2022 18:26:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=UIosK4iMT8s+IgvfjNX8yDE4MQPhnLUur9nknUYFGJg=; b=Wjp46PAIPl+yl0 T57ikp+nAaeVT3WMdnzFQ0jBpibZWhZsyajHTNktVg5ipOuFXN5spwvM/hK6JfRtTp7b64NbJRtla 417XKzrVFd/Qid3vxXjrtQGOwVlNt6756xJf+xdSsKGSd7Jq2PoNN5V469ZwP/psOGBuUjvpzlhEs WLHY5wCDutmIXvjXMri56/74zC8cYSjxcZmda/8iQzEIiOut6f3ODcZ9GFRI8NdVs2r3VhTbKIr1X A4smziaq7dLQ+9upLo+TpfkqTVHsuk1rxh9nTBYs3VI4arv8QCcVBSdeQsWyldfpCN0xLG3SY9wg3 e3isGjErnmYDxATX2kcg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n9Wgx-00G565-HK; Mon, 17 Jan 2022 18:25:19 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1n9Wgt-00G55R-40 for linux-arm-kernel@lists.infradead.org; Mon, 17 Jan 2022 18:25:16 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 6CA756D; Mon, 17 Jan 2022 10:25:13 -0800 (PST) Received: from donnerap.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id B862D3F774; Mon, 17 Jan 2022 10:25:12 -0800 (PST) Date: Mon, 17 Jan 2022 18:25:10 +0000 From: Andre Przywara To: "Russell King (Oracle)" Cc: Mark Rutland , Jaxson Han , linux-arm-kernel@lists.infradead.org, Robin Murphy Subject: Re: [PATCH v3] Makefile: Tell compiler to generate bare-metal code Message-ID: <20220117182510.61b987d2@donnerap.cambridge.arm.com> In-Reply-To: References: <20220117153348.2513798-1-andre.przywara@arm.com> Organization: ARM X-Mailer: Claws Mail 3.17.5 (GTK+ 2.24.32; aarch64-unknown-linux-gnu) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220117_102515_245638_DF0A6641 X-CRM114-Status: GOOD ( 24.48 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Mon, 17 Jan 2022 17:49:43 +0000 "Russell King (Oracle)" wrote: Hi Russell, > On Mon, Jan 17, 2022 at 03:33:48PM +0000, Andre Przywara wrote: > > Our GCC invocation does not provide many parameters, which lets the > > toolchain fill in its own default setup. > > In case of a native build or when using a full-featured cross-compiler, > > this probably means Linux userland, which is not what we want for a > > bare-metal application like boot-wrapper. > > > > Tell the compiler to forget about those standard settings, and only use > > what we explicitly ask for. In particular that means to not use toolchain > > provided libraries, since they might pull in more code than we want, and > > might not run well in the boot-wrapper environment. > > > > Disable the stack protector, as this adds code that relies on userland: > > "If a guard check fails, an error message is printed and the program > > exits." (from the gcc manpage). > > > > Signed-off-by: Andre Przywara > > --- > > Hi, > > > > compared to [PATCH v2 3/9] this drops the more contentious options (for > > now, at least), and focuses on what's really needed. Including > > -fno-stack-protector, as the need for this showed up in the cleanup series > > already. > > There is history here. -ffreestanding has been tried before. See: > > https://patchwork.kernel.org/project/linux-kbuild/patch/20200817220212.338670-5-ndesaulniers@google.com/ Thanks for the link, interesting insight. > Have the issues in that thread been addressed? My apologies, I just see that I accidentally dropped the "boot-wrapper" part from the subject line. So this is not a Linux patch, we just use the mailing list for boot-wrapper discussion as well. As the boot-wrapper is a really minimal and small code base, I don't think we bother too much about lost optimisation opportunities, instead want to become more robust. At the moment we really don't use any options telling the compiler to not use the standard library (which caused issues already), so we'd like to play safe here. Thanks, Andre > If not, -ffreestanding does not belong in the top-level makefile. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel