On Fri, 2 Jun 2023 at 21:42, Ranbir Singh <rsi...@ventanamicro.com> wrote: > > From: Ranbir Singh <ranbir.sin...@dell.com> > > Line number 1348 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. >
What is wrong with sign extension? > Cc: Hao A Wu <hao.a...@intel.com> > Cc: Ray Ni <ray...@intel.com> > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4204 > Signed-off-by: Ranbir Singh <ranbir.sin...@dell.com> > --- > MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c > b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c > index 50406fe0270d..70c4ca27dc68 100644 > --- a/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c > +++ b/MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c > @@ -1345,7 +1345,7 @@ AtaPassThruPassThru ( > // Check logical block size > // > if ((IdentifyData->AtaData.phy_logic_sector_support & BIT12) != 0) { > - BlockSize = (UINT32)(((IdentifyData->AtaData.logic_sector_size_hi << > 16) | IdentifyData->AtaData.logic_sector_size_lo) * sizeof (UINT16)); > + BlockSize = (((UINT32)(IdentifyData->AtaData.logic_sector_size_hi << > 16) | IdentifyData->AtaData.logic_sector_size_lo) * sizeof (UINT16)); The outer parens are now redundant, which means you're assigning something to BlockSize whose type is based on the type of <something> * sizeof(UINT16), which is unsigned long not unsigned int, so this will produce a truncation warning on some compilers. If you want to suppress the coverity warning without introducing new ones, better to cast the sizeof() to (UINT32). -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#105686): https://edk2.groups.io/g/devel/message/105686 Mute This Topic: https://groups.io/mt/99293622/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-