Skip to content

Commit 399a40e

Browse files
ashishsinghamergify[bot]
authored andcommitted
ArmVirtPkg: Fix dsc include ordering
Fix the issue caused by ordering change in dsc include files while enabling dynamic stack check. Signed-off-by: Ashish Singhal <[email protected]>
1 parent b2db39c commit 399a40e

File tree

7 files changed

+47
-19
lines changed

7 files changed

+47
-19
lines changed

ArmVirtPkg/ArmVirt.dsc.inc

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,6 @@
3333
DEFINE FD_NUM_BLOCKS = 0x300
3434
!endif
3535

36-
# Dynamic stack cookies are not supported on ARM
37-
!if $(ARCH) == ARM
38-
DEFINE CUSTOM_STACK_CHECK_LIB = STATIC
39-
!else
40-
DEFINE CUSTOM_STACK_CHECK_LIB = DYNAMIC
41-
!endif
42-
4336
[BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
4437
GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
4538

ArmVirtPkg/ArmVirtCloudHv.dsc

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,11 @@
2828
DEFINE TTY_TERMINAL = FALSE
2929
DEFINE SECURE_BOOT_ENABLE = FALSE
3030

31-
# This comes before MdeLibs to ensure stack cookie configuration is chosen
31+
# This comes at the beginning of includes to pick all relevant defines early on.
32+
!include ArmVirtPkg/ArmVirtStackCookies.dsc.inc
33+
34+
# This comes at the end of includes to pick all relevant components without any
35+
# unintentional overrides.
3236
!include ArmVirtPkg/ArmVirt.dsc.inc
3337

3438
[LibraryClasses.common]

ArmVirtPkg/ArmVirtKvmTool.dsc

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,19 @@
3030
[Defines.AARCH64]
3131
DEFINE ACPIVIEW_ENABLE = TRUE
3232

33-
34-
# This comes before MdeLibs to ensure stack cookie configuration is chosen
35-
!include ArmVirtPkg/ArmVirt.dsc.inc
33+
# This comes at the beginning of includes to pick all relevant defines early on.
34+
!include ArmVirtPkg/ArmVirtStackCookies.dsc.inc
3635

3736
!if $(ARCH) == AARCH64
3837
!include DynamicTablesPkg/DynamicTables.dsc.inc
3938
!endif
4039

4140
!include MdePkg/MdeLibs.dsc.inc
4241

42+
# This comes at the end of includes to pick all relevant components without any
43+
# unintentional overrides.
44+
!include ArmVirtPkg/ArmVirt.dsc.inc
45+
4346
[LibraryClasses.common]
4447
ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
4548
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf

ArmVirtPkg/ArmVirtQemu.dsc

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,17 +45,21 @@
4545
DEFINE NETWORK_ISCSI_ENABLE = FALSE
4646
DEFINE NETWORK_PXE_BOOT_ENABLE = TRUE
4747

48+
# This comes at the beginning of includes to pick all relevant defines early on.
49+
!include ArmVirtPkg/ArmVirtStackCookies.dsc.inc
50+
4851
!if $(NETWORK_SNP_ENABLE) == TRUE
4952
!error "NETWORK_SNP_ENABLE is IA32/X64/EBC only"
5053
!endif
5154

5255
!include NetworkPkg/NetworkDefines.dsc.inc
5356

54-
# This comes before MdeLibs to ensure stack cookie configuration is chosen
55-
!include ArmVirtPkg/ArmVirt.dsc.inc
56-
5757
!include MdePkg/MdeLibs.dsc.inc
5858

59+
# This comes at the end of includes to pick all relevant components without any
60+
# unintentional overrides.
61+
!include ArmVirtPkg/ArmVirt.dsc.inc
62+
5963
[LibraryClasses.common]
6064
ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
6165
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf

ArmVirtPkg/ArmVirtQemuKernel.dsc

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,17 +42,21 @@
4242
DEFINE NETWORK_ISCSI_ENABLE = FALSE
4343
DEFINE NETWORK_PXE_BOOT_ENABLE = TRUE
4444

45+
# This comes at the beginning of includes to pick all relevant defines early on.
46+
!include ArmVirtPkg/ArmVirtStackCookies.dsc.inc
47+
4548
!if $(NETWORK_SNP_ENABLE) == TRUE
4649
!error "NETWORK_SNP_ENABLE is IA32/X64/EBC only"
4750
!endif
4851

4952
!include NetworkPkg/NetworkDefines.dsc.inc
5053

51-
# This comes before MdeLibs to ensure stack cookie configuration is chosen
52-
!include ArmVirtPkg/ArmVirt.dsc.inc
53-
5454
!include MdePkg/MdeLibs.dsc.inc
5555

56+
# This comes at the end of includes to pick all relevant components without any
57+
# unintentional overrides.
58+
!include ArmVirtPkg/ArmVirt.dsc.inc
59+
5660
[LibraryClasses.common]
5761
ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
5862
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#
2+
# Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3+
#
4+
# SPDX-License-Identifier: BSD-2-Clause-Patent
5+
#
6+
#
7+
8+
[Defines]
9+
10+
# Dynamic stack cookies are not supported on ARM
11+
!if $(ARCH) == ARM
12+
DEFINE CUSTOM_STACK_CHECK_LIB = STATIC
13+
!else
14+
DEFINE CUSTOM_STACK_CHECK_LIB = DYNAMIC
15+
!endif
16+

ArmVirtPkg/ArmVirtXen.dsc

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,15 @@
2323
SKUID_IDENTIFIER = DEFAULT
2424
FLASH_DEFINITION = ArmVirtPkg/ArmVirtXen.fdf
2525

26-
# This comes before MdeLibs to ensure stack cookie configuration is chosen
27-
!include ArmVirtPkg/ArmVirt.dsc.inc
26+
# This comes at the beginning of includes to pick all relevant defines early on.
27+
!include ArmVirtPkg/ArmVirtStackCookies.dsc.inc
2828

2929
!include MdePkg/MdeLibs.dsc.inc
3030

31+
# This comes at the end of includes to pick all relevant components without any
32+
# unintentional overrides.
33+
!include ArmVirtPkg/ArmVirt.dsc.inc
34+
3135
[LibraryClasses]
3236
SerialPortLib|OvmfPkg/Library/XenConsoleSerialPortLib/XenConsoleSerialPortLib.inf
3337
!if $(TARGET) != RELEASE

0 commit comments

Comments
 (0)