[coreboot-gerrit] New patch to review for coreboot: 9151a86 amd/cimx/sb?00/SATA.c: Integer overflow in loop condition

Edward O'Callaghan (eocallaghan@alterapraxis.com) gerrit at coreboot.org
Wed May 21 01:53:55 CEST 2014


Edward O'Callaghan (eocallaghan at alterapraxis.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5799

-gerrit

commit 9151a86bb2b29b34ed0f6572ebc86305126e3b22
Author: Edward O'Callaghan <eocallaghan at alterapraxis.com>
Date:   Wed May 21 09:42:56 2014 +1000

    amd/cimx/sb?00/SATA.c: Integer overflow in loop condition
    
    The conditional comparison in the for-loop construct with the constant
    300000 has an index incrementor of type 'UINT16' (aka 'unsigned short')
    which is always true.
    
    Change-Id: I932c168742163be4038728fb40833231a447fa78
    Signed-off-by: Edward O'Callaghan <eocallaghan at alterapraxis.com>
---
 src/vendorcode/amd/cimx/sb700/SATA.c | 2 +-
 src/vendorcode/amd/cimx/sb800/SATA.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/vendorcode/amd/cimx/sb700/SATA.c b/src/vendorcode/amd/cimx/sb700/SATA.c
index 09d4923..d503239 100644
--- a/src/vendorcode/amd/cimx/sb700/SATA.c
+++ b/src/vendorcode/amd/cimx/sb700/SATA.c
@@ -238,7 +238,7 @@ void sataInitAfterPciEnum(AMDSBCFG* pConfig){
 void sataDriveDetection(AMDSBCFG* pConfig, UINT32 ddBar5){
 	UINT32	ddVar0;
 	UINT8	dbPortNum, dbVar0;
-	UINT16	dwIoBase, dwVar0;
+	UINT32	dwIoBase, dwVar0;
 
 	TRACE((DMSG_SB_TRACE, "CIMx - Entering sata drive detection procedure\n\n"));
 	TRACE((DMSG_SB_TRACE, "SATA BAR5 is %X \n", ddBar5));
diff --git a/src/vendorcode/amd/cimx/sb800/SATA.c b/src/vendorcode/amd/cimx/sb800/SATA.c
index a301208..73f2968 100644
--- a/src/vendorcode/amd/cimx/sb800/SATA.c
+++ b/src/vendorcode/amd/cimx/sb800/SATA.c
@@ -568,7 +568,7 @@ sataDriveDetection (
   UINT8   dbPortNum;
   UINT8   dbVar0;
   UINT16   dwIoBase;
-  UINT16   dwVar0;
+  UINT32   dwVar0;
   if ( (pConfig->SataClass == NATIVE_IDE_MODE) || (pConfig->SataClass == LEGACY_IDE_MODE) || (pConfig->SataClass == IDE_TO_AHCI_MODE) ) {
     for ( dbPortNum = 0; dbPortNum < 4; dbPortNum++ ) {
       ReadMEM (*pBar5 + SB_SATA_BAR5_REG128 + dbPortNum * 0x80, AccWidthUint32, &ddVar0);



More information about the coreboot-gerrit mailing list