From patchwork Thu Feb 13 22:00:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Volodymyr Babchuk X-Patchwork-Id: 13974105 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 lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (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 899B7C021A9 for ; Thu, 13 Feb 2025 22:00:51 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.888111.1297521 (Exim 4.92) (envelope-from ) id 1tihG8-0004pe-EE; Thu, 13 Feb 2025 22:00:36 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 888111.1297521; Thu, 13 Feb 2025 22:00:36 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1tihG8-0004pV-BZ; Thu, 13 Feb 2025 22:00:36 +0000 Received: by outflank-mailman (input) for mailman id 888111; Thu, 13 Feb 2025 22:00:35 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1tihG7-0004bW-3M for xen-devel@lists.xenproject.org; Thu, 13 Feb 2025 22:00:35 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on20606.outbound.protection.outlook.com [2a01:111:f403:2614::606]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id f29a8177-ea55-11ef-9896-31a8f345e629; Thu, 13 Feb 2025 23:00:33 +0100 (CET) Received: from GV1PR03MB10456.eurprd03.prod.outlook.com (2603:10a6:150:16a::21) by PA4PR03MB7069.eurprd03.prod.outlook.com (2603:10a6:102:e4::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8445.13; Thu, 13 Feb 2025 22:00:29 +0000 Received: from GV1PR03MB10456.eurprd03.prod.outlook.com ([fe80::a41e:5aa8:e298:757e]) by GV1PR03MB10456.eurprd03.prod.outlook.com ([fe80::a41e:5aa8:e298:757e%4]) with mapi id 15.20.8445.013; Thu, 13 Feb 2025 22:00:29 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: f29a8177-ea55-11ef-9896-31a8f345e629 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=QZkWAiBjmXhnpcK/Nef475bXBvYI8iEBR/MMq5Raq40DlHT1W8jYLJGpha40/sZiD7Cw4bgLx1KJ+SeN7y53KeJAgTZ2z/XAbkhWULFwzpzjer3Mzj9QrWdwR4Zz69W3+x7tPdfBnLJSx5vR78OGXlfhSJxyWsdLVWnbYMjaY5JrUcSIDsF56qvXuIbjcAURYiqPoBPdSXa6dodYkjwvyH5MaQ1SRfhzzQ+gyP6+6WFkafyHqoVz6Y5DrlqpjrIqKBwR0JjfY1+nlPD5SFvG+hSnu1aBfoB7/K2u9F28LYkTp3a5xtR1mcXjSG8HrKm9kh5EUnGtnZG180J5wpVY0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JPQWEWjJWgqQ5ilMuiG6MAnVTekf3gFSc1AqZ/HDA7M=; b=c2cDhrXGhWOMASww+t6OhuFf9hz7/tqLlbR6Wh7LUXZzA9UlFQB1yrmpF2LUjhiVISDQ9at//BeOLZDlCbl3kljOono27BzHxpJ8iFl6yyxIa0ktCZ8lHF2Df9znLjL9pIhE9bGyUFP9xqxjg2H2gDWg7/ICy/brkYByAEjTNlwhUcz8NrC8Of6e6S5T4HnnHBFsdBSw088VP6RMmx51d+pw1+5X3vuC8lbT59ZJuCf5+4Dr5KBL3k0yftwm3wMeuYWiWwl1cdMCK/8J1MqL/B0CCBjB+65hu+J64w5lh9pn6X3ToLewE3EQ5sBop7nliBRc8w4FQciSigRnsPk1/g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=epam.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JPQWEWjJWgqQ5ilMuiG6MAnVTekf3gFSc1AqZ/HDA7M=; b=XYN1r8R5vLBpFS5DglkgpGkDggqURajUXBbnvQlb4RxcZ9sOn8m225dOi+Xa26+t9VdpvX7xOJAfEZhz1SvqnAUME3iRG8qtV//mEIyDm9QksjKY6H0GQWqqiPMz+Ssw/gNOIeoiffIQjIC3icQMLJG+tQ3zDfwGTrapt3eRG+ffIbGatKhKXaYI8Xvir3CshZ0RcklP7lJteeFH9wCaD0rOtHwDoADpQ+1KciZhnkV/dEHz3eFz06tsGpkEhlnd8KCdQZDv0RDFa2j603EWcX8ZFyYEAA9MCY3caU2riDmwZI7HbhgQ6iOIaeq5Do3IwPgFFO/6x3B8HKSxYs8UIQ== From: Volodymyr Babchuk To: "xen-devel@lists.xenproject.org" CC: Volodymyr Babchuk , Andrew Cooper , Anthony PERARD , Michal Orzel , Jan Beulich , Julien Grall , =?iso-8859-1?q?Roger_Pau_Monn=E9?= , Stefano Stabellini , Samuel Thibault Subject: [PATCH v5 1/4] common: remove -fno-stack-protector from EMBEDDED_EXTRA_CFLAGS Thread-Topic: [PATCH v5 1/4] common: remove -fno-stack-protector from EMBEDDED_EXTRA_CFLAGS Thread-Index: AQHbfmKwo278lWdDqEO53b/eC0p8tw== Date: Thu, 13 Feb 2025 22:00:26 +0000 Message-ID: <20250213220021.2897526-2-volodymyr_babchuk@epam.com> References: <20250213220021.2897526-1-volodymyr_babchuk@epam.com> In-Reply-To: <20250213220021.2897526-1-volodymyr_babchuk@epam.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.47.1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: GV1PR03MB10456:EE_|PA4PR03MB7069:EE_ x-ms-office365-filtering-correlation-id: 90536e17-6912-44b7-3ddc-08dd4c79d449 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|376014|366016|38070700018; x-microsoft-antispam-message-info: =?iso-8859-1?q?BC0pPxhFGM59eQnVEqRt+IlqJg?= =?iso-8859-1?q?N06QdAuGnePImcUpGxZ4IzPMBCke+sNboT0O1A3DO9bktpClB4qCWe0Z2Lxt?= =?iso-8859-1?q?qjYla9XPRdfN+lGOPHWMRskj1LfVwWt3enmFyp9qjA6mf5C32Z5l2ZgVKTL7?= =?iso-8859-1?q?n/n02fN/L5Jtxcs4j3i7+UYMsVE9P3vKuNjA9fIyZEXqfrirPuesXjGurA21?= =?iso-8859-1?q?E72tfMmc8A7FuNXfchkCzxzpNdFbhiwoBRuLAEC/l8hvnpuuYM/8LugtMFtL?= =?iso-8859-1?q?HlWmG8zNQ0mmIUnxQTNpOZTi4PapXDegKMyQe9bwDrJPN73YP1tWlOh0gBNt?= =?iso-8859-1?q?S4KuMYqgc0WHDBF0jeGNjKpzCa2OYsxb39T294Vtxb2pQzaczA60DPCOA4rc?= =?iso-8859-1?q?iAq6IRTNvEuNlJi3zMQJOPhySdGPc0fY7aaROodkR4a4UWdR2ZuHCCRvwD8B?= =?iso-8859-1?q?HFMnQNiTiNm0p8HhW2uoBPq30pGNEGrqwRF5GoaQpThXhqt+KFMAVkqHl51B?= =?iso-8859-1?q?KMQrIfTIcv8rmesEC3XrXz/iKzepTnhd1JXD25VKxVICb7HiHKUI9pwtU3Kv?= =?iso-8859-1?q?jhjX1gLnvWB20Jboe/NCFvh1Qd3yn8Vt0Wzns1QOsd/tHZUpLC6OUs4xBHxs?= =?iso-8859-1?q?yQAxYuTJNwn/+bNnwSKStyE6eTxR5Yd2UJksgS7rnKpfYAvmHm55H5n+oKKE?= =?iso-8859-1?q?5J74n5uD9bHLe0zdyRxZ3gZIwll6vV+R1DpSxf6PI7pWa8UOBY0G0tL2ZiGu?= =?iso-8859-1?q?Gh6NDlrqhmEReFIufjb4PzfH1RqpwAOvvOyLqLGR+G+tFCxHX7NGHWtL+nD3?= =?iso-8859-1?q?oRRfzufgRFy5KBWXahFuGs8HnFEkNd5sQ/VRPNtaWGdyKyiIptcSN6t8sW4E?= =?iso-8859-1?q?Axh+J0qzBmKr45l0RarPL6YWZC6rT0vQDqIAn4q7E2sYEPzB+MosBGWABJSz?= =?iso-8859-1?q?dBwPQ2U9U7WXbSmG5OE3Kkq75ENLL4lmRHUOGANhtIUOaaFCJ3u8WYYawfTH?= =?iso-8859-1?q?C0snjEV4/2TalPtm0dQqlHTci9i/ONzHBbEBOVLeiQfsZNGJ51oW6eDEeXJZ?= =?iso-8859-1?q?EYicXGBv6DetNYAv1CevTyPa3v7ZfV6N+4Z8fTjKqTwZFsHgSAD8hNpsLr57?= =?iso-8859-1?q?edhpzNKXdos8NOgXsG8gl2BTj8KdolXitQmS5St6hWhZ3xp1iAQLfdvhAx+Q?= =?iso-8859-1?q?eLUUnW89oqvvU71Db2W27nl2jJ/TeH4i6bL/0hlJTAq0oAYerW9j/OHLvUpC?= =?iso-8859-1?q?l9DMfl0ck8fbJfH1aBHM5QN1IJtMSFYtxjplIo+jDXS0odxZOWgg22UbZ8FW?= =?iso-8859-1?q?stjTWfkrK2cBttq2hVlFEpCacJq4OhJIAv2Dbdv/B5sd1G4dhYukwqaUk0jz?= =?iso-8859-1?q?O5sCrtGXEWBy3mF8MN0nKoMRb8WsDk4mNptZqfxJtoFzAOY7ohF00fh4rCR8?= =?iso-8859-1?q?8EhIVWosBkJqRyuh+QDB8ybw=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV1PR03MB10456.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?q?ahN0x5sRiWgXquYFvg/Uux5?= =?iso-8859-1?q?XvTY1hRjJp201z6ihXpNAhykD6QIgqbpiHgoaoz2/DDrWO1mXuIKnqqjutX6?= =?iso-8859-1?q?zKvSbvJ1LuAgn4UcETvJ2c0B8BR+9DKo3Vrp/ScyWS/XQY5Jy+jwqF05suH/?= =?iso-8859-1?q?0O4+20An2YDBhjGCuSnC4rm8998j/N4QugRpu5CzGW/CkJPg5k9eumVvIZDn?= =?iso-8859-1?q?bxPFaUtBUjTS2dBH3c3AQbL80ijVuAnHYKbUM0RZH9A2L2DqzWrmBpp5wew9?= =?iso-8859-1?q?OnvTESGBx+Hb0detvqpEtN9xJz6o6Jx/QQtJ8RnkVTBeBhkDxX1GdoW8qx7S?= =?iso-8859-1?q?6V9PvTZ8+6LBcVb7Wo1Zxa4u4mbw27gP+X5TKFDqJFkfP40FYsc8YOkyIllg?= =?iso-8859-1?q?B5dXrse5bqul8qR5LYeahOFbC2FEJFrWEorwUACA+70M7oBakwNdDlqbyyHW?= =?iso-8859-1?q?JlqROu+GGxPMbRZ7lXbpqn5wvRe0UiC95jfMFmzyYeOqr5Gvf4Pb8lHMKQLc?= =?iso-8859-1?q?OT2Bfaq6XTn6egjRCZifstpOoO0dOBI359g8SKSNF4Ot7cv5Rr+XUqg3L2Yy?= =?iso-8859-1?q?8+LrwU8Moa+U4gE+sbyyZ+5JUlFiMhtmYDiDisbJBKvGsbsQkq/+cd9SpWVy?= =?iso-8859-1?q?BfC2ryfWhgANsoTRBCGFoGYmYmVLOPqjnOHNb77hklOgqBPSMbkPt2IP05BZ?= =?iso-8859-1?q?Os3rmz8aQuz3IV9YJ39EMfD7XfWqtwnzWScRu9Yq0ILTbp+a57FvUUBkDNfK?= =?iso-8859-1?q?WYHJc8q32m2wfMQTpM+e8Uo8KmFar3zQ+HXqF5IvXXAevlTJYyCV0ZJALXoI?= =?iso-8859-1?q?31zHZ1wgov+H0Na2DrHJV3x14Ugue8eGgrKAIyVVRy7uvgsQIi47lZ7dTeUP?= =?iso-8859-1?q?8dTGrI4xiA5nrlJ5bSmxHQMgN6jIjD/gSseBv1mrc5rV2tZ3TSUfnmvMlsG6?= =?iso-8859-1?q?Bo7jBMqgZejokS1J2S2ovhk3onE99lVhbeNODsfCYCpKdfSvgz3cH3AY+HcE?= =?iso-8859-1?q?DdKUpxnlKa6YcApOfyt+o2MySGBld6Nsmf2fAMZP2Q0iAdJJUnKKXU82pFtg?= =?iso-8859-1?q?m5k1ukVn0UofqaOinWaFF02hadtEix53FaDl31e2WygZ1tmcnz1pZ8oGZ9v3?= =?iso-8859-1?q?SBUnLjUaesaGtIQMvtz1oQa65bO/n3H0IlbeNtOsKHAoQzaLYqfvzPToEYXq?= =?iso-8859-1?q?Ii3hia+F0HXOXIEpNs0Oi5KzTFV0lMp5pyGmmWQvdWFJUxrGMk/MUl+cd17u?= =?iso-8859-1?q?GQiOKtQmuKb0lqOJzVTWcJp0aKSBLYoonLcVHpi1gIOqrDtQYq52jjhKWFU4?= =?iso-8859-1?q?yynTb4k/4Ejcoi71QQ790uDcA5b6RePGu8DnV521dczKxpNs+d30X/ISmJ7w?= =?iso-8859-1?q?XVQ7BiM++5g7FsYioLFCBtY5EjWgT2cutsv9w5a0NOPabpraHOeileok+bVV?= =?iso-8859-1?q?yzs+MJYYTJDJOaemxUVVtbueTT1hLwzjzrjDHyCb5idCdNe1SjQxfPlraWra?= =?iso-8859-1?q?1cFCmHqdjEyow6omibZ0MrJtShOt5ic5+bpyoSzHZKsTKSBASGK6eRtIvnVu?= =?iso-8859-1?q?JPo1fInHRdiqpoTu0H+ni//NM/HX7y1xNdpZLySAJbHsBy2Y4Ldtyi34ERtl?= =?iso-8859-1?q?JGx4S6FaNXXKoxe4kr937aaaSPKQl6uLZVlk6Vw=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: epam.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: GV1PR03MB10456.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 90536e17-6912-44b7-3ddc-08dd4c79d449 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Feb 2025 22:00:26.7413 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b41b72d0-4e9f-4c26-8a69-f949f367c91d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: FTq0l+sjbhS/516sSNbS2kTV9n7okKmNaFX3u6CUKLegLuanCj/AfUSvNzpl9FWK21PSBam73xLdwz5CRDsNC2T3dMzY/veAb8fBA08qVko= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR03MB7069 This patch is preparation for making stack protector configurable. First step is to remove -fno-stack-protector flag from EMBEDDED_EXTRA_CFLAGS so separate components (Hypervisor in this case) can enable/disable this feature by themselves. Signed-off-by: Volodymyr Babchuk Reviewed-by: Jan Beulich Reviewed-by: Andrew Cooper --- Config.mk | 2 +- stubdom/Makefile | 2 ++ tools/firmware/Rules.mk | 2 ++ tools/tests/x86_emulator/testcase.mk | 2 +- xen/Makefile | 2 ++ xen/arch/x86/boot/Makefile | 1 + 6 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Config.mk b/Config.mk index 1eb6ed04fe..4dd4b50fdf 100644 --- a/Config.mk +++ b/Config.mk @@ -198,7 +198,7 @@ endif APPEND_LDFLAGS += $(foreach i, $(APPEND_LIB), -L$(i)) APPEND_CFLAGS += $(foreach i, $(APPEND_INCLUDES), -I$(i)) -EMBEDDED_EXTRA_CFLAGS := -fno-pie -fno-stack-protector +EMBEDDED_EXTRA_CFLAGS := -fno-pie EMBEDDED_EXTRA_CFLAGS += -fno-exceptions -fno-asynchronous-unwind-tables XEN_EXTFILES_URL ?= https://xenbits.xen.org/xen-extfiles diff --git a/stubdom/Makefile b/stubdom/Makefile index 2a81af28a1..9edcef6e99 100644 --- a/stubdom/Makefile +++ b/stubdom/Makefile @@ -14,6 +14,8 @@ export debug=y # Moved from config/StdGNU.mk CFLAGS += -O1 -fno-omit-frame-pointer +CFLAGS += -fno-stack-protector + ifeq (,$(findstring clean,$(MAKECMDGOALS))) ifeq ($(wildcard $(MINI_OS)/Config.mk),) $(error Please run 'make mini-os-dir' in top-level directory) diff --git a/tools/firmware/Rules.mk b/tools/firmware/Rules.mk index d3482c9ec4..be2692695d 100644 --- a/tools/firmware/Rules.mk +++ b/tools/firmware/Rules.mk @@ -11,6 +11,8 @@ ifneq ($(debug),y) CFLAGS += -DNDEBUG endif +CFLAGS += -fno-stack-protector + $(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS)) $(call cc-option-add,CFLAGS,CC,-fcf-protection=none) diff --git a/tools/tests/x86_emulator/testcase.mk b/tools/tests/x86_emulator/testcase.mk index fc95e24589..7875b95d7c 100644 --- a/tools/tests/x86_emulator/testcase.mk +++ b/tools/tests/x86_emulator/testcase.mk @@ -4,7 +4,7 @@ include $(XEN_ROOT)/tools/Rules.mk $(call cc-options-add,CFLAGS,CC,$(EMBEDDED_EXTRA_CFLAGS)) -CFLAGS += -fno-builtin -g0 $($(TESTCASE)-cflags) +CFLAGS += -fno-builtin -fno-stack-protector -g0 $($(TESTCASE)-cflags) LDFLAGS_DIRECT += $(shell { $(LD) -v --warn-rwx-segments; } >/dev/null 2>&1 && echo --no-warn-rwx-segments) diff --git a/xen/Makefile b/xen/Makefile index 65b460e2b4..a0c774ab7d 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -435,6 +435,8 @@ else CFLAGS_UBSAN := endif +CFLAGS += -fno-stack-protector + ifeq ($(CONFIG_LTO),y) CFLAGS += -flto LDFLAGS-$(CONFIG_CC_IS_CLANG) += -plugin LLVMgold.so diff --git a/xen/arch/x86/boot/Makefile b/xen/arch/x86/boot/Makefile index d457876659..ff0d61d7ac 100644 --- a/xen/arch/x86/boot/Makefile +++ b/xen/arch/x86/boot/Makefile @@ -17,6 +17,7 @@ obj32 := $(addprefix $(obj)/,$(obj32)) CFLAGS_x86_32 := $(subst -m64,-m32 -march=i686,$(XEN_TREEWIDE_CFLAGS)) $(call cc-options-add,CFLAGS_x86_32,CC,$(EMBEDDED_EXTRA_CFLAGS)) CFLAGS_x86_32 += -Werror -fno-builtin -g0 -msoft-float -mregparm=3 +CFLAGS_x86_32 += -fno-stack-protector CFLAGS_x86_32 += -nostdinc -include $(filter %/include/xen/config.h,$(XEN_CFLAGS)) CFLAGS_x86_32 += $(filter -I% -O%,$(XEN_CFLAGS)) -D__XEN__