According to the feebacks from Paolo, the following changes are made in
this version of patch series:
a. Refine the code logic in Tpl.c to void left shifting the negative
value. Also makes the code more readable;
b. Remove the '~' operator before 'Time.Hour' in DxeNetLib.c, since it
seems like an implementation choice for generating the seed;
c. Use '1U' instead of '(UINT32)1' in Crc32.c.
V1 history:
The series resolves two kinds of undefined behaviours in left shift
operations:
a. Left-shifting negative values;
b. Left-shifting that incurs the result being out of range.
Cc: Steven Shi <steven.shi@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Fu Siyuan <siyuan.fu@intel.com>
Cc: Ye Ting <ting.ye@intel.com>
Cc: Wu Jiaxin <jiaxin.wu@intel.com>
Cc: Qin Long <qin.long@intel.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Hao Wu (6):
MdePkg/PrintLib: Fix possible negative value left shift
MdeModulePkg/PrintLib: Fix possible negative value left shift
MdeModulePkg/Tpl: Fix negative value left shift
MdeModulePkg/DxeNetLib: Fix negative value left shift
MdeModulePkg/Crc32: Fix possible out of range left shift
MdeModulePkg/AtaAtapiPassThru: Fix possible out of range left shift
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AhciMode.c | 4 ++--
MdeModulePkg/Core/Dxe/Event/Tpl.c | 12 +++++++++---
MdeModulePkg/Core/RuntimeDxe/Crc32.c | 6 +++---
MdeModulePkg/Library/DxeNetLib/DxeNetLib.c | 2 +-
MdeModulePkg/Library/DxePrintLibPrint2Protocol/PrintLib.c | 2 +-
MdePkg/Library/BasePrintLib/PrintLibInternal.c | 2 +-
6 files changed, 17 insertions(+), 11 deletions(-)
--
2.12.0.windows.1
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel