public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "G Edhaya Chandran" <edhaya.chandran@arm.com>
To: Gao Jie <gaojie@byosoft.com.cn>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>
Subject: Re: [edk2-devel] [PATCH 1/1] UEFI-SCT: SctPkg: Updated the check for monotonic count after restart
Date: Fri, 8 Apr 2022 11:46:05 +0000	[thread overview]
Message-ID: <AS1PR08MB74754ECE7E6BA082E53DED90E8E99@AS1PR08MB7475.eurprd08.prod.outlook.com> (raw)
In-Reply-To: <001401d84b12$7d6f2480$784d6d80$@byosoft.com.cn>

Hi Barton,

    Thank you for the review.
Could you please upstream the patch.

With Warm Regards,
Edhay


> -----Original Message-----
> From: Gao Jie <gaojie@byosoft.com.cn>
> Sent: 08 April 2022 12:03
> To: devel@edk2.groups.io; G Edhaya Chandran <Edhaya.Chandran@arm.com>
> Subject: 回复: [edk2-devel] [PATCH 1/1] UEFI-SCT: SctPkg: Updated the check
> for monotonic count after restart
>
> Hi Eday,
>
> The patch looks good to me.
>
> Reviewed-by: Barton Gao <gaojie@byosoft.com.cn>
>
> Thanks
> Barton
>
> -----邮件原件-----
> 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 G Edhaya
> Chandran
> 发送时间: 2022年3月3日 16:59
> 收件人: devel@edk2.groups.io
> 主题: [edk2-devel] [PATCH 1/1] UEFI-SCT: SctPkg: Updated the check for
> monotonic count after restart
>
> Updated the check for montonic count in the case of after restart
>
> From the UEFI Spec:
> "The platform’s monotonic counter is comprised of two parts: the high 32 bits
> and the low 32 bits.
> The low 32-bit value is volatile and is reset to zero on every system reset.
> It is increased by 1 on every call to GetNextMonotonicCount().
> The high 32-bit value is nonvolatile and is increased by one on whenever the
> system resets or the low 32-bit counter overflows."
>
> It was found in one case where the higher 32-bit increased by 2 presumably
> due to the overflow of lower 32-bit counter.
> Update the logic to handle this case and to print a warning.
>
> Please find more details in the ticket:
> https://bugzilla.tianocore.org/show_bug.cgi?id=2774
>
> Cc: Barton Gao <gaojie@byosoft.com.cn>
> Cc: Carolyn Gjertsen <Carolyn.Gjertsen@amd.com>
> Cc: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
> Cc: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com>
>
> Signed-off-by: G Edhaya Chandran<edhaya.chandran@arm.com>
> ---
>  .../MiscBootServicesBBTestFunction.c          | 20 +++++++++++++------
>  1 file changed, 14 insertions(+), 6 deletions(-)
>
> diff --git a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/BootServices/MiscBootServices/BlackBoxTest/Mi
> scBootServicesBBTestFunction.c b/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/BootServices/MiscBootServices/BlackBoxTest/Mi
> scBootServicesBBTestFunction.c
> index 5d631c16d58b..12703d46f98c 100644
> --- a/uefi-
> sct/SctPkg/TestCase/UEFI/EFI/BootServices/MiscBootServices/BlackBoxTest/Mi
> scBootServicesBBTestFunction.c
> +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/BootServices/MiscBootServices/Bl
> +++ ackBoxTest/MiscBootServicesBBTestFunction.c
> @@ -1707,12 +1707,20 @@ GetNextMonotonicCountStep2:
>                     TplArray[Index]
>                     );
>
> -    if (SctRShiftU64 (Count2, 32) == SctRShiftU64 (Count, 32) + 1) {
> -      AssertionType = EFI_TEST_ASSERTION_PASSED;
> -    } else {
> -      AssertionType = EFI_TEST_ASSERTION_FAILED;
> -    }
> -    StandardLib->RecordAssertion (
> +    //The new count of upper 32 bits must be atleast 1 more than the old count.
> +    //Pass case: new count is equal to old count + 1
> +    if (SctRShiftU64 (Count2, 32) <= SctRShiftU64 (Count, 32)) {
> +      AssertionType = EFI_TEST_ASSERTION_FAILED;
> +    } else {
> +      //If new count is more that old count + 1, then print warning.
> +      if (SctRShiftU64 (Count2, 32) > SctRShiftU64 (Count, 32) + 1) {
> +        AssertionType = EFI_TEST_ASSERTION_WARNING;
> +      } else {
> +        //new count == old count + 1
> +        AssertionType = EFI_TEST_ASSERTION_PASSED;
> +      }
> +   }
> +   StandardLib->RecordAssertion (
>                     StandardLib,
>                     AssertionType,
>                     Index==0? \
> --
> 2.17.1
>
>
>
> 
>
>
>

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.

  reply	other threads:[~2022-04-08 11:46 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-03  8:58 [PATCH 1/1] UEFI-SCT: SctPkg: Updated the check for monotonic count after restart G Edhaya Chandran
2022-04-08  6:32 ` 回复: [edk2-devel] " Gao Jie
2022-04-08 11:46   ` G Edhaya Chandran [this message]
2022-04-19 12:16 ` G Edhaya Chandran

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AS1PR08MB74754ECE7E6BA082E53DED90E8E99@AS1PR08MB7475.eurprd08.prod.outlook.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox