Reviewed-by: Michael D Kinney <[email protected]>

> -----Original Message-----
> From: Jin, Eric
> Sent: Monday, April 15, 2019 8:02 PM
> To: [email protected]
> Cc: Kinney, Michael D <[email protected]>
> Subject:
> [Staging/Bug_1525_FmpDevicePkg_MultipleControllers][PAT
> CH] MdeModulePkg/EsrtFmpDxe: Correct the
> LastAttemptVersion algorithm in ESRT entry
> 
> Fix the 1nd issue mentioned in
> https://bugzilla.tianocore.org/show_bug.cgi?id=1525
> 
> Update the ESRT entry with the last attempt status and
> last attempt
> version from the first FMP instance whose last attempt
> status is not
> SUCCESS. If all FMP instances are SUCCESS, then set
> last attempt version
> to the smallest value from all FMP instances
> 
> CC: Michael D Kinney <[email protected]>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Eric Jin <[email protected]>
> ---
>  MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmp.c | 14
> ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
> 
> diff --git
> a/MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmp.c
> b/MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmp.c
> index bd92d1da40..848bd44e9d 100644
> --- a/MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmp.c
> +++ b/MdeModulePkg/Universal/EsrtFmpDxe/EsrtFmp.c
> @@ -196,20 +196,22 @@ CreateEsrtEntry (
>        // VERSION 3 supports last attempt values
>        //
>        if (FmpVersion >= 3) {
> -        Entry->LastAttemptVersion =
> -          MIN (
> -            FmpImageInfoBuf->LastAttemptVersion,
> -            Entry->LastAttemptVersion
> -            );
>          //
>          // Update the ESRT entry with the last attempt
> status and last attempt
>          // version from the first FMP instance whose
> last attempt status is not
> -        // SUCCESS.
> +        // SUCCESS.  If all FMP instances are SUCCESS,
> then set version to the
> +        // smallest value from all FMP instances.
>          //
>          if (Entry->LastAttemptStatus ==
> LAST_ATTEMPT_STATUS_SUCCESS) {
>            if (FmpImageInfoBuf->LastAttemptStatus !=
> LAST_ATTEMPT_STATUS_SUCCESS) {
>              Entry->LastAttemptStatus =
> FmpImageInfoBuf->LastAttemptStatus;
>              Entry->LastAttemptVersion =
> FmpImageInfoBuf->LastAttemptVersion;
> +          } else {
> +            Entry->LastAttemptVersion =
> +              MIN (
> +                FmpImageInfoBuf->LastAttemptVersion,
> +                Entry->LastAttemptVersion
> +                );
>            }
>          }
>        }
> --
> 2.20.1.windows.1


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

View/Reply Online (#39178): https://edk2.groups.io/g/devel/message/39178
Mute This Topic: https://groups.io/mt/31196314/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to