On 03/30/20 13:37, Laszlo Ersek wrote:
> On 03/29/20 15:21, Vitaly Cheptsov wrote:
>> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2642
>>
>> This patch resolves the problem of using memory protection
>> attributes when OVMF firmware is compiled with XCODE5 and CLANGPDB.
>>
>> CC: Andrew Fish <af...@apple.com>
>> CC: Laszlo Ersek <ler...@redhat.com>
>> CC: Marvin Häuser <mhaeu...@outlook.de>
>> Signed-off-by: Vitaly Cheptsov <vit9...@protonmail.com>
>> ---
>>  OvmfPkg/OvmfPkgIa32.dsc    | 6 ++++--
>>  OvmfPkg/OvmfPkgIa32X64.dsc | 6 ++++--
>>  OvmfPkg/OvmfPkgX64.dsc     | 6 ++++--
>>  OvmfPkg/OvmfXen.dsc        | 8 ++++++--
>>  4 files changed, 18 insertions(+), 8 deletions(-)
> 
> This patch is an update on TianoCore#559 / commit 01e9597540fa
> ("OvmfPkg: Add XCODE5 statements to fix build break", 2017-05-19).
> 
> I'd like Mike and/or Liming to ACK this patch (I don't use either XCODE
> or CLANGPDB, and the patches related to those toolchains seem to have
> come from Liming and Mike mainly).
> 
> Afterwards, I'm happy to push this patch:
> 
> Acked-by: Laszlo Ersek <ler...@redhat.com>

Pushed as commit 4fb393aaa8bb029dc98a1330f40303bf16e2b092, via
<https://github.com/tianocore/edk2/pull/491>.

(I didn't want to delay this patch -- it's potential to cause a
regression is limited, and if it happens, we still have plenty of time
to fix it for the stable tag.)

Thanks
Laszlo


>> diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc
>> index 19728f20b3..0aba200c2d 100644
>> --- a/OvmfPkg/OvmfPkgIa32.dsc
>> +++ b/OvmfPkg/OvmfPkgIa32.dsc
>> @@ -80,14 +80,16 @@ [BuildOptions]
>>
>>  [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>>    CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  # Force PE/COFF sections to be aligned at 4KB boundaries to support page 
>> level
>>  # protection of DXE_SMM_DRIVER/SMM_CORE modules
>>  [BuildOptions.common.EDKII.DXE_SMM_DRIVER, 
>> BuildOptions.common.EDKII.SMM_CORE]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>>    CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  
>> ################################################################################
>> diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc
>> index 3c0c229e3a..eca70d64c3 100644
>> --- a/OvmfPkg/OvmfPkgIa32X64.dsc
>> +++ b/OvmfPkg/OvmfPkgIa32X64.dsc
>> @@ -85,14 +85,16 @@ [BuildOptions]
>>
>>  [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>>    CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  # Force PE/COFF sections to be aligned at 4KB boundaries to support page 
>> level
>>  # protection of DXE_SMM_DRIVER/SMM_CORE modules
>>  [BuildOptions.common.EDKII.DXE_SMM_DRIVER, 
>> BuildOptions.common.EDKII.SMM_CORE]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>>    CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  
>> ################################################################################
>> diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
>> index f6c1d8d228..676d0ed9a6 100644
>> --- a/OvmfPkg/OvmfPkgX64.dsc
>> +++ b/OvmfPkg/OvmfPkgX64.dsc
>> @@ -85,14 +85,16 @@ [BuildOptions]
>>
>>  [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>>    CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  # Force PE/COFF sections to be aligned at 4KB boundaries to support page 
>> level
>>  # protection of DXE_SMM_DRIVER/SMM_CORE modules
>>  [BuildOptions.common.EDKII.DXE_SMM_DRIVER, 
>> BuildOptions.common.EDKII.SMM_CORE]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>>    CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  
>> ################################################################################
>> diff --git a/OvmfPkg/OvmfXen.dsc b/OvmfPkg/OvmfXen.dsc
>> index 5751ff1f03..783bac3e8b 100644
>> --- a/OvmfPkg/OvmfXen.dsc
>> +++ b/OvmfPkg/OvmfXen.dsc
>> @@ -82,13 +82,17 @@ [BuildOptions]
>>
>>  [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>> +  CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  # Force PE/COFF sections to be aligned at 4KB boundaries to support page 
>> level
>>  # protection of DXE_SMM_DRIVER/SMM_CORE modules
>>  [BuildOptions.common.EDKII.DXE_SMM_DRIVER, 
>> BuildOptions.common.EDKII.SMM_CORE]
>>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>> -  XCODE:*_*_*_DLINK_FLAGS =
>> +  XCODE:*_*_*_DLINK_FLAGS = -seg1addr 0x1000 -segalign 0x1000
>> +  XCODE:*_*_*_MTOC_FLAGS = -align 0x1000
>> +  CLANGPDB:*_*_*_DLINK_FLAGS = /ALIGN:4096
>>
>>  
>> ################################################################################
>>  #
>>
> 
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#56852): https://edk2.groups.io/g/devel/message/56852
Mute This Topic: https://groups.io/mt/72629399/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to