FYI

On 10/15/2018 03:20 AM, Supreeth Venkatesh wrote:
Reviewed-by: Supreeth Venkatesh 
<[email protected]><mailto:[email protected]>


On 10/13/2018 05:27 PM, Eric Jin wrote:

Possible numeric underflow when calculating the starting LBA for 
ReadBlocks_Func test

Cc: Supreeth Venkatesh 
<[email protected]><mailto:[email protected]>
Cc: Jiaxin Wu <[email protected]><mailto:[email protected]>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Eric Jin <[email protected]><mailto:[email protected]>
---
  .../Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c   | 6 +++++-
  .../Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c   | 6 +++++-
  2 files changed, 10 insertions(+), 2 deletions(-)

diff --git 
a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
 
b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
index 847ff9cb..e25743b7 100644
--- 
a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
+++ 
b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
@@ -1,7 +1,7 @@
  /** @file
      Copyright 2006 - 2016 Unified EFI, Inc.<BR>
-  Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
      This program and the accompanying materials
    are licensed and made available under the terms and conditions of the BSD 
License
@@ -316,9 +316,13 @@ BBTestReadBlocksFunctionAutoTest (
            NewLba = IndexJ;
          } else if (IndexJ < 2 * MAX_DIFFERENT_LBA_FOR_TEST) {
            // from (LastBlock - MAX_DIFFERENT_LBA_FOR_TEST - 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST)  to (LastBlock - 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST)
+          if (LastBlock < MAX_DIFFERENT_LBA_FOR_TEST + 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST)
+            continue;
            NewLba = IndexJ + LastBlock - 2 * MAX_DIFFERENT_LBA_FOR_TEST - 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST;
          } else {
            // from (LastBlock/2 - MAX_DIFFERENT_LBA_FOR_TEST/2) to 
(LastBlock/2 + MAX_DIFFERENT_LBA_FOR_TEST/2)
+          if (LastBlock < MAX_DIFFERENT_LBA_FOR_TEST)
+            continue;
            NewLba = IndexJ - 2 * MAX_DIFFERENT_LBA_FOR_TEST + (SctDivU64x32 
(LastBlock, 2, &Remainder) - MAX_DIFFERENT_LBA_FOR_TEST / 2);
          }
  diff --git 
a/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
 
b/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
index 2590c035..e8d4295e 100644
--- 
a/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
+++ 
b/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/BlockIo/BlackBoxTest/BlockIoBBTestFunction.c
@@ -1,7 +1,7 @@
  /** @file
      Copyright 2006 - 2016 Unified EFI, Inc.<BR>
-  Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
      This program and the accompanying materials
    are licensed and made available under the terms and conditions of the BSD 
License
@@ -316,9 +316,13 @@ BBTestReadBlocksFunctionAutoTest (
            NewLba = IndexJ;
          } else if (IndexJ < 2 * MAX_DIFFERENT_LBA_FOR_TEST) {
            // from (LastBlock - MAX_DIFFERENT_LBA_FOR_TEST - 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST)  to (LastBlock - 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST)
+          if (LastBlock < MAX_DIFFERENT_LBA_FOR_TEST + 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST)
+            continue;
            NewLba = IndexJ + LastBlock - 2 * MAX_DIFFERENT_LBA_FOR_TEST - 
MAX_DIFFERENT_BUFFERSIZE_FOR_TEST;
          } else {
            // from (LastBlock/2 - MAX_DIFFERENT_LBA_FOR_TEST/2) to 
(LastBlock/2 + MAX_DIFFERENT_LBA_FOR_TEST/2)
+          if (LastBlock < MAX_DIFFERENT_LBA_FOR_TEST)
+            continue;
            NewLba = IndexJ - 2 * MAX_DIFFERENT_LBA_FOR_TEST + (SctDivU64x32 
(LastBlock, 2, &Remainder) - MAX_DIFFERENT_LBA_FOR_TEST / 2);
          }



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
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to