[edk2] [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers

Ard Biesheuvel posted 1 patch 7 years, 2 months ago
Failed in applying to current master (apply log)
Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 1 +
1 file changed, 1 insertion(+)
[edk2] [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers
Posted by Ard Biesheuvel 7 years, 2 months ago
ResetSystemRuntimeDxe may be invoked by the OS at runtime, at which time
it will attempt to call into ReportStatusCodeLib. If we use the default
version for DXE drivers, this will access data structures that are no
longer there so switch to the special runtime version instead.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
index 8bcb84869c84..1605eedbdd8c 100644
--- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
+++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
@@ -240,6 +240,7 @@ [LibraryClasses.common.DXE_RUNTIME_DRIVER]
   MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
   CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
   ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf
+  ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
 !if $(SECURE_BOOT_ENABLE) == TRUE
   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
 !endif
-- 
2.11.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers
Posted by Sudeep Holla 7 years, 2 months ago

On 17/10/17 14:42, Ard Biesheuvel wrote:
> ResetSystemRuntimeDxe may be invoked by the OS at runtime, at which time
> it will attempt to call into ReportStatusCodeLib. If we use the default
> version for DXE drivers, this will access data structures that are no
> longer there so switch to the special runtime version instead.
> 

Tested-by: Sudeep Holla <sudeep.holla@arm.com>

> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
>  Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> index 8bcb84869c84..1605eedbdd8c 100644
> --- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> +++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> @@ -240,6 +240,7 @@ [LibraryClasses.common.DXE_RUNTIME_DRIVER]
>    MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
>    CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
>    ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf
> +  ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
>  !if $(SECURE_BOOT_ENABLE) == TRUE
>    BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
>  !endif
> 

-- 
Regards,
Sudeep
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers
Posted by Leif Lindholm 7 years, 2 months ago
Thanks.

Alexei, can you confirm that this addresses your concerns?

/
    Leif

On Tue, Oct 17, 2017 at 02:42:05PM +0100, Ard Biesheuvel wrote:
> ResetSystemRuntimeDxe may be invoked by the OS at runtime, at which time
> it will attempt to call into ReportStatusCodeLib. If we use the default
> version for DXE drivers, this will access data structures that are no
> longer there so switch to the special runtime version instead.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
>  Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> index 8bcb84869c84..1605eedbdd8c 100644
> --- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> +++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> @@ -240,6 +240,7 @@ [LibraryClasses.common.DXE_RUNTIME_DRIVER]
>    MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
>    CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
>    ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf
> +  ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
>  !if $(SECURE_BOOT_ENABLE) == TRUE
>    BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
>  !endif
> -- 
> 2.11.0
> 
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers
Posted by Alexei Fedorov 7 years, 2 months ago
Yes, system can be restarted properly with this patch.


Alexei.

________________________________
From: Leif Lindholm <leif.lindholm@linaro.org>
Sent: 17 October 2017 15:00:24
To: Ard Biesheuvel; Alexei Fedorov
Cc: edk2-devel@lists.01.org; Sudeep Holla
Subject: Re: [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers

Thanks.

Alexei, can you confirm that this addresses your concerns?

/
    Leif

On Tue, Oct 17, 2017 at 02:42:05PM +0100, Ard Biesheuvel wrote:
> ResetSystemRuntimeDxe may be invoked by the OS at runtime, at which time
> it will attempt to call into ReportStatusCodeLib. If we use the default
> version for DXE drivers, this will access data structures that are no
> longer there so switch to the special runtime version instead.
>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
>  Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> index 8bcb84869c84..1605eedbdd8c 100644
> --- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> +++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> @@ -240,6 +240,7 @@ [LibraryClasses.common.DXE_RUNTIME_DRIVER]
>    MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
>    CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
>    ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf
> +  ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
>  !if $(SECURE_BOOT_ENABLE) == TRUE
>    BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
>  !endif
> --
> 2.11.0
>
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers
Posted by Leif Lindholm 7 years, 2 months ago
Thanks!

I'll take that as a Tested-by:.

Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Pushed as 1727ed8024.

/
    Leif

On Tue, Oct 17, 2017 at 03:05:36PM +0000, Alexei Fedorov wrote:
> Yes, system can be restarted properly with this patch.
> 
> 
> Alexei.
> 
> ________________________________
> From: Leif Lindholm <leif.lindholm@linaro.org>
> Sent: 17 October 2017 15:00:24
> To: Ard Biesheuvel; Alexei Fedorov
> Cc: edk2-devel@lists.01.org; Sudeep Holla
> Subject: Re: [PATCH edk2-platforms v2] Platform/ARM: use appropriate ReportStatusCodeLib resolution for RT drivers
> 
> Thanks.
> 
> Alexei, can you confirm that this addresses your concerns?
> 
> /
>     Leif
> 
> On Tue, Oct 17, 2017 at 02:42:05PM +0100, Ard Biesheuvel wrote:
> > ResetSystemRuntimeDxe may be invoked by the OS at runtime, at which time
> > it will attempt to call into ReportStatusCodeLib. If we use the default
> > version for DXE drivers, this will access data structures that are no
> > longer there so switch to the special runtime version instead.
> >
> > Contributed-under: TianoCore Contribution Agreement 1.1
> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> > ---
> >  Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> > index 8bcb84869c84..1605eedbdd8c 100644
> > --- a/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> > +++ b/Platform/ARM/VExpressPkg/ArmVExpress.dsc.inc
> > @@ -240,6 +240,7 @@ [LibraryClasses.common.DXE_RUNTIME_DRIVER]
> >    MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
> >    CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
> >    ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigRuntimeLib/ArmVExpressSysConfigRuntimeLib.inf
> > +  ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
> >  !if $(SECURE_BOOT_ENABLE) == TRUE
> >    BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
> >  !endif
> > --
> > 2.11.0
> >
> IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel