[edk2-devel] [PATCH] Modified ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c to follow error handling instead of success handling

Daniel Nguyen posted 1 patch 5 months, 2 weeks ago
Failed in applying to current master (apply log)
.../UefiShellLevel2CommandsLib/Reset.c        | 43 +++++++++++--------
1 file changed, 24 insertions(+), 19 deletions(-)
[edk2-devel] [PATCH] Modified ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c to follow error handling instead of success handling
Posted by Daniel Nguyen 5 months, 2 weeks ago
Signed-off-by: Daniel Nguyen <daniel.nguyen@arm.com>
---
 .../UefiShellLevel2CommandsLib/Reset.c        | 43 +++++++++++--------
 1 file changed, 24 insertions(+), 19 deletions(-)

diff --git a/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c b/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
index 57ba3c90f3..361c47e430 100644
--- a/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
+++ b/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
@@ -79,30 +79,35 @@ ShellCommandRunReset (
                           &DataSize,
                           &OsIndications
                           );
-        if (!EFI_ERROR (Status)) {
-          if ((OsIndications & EFI_OS_INDICATIONS_BOOT_TO_FW_UI) != 0) {
-            DataSize = sizeof (OsIndications);
-            Status   = gRT->GetVariable (
-                              EFI_OS_INDICATIONS_VARIABLE_NAME,
-                              &gEfiGlobalVariableGuid,
-                              &Attr,
-                              &DataSize,
-                              &OsIndications
-                              );
-            if (!EFI_ERROR (Status)) {
-              OsIndications |= EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
-            } else {
-              OsIndications = EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
-            }
-
-            Status = gRT->SetVariable (
+
+        if (EFI_ERROR (Status)) {
+          ShellStatus = SHELL_UNSUPPORTED;
+          goto Error;
+        }
+
+        if ((OsIndications & EFI_OS_INDICATIONS_BOOT_TO_FW_UI) != 0) {
+          DataSize = sizeof (OsIndications);
+          Status   = gRT->GetVariable (
                             EFI_OS_INDICATIONS_VARIABLE_NAME,
                             &gEfiGlobalVariableGuid,
-                            EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
-                            sizeof (OsIndications),
+                            &Attr,
+                            &DataSize,
                             &OsIndications
                             );
+
+          if (EFI_ERROR (Status)) {
+            OsIndications = EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
+          } else {
+            OsIndications |= EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
           }
+
+          Status = gRT->SetVariable (
+                          EFI_OS_INDICATIONS_VARIABLE_NAME,
+                          &gEfiGlobalVariableGuid,
+                          EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
+                          sizeof (OsIndications),
+                          &OsIndications
+                          );
         }
 
         if (EFI_ERROR (Status)) {
-- 
2.25.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111429): https://edk2.groups.io/g/devel/message/111429
Mute This Topic: https://groups.io/mt/102698984/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH] Modified ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c to follow error handling instead of success handling
Posted by Laszlo Ersek 5 months, 1 week ago
On 11/16/23 07:16, Daniel Nguyen wrote:
> Signed-off-by: Daniel Nguyen <daniel.nguyen@arm.com>
> ---
>  .../UefiShellLevel2CommandsLib/Reset.c        | 43 +++++++++++--------
>  1 file changed, 24 insertions(+), 19 deletions(-)
> 
> diff --git a/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c b/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
> index 57ba3c90f3..361c47e430 100644
> --- a/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
> +++ b/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
> @@ -79,30 +79,35 @@ ShellCommandRunReset (
>                            &DataSize,
>                            &OsIndications
>                            );
> -        if (!EFI_ERROR (Status)) {
> -          if ((OsIndications & EFI_OS_INDICATIONS_BOOT_TO_FW_UI) != 0) {
> -            DataSize = sizeof (OsIndications);
> -            Status   = gRT->GetVariable (
> -                              EFI_OS_INDICATIONS_VARIABLE_NAME,
> -                              &gEfiGlobalVariableGuid,
> -                              &Attr,
> -                              &DataSize,
> -                              &OsIndications
> -                              );
> -            if (!EFI_ERROR (Status)) {
> -              OsIndications |= EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
> -            } else {
> -              OsIndications = EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
> -            }
> -
> -            Status = gRT->SetVariable (
> +
> +        if (EFI_ERROR (Status)) {
> +          ShellStatus = SHELL_UNSUPPORTED;
> +          goto Error;
> +        }
> +
> +        if ((OsIndications & EFI_OS_INDICATIONS_BOOT_TO_FW_UI) != 0) {
> +          DataSize = sizeof (OsIndications);
> +          Status   = gRT->GetVariable (
>                              EFI_OS_INDICATIONS_VARIABLE_NAME,
>                              &gEfiGlobalVariableGuid,
> -                            EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
> -                            sizeof (OsIndications),
> +                            &Attr,
> +                            &DataSize,
>                              &OsIndications
>                              );
> +
> +          if (EFI_ERROR (Status)) {
> +            OsIndications = EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
> +          } else {
> +            OsIndications |= EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
>            }
> +
> +          Status = gRT->SetVariable (
> +                          EFI_OS_INDICATIONS_VARIABLE_NAME,
> +                          &gEfiGlobalVariableGuid,
> +                          EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
> +                          sizeof (OsIndications),
> +                          &OsIndications
> +                          );
>          }
>  
>          if (EFI_ERROR (Status)) {

Adding Zhichao to the CC list.

From a quick skim, the subject line and the commit message are not great
(the former is too long, the latter is empty).

Laszlo



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111562): https://edk2.groups.io/g/devel/message/111562
Mute This Topic: https://groups.io/mt/102698984/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/leave/3901457/1787277/102458076/xyzzy [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH] Modified ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c to follow error handling instead of success handling
Posted by Gao, Zhichao 5 months, 1 week ago
Please follow https://github.com/tianocore/tianocore.github.io/wiki/Commit-Message-Format for the commit message.

And introduce why you need to make the change. The error handling would be taken care later.

Thanks,
Zhichao

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Laszlo
> Ersek
> Sent: Wednesday, November 22, 2023 12:25 AM
> To: devel@edk2.groups.io; daniel.nguyen@arm.com
> Cc: Gao, Zhichao <zhichao.gao@intel.com>
> Subject: Re: [edk2-devel] [PATCH] Modified
> ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c to follow error
> handling instead of success handling
> 
> On 11/16/23 07:16, Daniel Nguyen wrote:
> > Signed-off-by: Daniel Nguyen <daniel.nguyen@arm.com>
> > ---
> >  .../UefiShellLevel2CommandsLib/Reset.c        | 43 +++++++++++--------
> >  1 file changed, 24 insertions(+), 19 deletions(-)
> >
> > diff --git a/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
> > b/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
> > index 57ba3c90f3..361c47e430 100644
> > --- a/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
> > +++ b/ShellPkg/Library/UefiShellLevel2CommandsLib/Reset.c
> > @@ -79,30 +79,35 @@ ShellCommandRunReset (
> >                            &DataSize,
> >                            &OsIndications
> >                            );
> > -        if (!EFI_ERROR (Status)) {
> > -          if ((OsIndications & EFI_OS_INDICATIONS_BOOT_TO_FW_UI) != 0) {
> > -            DataSize = sizeof (OsIndications);
> > -            Status   = gRT->GetVariable (
> > -                              EFI_OS_INDICATIONS_VARIABLE_NAME,
> > -                              &gEfiGlobalVariableGuid,
> > -                              &Attr,
> > -                              &DataSize,
> > -                              &OsIndications
> > -                              );
> > -            if (!EFI_ERROR (Status)) {
> > -              OsIndications |= EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
> > -            } else {
> > -              OsIndications = EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
> > -            }
> > -
> > -            Status = gRT->SetVariable (
> > +
> > +        if (EFI_ERROR (Status)) {
> > +          ShellStatus = SHELL_UNSUPPORTED;
> > +          goto Error;
> > +        }
> > +
> > +        if ((OsIndications & EFI_OS_INDICATIONS_BOOT_TO_FW_UI) != 0) {
> > +          DataSize = sizeof (OsIndications);
> > +          Status   = gRT->GetVariable (
> >                              EFI_OS_INDICATIONS_VARIABLE_NAME,
> >                              &gEfiGlobalVariableGuid,
> > -                            EFI_VARIABLE_NON_VOLATILE |
> EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
> > -                            sizeof (OsIndications),
> > +                            &Attr,
> > +                            &DataSize,
> >                              &OsIndications
> >                              );
> > +
> > +          if (EFI_ERROR (Status)) {
> > +            OsIndications = EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
> > +          } else {
> > +            OsIndications |= EFI_OS_INDICATIONS_BOOT_TO_FW_UI;
> >            }
> > +
> > +          Status = gRT->SetVariable (
> > +                          EFI_OS_INDICATIONS_VARIABLE_NAME,
> > +                          &gEfiGlobalVariableGuid,
> > +                          EFI_VARIABLE_NON_VOLATILE |
> EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
> > +                          sizeof (OsIndications),
> > +                          &OsIndications
> > +                          );
> >          }
> >
> >          if (EFI_ERROR (Status)) {
> 
> Adding Zhichao to the CC list.
> 
> From a quick skim, the subject line and the commit message are not great
> (the former is too long, the latter is empty).
> 
> Laszlo
> 
> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111591): https://edk2.groups.io/g/devel/message/111591
Mute This Topic: https://groups.io/mt/102698984/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-