Re: [edk2] [PATCH v2 00/15] rid PiSmmCpuDxeSmm of DB-encoded instructions

2018-04-04 Thread Laszlo Ersek
On 04/04/18 10:56, Gao, Liming wrote:
> Laszlo:
>   I have no other comments. The patch is good to me. Reviewed-by: Liming Gao 
> 

Thank you Liming! I also thank Mike for the initial idea with the labels
after the instructions, and for his v1 review.

Commit range aae02dccf5b0..d22c995a4814.

Laszlo
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] [PATCH v2 00/15] rid PiSmmCpuDxeSmm of DB-encoded instructions

2018-04-04 Thread Gao, Liming
Laszlo:
  I have no other comments. The patch is good to me. Reviewed-by: Liming Gao 
<liming@intel.com>

Thanks
Liming
>-Original Message-
>From: Laszlo Ersek [mailto:ler...@redhat.com]
>Sent: Tuesday, April 03, 2018 8:57 PM
>To: edk2-devel-01 <edk2-devel@lists.01.org>
>Cc: Kinney, Michael D <michael.d.kin...@intel.com>; Dong, Eric
><eric.d...@intel.com>; Gao, Liming <liming....@intel.com>
>Subject: Re: [edk2] [PATCH v2 00/15] rid PiSmmCpuDxeSmm of DB-encoded
>instructions
>
>Hi Mike, Liming, Eric,
>
>On 03/23/18 22:14, Laszlo Ersek wrote:
>> Repo:   https://github.com/lersek/edk2.git
>> Branch: patch_insn_x86_v2
>>
>> This is version 2 of the series originally posted at
>> <https://lists.01.org/pipermail/edk2-devel/2018-February/020907.html>.
>> The changes are documented per patch.
>>
>> I retested the test cases listed in the v1 blurb.
>>
>> Cc: Eric Dong <eric.d...@intel.com>
>> Cc: Liming Gao <liming@intel.com>
>> Cc: Michael D Kinney <michael.d.kin...@intel.com>
>
>do you have any comments?
>
>Thank you!
>Laszlo
>
>> Laszlo Ersek (15):
>>   MdePkg/BaseLib.h: state preprocessing conditions in comments after
>> #endifs
>>   MdePkg/BaseLib: add PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: remove *.S and *.asm assembly files
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmbase" with
>PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmiStack" with
>> PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmiCr3" with
>PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "XdSupported" with
>> PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: remove unneeded DBs from X64
>SmmStartup()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr3" with
>PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr4" with
>PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr0" with
>PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: eliminate "gSmmJmpAddr" and related
>DBs
>>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmInitStack" with
>> PatchInstructionX86()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: remove DBs from
>> SmmRelocationSemaphoreComplete32()
>>   UefiCpuPkg/PiSmmCpuDxeSmm: use mnemonics for
>FXSAVE(64)/FXRSTOR(64)
>>
>>  MdePkg/Include/Library/BaseLib.h |  76 ++-
>>  MdePkg/Library/BaseLib/BaseLib.inf   |   2 +
>>  MdePkg/Library/BaseLib/X86PatchInstruction.c |  89 +++
>>  UefiCpuPkg/PiSmmCpuDxeSmm/CpuS3.c|   4 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.S | 165 -
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.asm   | 168 -
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.S| 215 --
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.asm  | 223 --
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm |  25 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.S| 696 -
>--
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.asm  | 713 ---
>-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.nasm |   8 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.S |  84 ---
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.asm   |  94 ---
>>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.nasm  |  30 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c   |  27 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h   |  21 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf |  20 -
>>  UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfile.c   |   7 +
>>  UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfileInternal.h   |   1 +
>>  UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c   |  20 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.S  | 204 --
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.asm| 206 --
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/Semaphore.c|  16 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.S | 243 ---
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.asm   | 242 ---
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm  |  31 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.S | 365 --
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.asm   | 383 ---
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.nasm  |   4 +-
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.S  | 141 
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.asm| 132 
>>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.nasm   |  76 +

Re: [edk2] [PATCH v2 00/15] rid PiSmmCpuDxeSmm of DB-encoded instructions

2018-04-03 Thread Laszlo Ersek
Hi Mike, Liming, Eric,

On 03/23/18 22:14, Laszlo Ersek wrote:
> Repo:   https://github.com/lersek/edk2.git
> Branch: patch_insn_x86_v2
> 
> This is version 2 of the series originally posted at
> .
> The changes are documented per patch.
> 
> I retested the test cases listed in the v1 blurb.
> 
> Cc: Eric Dong 
> Cc: Liming Gao 
> Cc: Michael D Kinney 

do you have any comments?

Thank you!
Laszlo

> Laszlo Ersek (15):
>   MdePkg/BaseLib.h: state preprocessing conditions in comments after
> #endifs
>   MdePkg/BaseLib: add PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: remove *.S and *.asm assembly files
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmbase" with PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmiStack" with
> PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmiCr3" with PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "XdSupported" with
> PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: remove unneeded DBs from X64 SmmStartup()
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr3" with PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr4" with PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr0" with PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: eliminate "gSmmJmpAddr" and related DBs
>   UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmInitStack" with
> PatchInstructionX86()
>   UefiCpuPkg/PiSmmCpuDxeSmm: remove DBs from
> SmmRelocationSemaphoreComplete32()
>   UefiCpuPkg/PiSmmCpuDxeSmm: use mnemonics for FXSAVE(64)/FXRSTOR(64)
> 
>  MdePkg/Include/Library/BaseLib.h |  76 ++-
>  MdePkg/Library/BaseLib/BaseLib.inf   |   2 +
>  MdePkg/Library/BaseLib/X86PatchInstruction.c |  89 +++
>  UefiCpuPkg/PiSmmCpuDxeSmm/CpuS3.c|   4 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.S | 165 -
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.asm   | 168 -
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.S| 215 --
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.asm  | 223 --
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm |  25 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.S| 696 ---
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.asm  | 713 
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.nasm |   8 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.S |  84 ---
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.asm   |  94 ---
>  UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.nasm  |  30 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c   |  27 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h   |  21 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf |  20 -
>  UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfile.c   |   7 +
>  UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfileInternal.h   |   1 +
>  UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c   |  20 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.S  | 204 --
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.asm| 206 --
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/Semaphore.c|  16 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.S | 243 ---
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.asm   | 242 ---
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm  |  31 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.S | 365 --
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.asm   | 383 ---
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.nasm  |   4 +-
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.S  | 141 
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.asm| 132 
>  UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.nasm   |  76 +--
>  33 files changed, 295 insertions(+), 4436 deletions(-)
>  create mode 100644 MdePkg/Library/BaseLib/X86PatchInstruction.c
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.asm
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.asm
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.asm
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.asm
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.asm
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.asm
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.asm
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.S
>  delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.asm
> 


[edk2] [PATCH v2 00/15] rid PiSmmCpuDxeSmm of DB-encoded instructions

2018-03-23 Thread Laszlo Ersek
Repo:   https://github.com/lersek/edk2.git
Branch: patch_insn_x86_v2

This is version 2 of the series originally posted at
.
The changes are documented per patch.

I retested the test cases listed in the v1 blurb.

Cc: Eric Dong 
Cc: Liming Gao 
Cc: Michael D Kinney 

Thanks,
Laszlo

Laszlo Ersek (15):
  MdePkg/BaseLib.h: state preprocessing conditions in comments after
#endifs
  MdePkg/BaseLib: add PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: remove *.S and *.asm assembly files
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmbase" with PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmiStack" with
PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmiCr3" with PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "XdSupported" with
PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: remove unneeded DBs from X64 SmmStartup()
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr3" with PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr4" with PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmCr0" with PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: eliminate "gSmmJmpAddr" and related DBs
  UefiCpuPkg/PiSmmCpuDxeSmm: patch "gSmmInitStack" with
PatchInstructionX86()
  UefiCpuPkg/PiSmmCpuDxeSmm: remove DBs from
SmmRelocationSemaphoreComplete32()
  UefiCpuPkg/PiSmmCpuDxeSmm: use mnemonics for FXSAVE(64)/FXRSTOR(64)

 MdePkg/Include/Library/BaseLib.h |  76 ++-
 MdePkg/Library/BaseLib/BaseLib.inf   |   2 +
 MdePkg/Library/BaseLib/X86PatchInstruction.c |  89 +++
 UefiCpuPkg/PiSmmCpuDxeSmm/CpuS3.c|   4 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.S | 165 -
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.asm   | 168 -
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.S| 215 --
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.asm  | 223 --
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.nasm |  25 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.S| 696 ---
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.asm  | 713 
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.nasm |   8 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.S |  84 ---
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.asm   |  94 ---
 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.nasm  |  30 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c   |  27 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h   |  21 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf |  20 -
 UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfile.c   |   7 +
 UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfileInternal.h   |   1 +
 UefiCpuPkg/PiSmmCpuDxeSmm/SmramSaveState.c   |  20 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.S  | 204 --
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.asm| 206 --
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/Semaphore.c|  16 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.S | 243 ---
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.asm   | 242 ---
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.nasm  |  31 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.S | 365 --
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.asm   | 383 ---
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.nasm  |   4 +-
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.S  | 141 
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.asm| 132 
 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.nasm   |  76 +--
 33 files changed, 295 insertions(+), 4436 deletions(-)
 create mode 100644 MdePkg/Library/BaseLib/X86PatchInstruction.c
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/MpFuncs.asm
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiEntry.asm
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmiException.asm
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/Ia32/SmmInit.asm
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/MpFuncs.asm
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiEntry.asm
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmiException.asm
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.S
 delete mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmInit.asm

-- 
2.14.1.3.gb7cf6e02401b

___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel