public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH] UefiCpuPkg/SecMain: Add NORETURN decorator to SecStartup().
@ 2018-02-27 16:50 Marvin Häuser
  2018-02-27 17:40 ` Laszlo Ersek
  0 siblings, 1 reply; 3+ messages in thread
From: Marvin Häuser @ 2018-02-27 16:50 UTC (permalink / raw)
  To: edk2-devel@lists.01.org; +Cc: eric.dong@intel.com, lersek@redhat.com

The function SecStartup() is not supposed to return. Hence, add the
NORETURN decorator.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com>
---
 UefiCpuPkg/SecCore/SecMain.c | 6 ++++++
 UefiCpuPkg/SecCore/SecMain.h | 1 +
 2 files changed, 7 insertions(+)

diff --git a/UefiCpuPkg/SecCore/SecMain.c b/UefiCpuPkg/SecCore/SecMain.c
index c241d3704af7..6f9db0584ce1 100644
--- a/UefiCpuPkg/SecCore/SecMain.c
+++ b/UefiCpuPkg/SecCore/SecMain.c
@@ -113,6 +113,7 @@ SecPerformancePpiCallBack (
   @param BootFirmwareVolume  Base address of the Boot Firmware Volume.
 **/
 VOID
+NORETURN
 EFIAPI
 SecStartup (
   IN UINT32                   SizeOfRam,
@@ -201,6 +202,11 @@ SecStartup (
   // Initialize Debug Agent to support source level debug in SEC/PEI phases before memory ready.
   //
   InitializeDebugAgent (DEBUG_AGENT_INIT_PREMEM_SEC, &SecCoreData, SecStartupPhase2);
+
+  //
+  // Should not come here.
+  //
+  UNREACHABLE ();
 }
 
 /**
diff --git a/UefiCpuPkg/SecCore/SecMain.h b/UefiCpuPkg/SecCore/SecMain.h
index 46c7d41c6e3e..42a5718cfdd5 100644
--- a/UefiCpuPkg/SecCore/SecMain.h
+++ b/UefiCpuPkg/SecCore/SecMain.h
@@ -76,6 +76,7 @@ SecTemporaryRamDone (
   @param BootFirmwareVolume  Base address of the Boot Firmware Volume.
 **/
 VOID
+NORETURN
 EFIAPI
 SecStartup (
   IN UINT32                   SizeOfRam,
-- 
2.16.0.windows.2



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] UefiCpuPkg/SecMain: Add NORETURN decorator to SecStartup().
  2018-02-27 16:50 [PATCH] UefiCpuPkg/SecMain: Add NORETURN decorator to SecStartup() Marvin Häuser
@ 2018-02-27 17:40 ` Laszlo Ersek
  0 siblings, 0 replies; 3+ messages in thread
From: Laszlo Ersek @ 2018-02-27 17:40 UTC (permalink / raw)
  To: Marvin Häuser, edk2-devel@lists.01.org; +Cc: eric.dong@intel.com

On 02/27/18 17:50, Marvin Häuser wrote:
> The function SecStartup() is not supposed to return. Hence, add the
> NORETURN decorator.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com>
> ---
>  UefiCpuPkg/SecCore/SecMain.c | 6 ++++++
>  UefiCpuPkg/SecCore/SecMain.h | 1 +
>  2 files changed, 7 insertions(+)
> 
> diff --git a/UefiCpuPkg/SecCore/SecMain.c b/UefiCpuPkg/SecCore/SecMain.c
> index c241d3704af7..6f9db0584ce1 100644
> --- a/UefiCpuPkg/SecCore/SecMain.c
> +++ b/UefiCpuPkg/SecCore/SecMain.c
> @@ -113,6 +113,7 @@ SecPerformancePpiCallBack (
>    @param BootFirmwareVolume  Base address of the Boot Firmware Volume.
>  **/
>  VOID
> +NORETURN
>  EFIAPI
>  SecStartup (
>    IN UINT32                   SizeOfRam,
> @@ -201,6 +202,11 @@ SecStartup (
>    // Initialize Debug Agent to support source level debug in SEC/PEI phases before memory ready.
>    //
>    InitializeDebugAgent (DEBUG_AGENT_INIT_PREMEM_SEC, &SecCoreData, SecStartupPhase2);
> +
> +  //
> +  // Should not come here.
> +  //
> +  UNREACHABLE ();
>  }
>  
>  /**
> diff --git a/UefiCpuPkg/SecCore/SecMain.h b/UefiCpuPkg/SecCore/SecMain.h
> index 46c7d41c6e3e..42a5718cfdd5 100644
> --- a/UefiCpuPkg/SecCore/SecMain.h
> +++ b/UefiCpuPkg/SecCore/SecMain.h
> @@ -76,6 +76,7 @@ SecTemporaryRamDone (
>    @param BootFirmwareVolume  Base address of the Boot Firmware Volume.
>  **/
>  VOID
> +NORETURN
>  EFIAPI
>  SecStartup (
>    IN UINT32                   SizeOfRam,
> 

I checked the NORETURN and UNREACHABLE() macros in
"MdePkg/Include/Base.h", and also the InitializeDebugAgent() API. I
think the patch is correct.

Reviewed-by: Laszlo Ersek <lersek@redhat.com>

Thanks
Laszlo


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] UefiCpuPkg/SecMain: Add NORETURN decorator to SecStartup().
  2018-05-05 13:17 FW: " Marvin Häuser
@ 2018-05-07  8:13 ` Dong, Eric
  0 siblings, 0 replies; 3+ messages in thread
From: Dong, Eric @ 2018-05-07  8:13 UTC (permalink / raw)
  To: Marvin Häuser, edk2-devel@lists.01.org; +Cc: Laszlo Ersek

Hi Marvin,

Sorry I missed this change. I will follow up to check in the changes.

Thanks,
Eric

-----Original Message-----
From: Marvin Häuser [mailto:Marvin.Haeuser@outlook.com] 
Sent: Saturday, May 5, 2018 9:18 PM
To: edk2-devel@lists.01.org
Cc: Dong, Eric <eric.dong@intel.com>; Laszlo Ersek <lersek@redhat.com>
Subject: FW: [PATCH] UefiCpuPkg/SecMain: Add NORETURN decorator to SecStartup().

Hey Eric and Laszlo,

If I am not mistaken, this patch has neither been reviewed by Eric, nor was it pushed.
Just forwarding it in case it was forgotten about.

Thank you very much!

Best regards,
Marvin.

> -----Ursprüngliche Nachricht-----
> Von: Laszlo Ersek <lersek@redhat.com>
> Gesendet: Dienstag, 27. Februar 2018 18:41
> An: Marvin Häuser <Marvin.Haeuser@outlook.com>; edk2- 
> devel@lists.01.org
> Cc: eric.dong@intel.com
> Betreff: Re: [PATCH] UefiCpuPkg/SecMain: Add NORETURN decorator to 
> SecStartup().
> 
> On 02/27/18 17:50, Marvin Häuser wrote:
> > The function SecStartup() is not supposed to return. Hence, add the 
> > NORETURN decorator.
> >
> > Contributed-under: TianoCore Contribution Agreement 1.1
> > Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com>
> > ---
> >  UefiCpuPkg/SecCore/SecMain.c | 6 ++++++
> UefiCpuPkg/SecCore/SecMain.h
> > | 1 +
> >  2 files changed, 7 insertions(+)
> >
> > diff --git a/UefiCpuPkg/SecCore/SecMain.c 
> > b/UefiCpuPkg/SecCore/SecMain.c index c241d3704af7..6f9db0584ce1
> 100644
> > --- a/UefiCpuPkg/SecCore/SecMain.c
> > +++ b/UefiCpuPkg/SecCore/SecMain.c
> > @@ -113,6 +113,7 @@ SecPerformancePpiCallBack (
> >    @param BootFirmwareVolume  Base address of the Boot Firmware
> Volume.
> >  **/
> >  VOID
> > +NORETURN
> >  EFIAPI
> >  SecStartup (
> >    IN UINT32                   SizeOfRam,
> > @@ -201,6 +202,11 @@ SecStartup (
> >    // Initialize Debug Agent to support source level debug in 
> > SEC/PEI phases
> before memory ready.
> >    //
> >    InitializeDebugAgent (DEBUG_AGENT_INIT_PREMEM_SEC,
> &SecCoreData,
> > SecStartupPhase2);
> > +
> > +  //
> > +  // Should not come here.
> > +  //
> > +  UNREACHABLE ();
> >  }
> >
> >  /**
> > diff --git a/UefiCpuPkg/SecCore/SecMain.h 
> > b/UefiCpuPkg/SecCore/SecMain.h index 46c7d41c6e3e..42a5718cfdd5
> 100644
> > --- a/UefiCpuPkg/SecCore/SecMain.h
> > +++ b/UefiCpuPkg/SecCore/SecMain.h
> > @@ -76,6 +76,7 @@ SecTemporaryRamDone (
> >    @param BootFirmwareVolume  Base address of the Boot Firmware
> Volume.
> >  **/
> >  VOID
> > +NORETURN
> >  EFIAPI
> >  SecStartup (
> >    IN UINT32                   SizeOfRam,
> >
> 
> I checked the NORETURN and UNREACHABLE() macros in 
> "MdePkg/Include/Base.h", and also the InitializeDebugAgent() API. I 
> think the patch is correct.
> 
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
> 
> Thanks
> Laszlo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-05-07  8:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-27 16:50 [PATCH] UefiCpuPkg/SecMain: Add NORETURN decorator to SecStartup() Marvin Häuser
2018-02-27 17:40 ` Laszlo Ersek
  -- strict thread matches above, loose matches on Subject: below --
2018-05-05 13:17 FW: " Marvin Häuser
2018-05-07  8:13 ` Dong, Eric

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox