summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRanbir Singh <Ranbir.Singh3@Dell.com>2023-07-17 19:59:10 +0800
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2023-09-20 05:47:00 +0000
commit4fb69c2bee3006b08ca2abba58843f7573e0c5c6 (patch)
tree92688084486abf8815feae99d13ccff47f5d1452
parenteb485b6438f488db5300b56949d9dad460c9f2d4 (diff)
downloadedk2-4fb69c2bee3006b08ca2abba58843f7573e0c5c6.tar.gz
edk2-4fb69c2bee3006b08ca2abba58843f7573e0c5c6.tar.bz2
edk2-4fb69c2bee3006b08ca2abba58843f7573e0c5c6.zip
MdeModulePkg/Bus/Ata/AtaBusDxe: Fix SIGN_EXTENSION Coverity issue
Line number 365 does contain a typecast with UINT32, but it is after all the operations (16-bit left shift followed by OR'ing) are over. To avoid any SIGN_EXTENSION, typecast the intermediate result after 16-bit left shift operation immediately with UINT32. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4209 Cc: Hao A Wu <hao.a.wu@intel.com> Cc: Ray Ni <ray.ni@intel.com> Signed-off-by: Ranbir Singh <Ranbir.Singh3@Dell.com> Signed-off-by: Ranbir Singh <rsingh@ventanamicro.com> Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
-rw-r--r--MdeModulePkg/Bus/Ata/AtaBusDxe/AtaPassThruExecute.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaPassThruExecute.c b/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaPassThruExecute.c
index a77852bae0..57aefa04c2 100644
--- a/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaPassThruExecute.c
+++ b/MdeModulePkg/Bus/Ata/AtaBusDxe/AtaPassThruExecute.c
@@ -362,7 +362,7 @@ IdentifyAtaDevice (
// Check logical block size
//
if ((PhyLogicSectorSupport & BIT12) != 0) {
- BlockMedia->BlockSize = (UINT32)(((IdentifyData->logic_sector_size_hi << 16) | IdentifyData->logic_sector_size_lo) * sizeof (UINT16));
+ BlockMedia->BlockSize = (UINT32)(((UINT32)(IdentifyData->logic_sector_size_hi << 16) | IdentifyData->logic_sector_size_lo) * sizeof (UINT16));
}
AtaDevice->BlockIo.Revision = EFI_BLOCK_IO_PROTOCOL_REVISION2;