From b170806518c1e414939c8b085866544814e1ce8e Mon Sep 17 00:00:00 2001 From: Mark Wilson Date: Fri, 13 Nov 2020 08:05:18 +0800 Subject: UefiCpuPkg: Clean up save state boundary checks and comments. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2956 In functions ReadSaveStateRegisterByIndex and WriteSaveStateRegister: * check width > 4 instead of >= 4 when writing upper 32 bytes. - This improves the code but will not affect functionality. Cc: Eric Dong Reviewed-by: Ray Ni Signed-off-by: Mark Wilson --- UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c') diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c b/UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c index fc418c2500..518978c1d9 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c @@ -315,12 +315,12 @@ ReadSaveStateRegisterByIndex ( } // - // Write lower 32-bits of return buffer + // Write at most 4 of the lower bytes of the return buffer // CopyMem(Buffer, (UINT8 *)CpuSaveState + mSmmCpuWidthOffset[RegisterIndex].Offset64Lo, MIN(4, Width)); - if (Width >= 4) { + if (Width > 4) { // - // Write upper 32-bits of return buffer + // Write at most 4 of the upper bytes of the return buffer // CopyMem((UINT8 *)Buffer + 4, (UINT8 *)CpuSaveState + mSmmCpuWidthOffset[RegisterIndex].Offset64Hi, Width - 4); } @@ -546,12 +546,12 @@ WriteSaveStateRegister ( } // - // Write lower 32-bits of SMM State register + // Write at most 4 of the lower bytes of SMM State register // CopyMem((UINT8 *)CpuSaveState + mSmmCpuWidthOffset[RegisterIndex].Offset64Lo, Buffer, MIN (4, Width)); - if (Width >= 4) { + if (Width > 4) { // - // Write upper 32-bits of SMM State register + // Write at most 4 of the upper bytes of SMM State register // CopyMem((UINT8 *)CpuSaveState + mSmmCpuWidthOffset[RegisterIndex].Offset64Hi, (UINT8 *)Buffer + 4, Width - 4); } -- cgit v1.2.3