* [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL @ 2016-12-01 17:55 Laszlo Ersek 2016-12-01 17:55 ` [PATCH 1/3] MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit LoopTimes Laszlo Ersek ` (3 more replies) 0 siblings, 4 replies; 12+ messages in thread From: Laszlo Ersek @ 2016-12-01 17:55 UTC (permalink / raw) To: edk2-devel-01 Cc: David Wei, Feng Tian, Liming Gao, Mang Guo, Michael D Kinney, Star Zeng While working on S3 boot script related stuff in OVMF, I wanted to see if infinite blocking was possible in the various POLL opcodes. While edk2's implementation of IO_POLL, PCI_CONFIG_POLL and PCI_CONFIG2_POLL follows the PI spec vol5 closely, even internally (using 100ns delay units), the MEM_POLL internals differ -- they are microseconds based. That's not a problem per se (it's just a different internal opcode representation, which is fine); the problem is that the current internals don't conform to the spec: in 32-bit builds, the UINT64 number of 100ns units that the caller intends to wait for is silently truncated, for no good reason. This issue is not hard to fix (we can even keep the microseconds-based internals), so let's fix it. Repo: https://github.com/lersek/edk2/ Branch: mempoll_looptimes_64bit Cc: David Wei <david.wei@intel.com> Cc: Feng Tian <feng.tian@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Mang Guo <mang.guo@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Star Zeng <star.zeng@intel.com> Thanks Laszlo Laszlo Ersek (3): MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit LoopTimes MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit LoopTimes Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 ++++---- MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 ++++---- MdePkg/Include/Library/S3BootScriptLib.h | 2 +- MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- 6 files changed, 13 insertions(+), 13 deletions(-) -- 2.9.2 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/3] MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit LoopTimes 2016-12-01 17:55 [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Laszlo Ersek @ 2016-12-01 17:55 ` Laszlo Ersek 2016-12-01 17:55 ` [PATCH 2/3] MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save " Laszlo Ersek ` (2 subsequent siblings) 3 siblings, 0 replies; 12+ messages in thread From: Laszlo Ersek @ 2016-12-01 17:55 UTC (permalink / raw) To: edk2-devel-01; +Cc: Feng Tian, Liming Gao, Michael D Kinney, Star Zeng The BaseNull instance of S3BootScriptLib obviously doesn't care about the type of the S3BootScriptSaveMemPoll() function's LoopTimes parameter; this lib instance doesn't do anything with the parameters received in S3BootScriptSaveMemPoll(). The PiDxe instance saves the LoopTimes parameter in EFI_BOOT_SCRIPT_MEM_POLL.LoopTimes. This target field already has UINT64 type. Furthermore, the BootScriptExecuteMemPoll() function in the same library instance already uses a local UINT64 variable called LoopTimes to count up to EFI_BOOT_SCRIPT_MEM_POLL.LoopTimes. This means that the the UINTN type for S3BootScriptSaveMemPoll()'s LoopTimes parameter is an unnecessary restriction. The callers of S3BootScriptSaveMemPoll() will be updated in the next patches, functionally. At this stage, they will continue to compile, since UINT64 parameters can accept UINTN arguments. Cc: Feng Tian <feng.tian@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Star Zeng <star.zeng@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> --- MdePkg/Include/Library/S3BootScriptLib.h | 2 +- MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/MdePkg/Include/Library/S3BootScriptLib.h b/MdePkg/Include/Library/S3BootScriptLib.h index 0a8cbe355aff..3f43da879469 100644 --- a/MdePkg/Include/Library/S3BootScriptLib.h +++ b/MdePkg/Include/Library/S3BootScriptLib.h @@ -343,7 +343,7 @@ S3BootScriptSaveMemPoll ( IN VOID *BitMask, IN VOID *BitValue, IN UINTN Duration, - IN UINTN LoopTimes + IN UINT64 LoopTimes ); /** diff --git a/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c b/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c index 9ff5b80e7a36..5698c9166399 100644 --- a/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c +++ b/MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c @@ -1672,7 +1672,7 @@ S3BootScriptSaveMemPoll ( IN VOID *BitMask, IN VOID *BitValue, IN UINTN Duration, - IN UINTN LoopTimes + IN UINT64 LoopTimes ) { UINT8 Length; diff --git a/MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c b/MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c index 373ce6b388e5..3dee64746ad9 100644 --- a/MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c +++ b/MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c @@ -303,7 +303,7 @@ S3BootScriptSaveMemPoll ( IN VOID *BitMask, IN VOID *BitValue, IN UINTN Duration, - IN UINTN LoopTimes + IN UINT64 LoopTimes ) { return RETURN_SUCCESS; -- 2.9.2 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/3] MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit LoopTimes 2016-12-01 17:55 [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Laszlo Ersek 2016-12-01 17:55 ` [PATCH 1/3] MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit LoopTimes Laszlo Ersek @ 2016-12-01 17:55 ` Laszlo Ersek 2016-12-01 17:55 ` [PATCH 3/3] Vlv2TbltDevicePkg/BootScriptSaveDxe: " Laszlo Ersek 2016-12-02 1:53 ` [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Yao, Jiewen 3 siblings, 0 replies; 12+ messages in thread From: Laszlo Ersek @ 2016-12-01 17:55 UTC (permalink / raw) To: edk2-devel-01; +Cc: Feng Tian, Star Zeng The BootScriptWriteMemPoll() helper function in both drivers does the following: - pop Delay from the variable argument list as UINT64, then truncate it to UINTN, - divide Delay by 10, using DivU64x32Remainder(), then store the quotient in LoopTimes (also UINTN), - pass LoopTimes to S3BootScriptSaveMemPoll() as last argument. The truncation to UINTN is superfluous and wrong in this logic (not to mention incompatible with the PI spec); it prevents callers from specifying Delays longer than 0xFFFF_FFFF * 100ns (approximately 429 seconds == 7 minutes 9 seconds) on Ia32. In particular it prevents callers from specifying an infinite timeout (for example, 0xFFFF_FFFF_FFFF_FFFF * 100ns, approximately 58494 years). Change the type of Delay and LoopTimes to UINT64. Keep the same logic, just remove the truncations. The resultant LoopTimes values can be safely passed to S3BootScriptSaveMemPoll() thanks to the previous patch. Cc: Feng Tian <feng.tian@intel.com> Cc: Star Zeng <star.zeng@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> --- MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 ++++---- MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c b/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c index 32263c96c56b..efc0ef914064 100644 --- a/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c +++ b/MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c @@ -343,15 +343,15 @@ BootScriptWriteMemPoll ( UINT64 Address; VOID *Data; VOID *DataMask; - UINTN Delay; - UINTN LoopTimes; + UINT64 Delay; + UINT64 LoopTimes; UINT32 Remainder; Width = VA_ARG (Marker, S3_BOOT_SCRIPT_LIB_WIDTH); Address = VA_ARG (Marker, UINT64); Data = VA_ARG (Marker, VOID *); DataMask = VA_ARG (Marker, VOID *); - Delay = (UINTN)VA_ARG (Marker, UINT64); + Delay = VA_ARG (Marker, UINT64); // // According to the spec, the interval between 2 polls is 100ns, // but the unit of Duration for S3BootScriptSaveMemPoll() is microsecond(1000ns). @@ -359,7 +359,7 @@ BootScriptWriteMemPoll ( // Duration will be minimum 1(microsecond) to be minimum deviation, // so LoopTimes = Delay / 10. // - LoopTimes = (UINTN) DivU64x32Remainder ( + LoopTimes = DivU64x32Remainder ( Delay, 10, &Remainder diff --git a/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c b/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c index 739f19eac437..0d1580dc35ab 100644 --- a/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c +++ b/MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c @@ -342,15 +342,15 @@ BootScriptWriteMemPoll ( UINT64 Address; VOID *Data; VOID *DataMask; - UINTN Delay; - UINTN LoopTimes; + UINT64 Delay; + UINT64 LoopTimes; UINT32 Remainder; Width = VA_ARG (Marker, S3_BOOT_SCRIPT_LIB_WIDTH); Address = VA_ARG (Marker, UINT64); Data = VA_ARG (Marker, VOID *); DataMask = VA_ARG (Marker, VOID *); - Delay = (UINTN)VA_ARG (Marker, UINT64); + Delay = VA_ARG (Marker, UINT64); // // According to the spec, the interval between 2 polls is 100ns, // but the unit of Duration for S3BootScriptSaveMemPoll() is microsecond(1000ns). @@ -358,7 +358,7 @@ BootScriptWriteMemPoll ( // Duration will be minimum 1(microsecond) to be minimum deviation, // so LoopTimes = Delay / 10. // - LoopTimes = (UINTN) DivU64x32Remainder ( + LoopTimes = DivU64x32Remainder ( Delay, 10, &Remainder -- 2.9.2 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/3] Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes 2016-12-01 17:55 [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Laszlo Ersek 2016-12-01 17:55 ` [PATCH 1/3] MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit LoopTimes Laszlo Ersek 2016-12-01 17:55 ` [PATCH 2/3] MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save " Laszlo Ersek @ 2016-12-01 17:55 ` Laszlo Ersek 2016-12-02 1:53 ` [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Yao, Jiewen 3 siblings, 0 replies; 12+ messages in thread From: Laszlo Ersek @ 2016-12-01 17:55 UTC (permalink / raw) To: edk2-devel-01; +Cc: David Wei, Mang Guo The BootScriptMemPoll() helper function does the following: - pop LoopTimes from the variable argument list as UINT64, then truncate it to UINTN, - pass the truncated value to S3BootScriptSaveMemPoll() as last argument. The truncation to UINTN is now superfluous, thanks to the patch titled "MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit LoopTimes". Cc: David Wei <david.wei@intel.com> Cc: Mang Guo <mang.guo@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> --- Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c b/Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c index af7b9680b643..4c6667df0c61 100644 --- a/Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c +++ b/Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c @@ -348,14 +348,14 @@ BootScriptMemPoll ( UINT8 *BitMask; UINT8 *BitValue; UINTN Duration; - UINTN LoopTimes; + UINT64 LoopTimes; Width = VA_ARG (Marker, S3_BOOT_SCRIPT_LIB_WIDTH); Address = VA_ARG (Marker, UINT64); BitMask = VA_ARG (Marker, UINT8 *); BitValue = VA_ARG (Marker, UINT8 *); Duration = (UINTN)VA_ARG (Marker, UINT64); - LoopTimes = (UINTN)VA_ARG (Marker, UINT64); + LoopTimes = VA_ARG (Marker, UINT64); return S3BootScriptSaveMemPoll (Width, Address, BitMask, BitValue, Duration, LoopTimes); } -- 2.9.2 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-01 17:55 [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Laszlo Ersek ` (2 preceding siblings ...) 2016-12-01 17:55 ` [PATCH 3/3] Vlv2TbltDevicePkg/BootScriptSaveDxe: " Laszlo Ersek @ 2016-12-02 1:53 ` Yao, Jiewen 2016-12-02 4:54 ` Zeng, Star 3 siblings, 1 reply; 12+ messages in thread From: Yao, Jiewen @ 2016-12-02 1:53 UTC (permalink / raw) To: Laszlo Ersek, edk2-devel-01 Cc: Tian, Feng, Gao, Liming, Kinney, Michael D, Zeng, Star, Wei, David HI Laszlo Thank you to raise this long time existing issue. :-) There is historic reason that we inherit this undocumented API from EDK-I to EDKII. I do not object your update. I am thinking if it is time to create a new API which can match PI specification, and suggest all consumers use the new API. RETURN_STATUS EFIAPI S3BootScriptSavePiMemPoll ( IN S3_BOOT_SCRIPT_LIB_WIDTH Width, IN UINT64 Address, IN VOID *Data, IN VOID *DataMask, IN UINT64 Delay, ); Thank you Yao Jiewen > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Laszlo Ersek > Sent: Friday, December 2, 2016 1:56 AM > To: edk2-devel-01 <edk2-devel@ml01.01.org> > Cc: Tian, Feng <feng.tian@intel.com>; Gao, Liming <liming.gao@intel.com>; > Kinney, Michael D <michael.d.kinney@intel.com>; Zeng, Star > <star.zeng@intel.com>; Wei, David <david.wei@intel.com> > Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: > 64-bit LoopTimes in S3 MEM_POLL > > While working on S3 boot script related stuff in OVMF, I wanted to see > if infinite blocking was possible in the various POLL opcodes. While > edk2's implementation of IO_POLL, PCI_CONFIG_POLL and > PCI_CONFIG2_POLL > follows the PI spec vol5 closely, even internally (using 100ns delay > units), the MEM_POLL internals differ -- they are microseconds based. > > That's not a problem per se (it's just a different internal opcode > representation, which is fine); the problem is that the current > internals don't conform to the spec: in 32-bit builds, the UINT64 number > of 100ns units that the caller intends to wait for is silently > truncated, for no good reason. This issue is not hard to fix (we can > even keep the microseconds-based internals), so let's fix it. > > Repo: https://github.com/lersek/edk2/ > Branch: mempoll_looptimes_64bit > > Cc: David Wei <david.wei@intel.com> > Cc: Feng Tian <feng.tian@intel.com> > Cc: Liming Gao <liming.gao@intel.com> > Cc: Mang Guo <mang.guo@intel.com> > Cc: Michael D Kinney <michael.d.kinney@intel.com> > Cc: Star Zeng <star.zeng@intel.com> > > Thanks > Laszlo > > Laszlo Ersek (3): > MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit > LoopTimes > MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit > LoopTimes > Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes > > MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- > MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 > ++++---- > MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 > ++++---- > MdePkg/Include/Library/S3BootScriptLib.h | 2 +- > MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- > Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- > 6 files changed, 13 insertions(+), 13 deletions(-) > > -- > 2.9.2 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-02 1:53 ` [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Yao, Jiewen @ 2016-12-02 4:54 ` Zeng, Star 2016-12-02 9:46 ` Laszlo Ersek 0 siblings, 1 reply; 12+ messages in thread From: Zeng, Star @ 2016-12-02 4:54 UTC (permalink / raw) To: Yao, Jiewen, Laszlo Ersek, edk2-devel-01 Cc: Kinney, Michael D, Tian, Feng, Gao, Liming, Wei, David, star.zeng On 2016/12/2 9:53, Yao, Jiewen wrote: > HI Laszlo > Thank you to raise this long time existing issue. :-) > > There is historic reason that we inherit this undocumented API from EDK-I to EDKII. > > I do not object your update. > I am thinking if it is time to create a new API which can match PI specification, and suggest all consumers use the new API. > > RETURN_STATUS > EFIAPI > S3BootScriptSavePiMemPoll ( > IN S3_BOOT_SCRIPT_LIB_WIDTH Width, > IN UINT64 Address, > IN VOID *Data, > IN VOID *DataMask, > IN UINT64 Delay, > ); If the new API is introduced, the old one could be marked as deprecated by DISABLE_NEW_DEPRECATED_INTERFACES. Thanks, Star > > Thank you > Yao Jiewen > > >> -----Original Message----- >> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >> Laszlo Ersek >> Sent: Friday, December 2, 2016 1:56 AM >> To: edk2-devel-01 <edk2-devel@ml01.01.org> >> Cc: Tian, Feng <feng.tian@intel.com>; Gao, Liming <liming.gao@intel.com>; >> Kinney, Michael D <michael.d.kinney@intel.com>; Zeng, Star >> <star.zeng@intel.com>; Wei, David <david.wei@intel.com> >> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >> 64-bit LoopTimes in S3 MEM_POLL >> >> While working on S3 boot script related stuff in OVMF, I wanted to see >> if infinite blocking was possible in the various POLL opcodes. While >> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >> PCI_CONFIG2_POLL >> follows the PI spec vol5 closely, even internally (using 100ns delay >> units), the MEM_POLL internals differ -- they are microseconds based. >> >> That's not a problem per se (it's just a different internal opcode >> representation, which is fine); the problem is that the current >> internals don't conform to the spec: in 32-bit builds, the UINT64 number >> of 100ns units that the caller intends to wait for is silently >> truncated, for no good reason. This issue is not hard to fix (we can >> even keep the microseconds-based internals), so let's fix it. >> >> Repo: https://github.com/lersek/edk2/ >> Branch: mempoll_looptimes_64bit >> >> Cc: David Wei <david.wei@intel.com> >> Cc: Feng Tian <feng.tian@intel.com> >> Cc: Liming Gao <liming.gao@intel.com> >> Cc: Mang Guo <mang.guo@intel.com> >> Cc: Michael D Kinney <michael.d.kinney@intel.com> >> Cc: Star Zeng <star.zeng@intel.com> >> >> Thanks >> Laszlo >> >> Laszlo Ersek (3): >> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >> LoopTimes >> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >> LoopTimes >> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >> >> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >> ++++---- >> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >> ++++---- >> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >> 6 files changed, 13 insertions(+), 13 deletions(-) >> >> -- >> 2.9.2 >> >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.01.org >> https://lists.01.org/mailman/listinfo/edk2-devel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-02 4:54 ` Zeng, Star @ 2016-12-02 9:46 ` Laszlo Ersek 2016-12-02 23:56 ` Yao, Jiewen 0 siblings, 1 reply; 12+ messages in thread From: Laszlo Ersek @ 2016-12-02 9:46 UTC (permalink / raw) To: Zeng, Star, Yao, Jiewen, edk2-devel-01 Cc: Kinney, Michael D, Tian, Feng, Gao, Liming, Wei, David On 12/02/16 05:54, Zeng, Star wrote: > On 2016/12/2 9:53, Yao, Jiewen wrote: >> HI Laszlo >> Thank you to raise this long time existing issue. :-) >> >> There is historic reason that we inherit this undocumented API from >> EDK-I to EDKII. >> >> I do not object your update. Thanks! >> I am thinking if it is time to create a new API which can match PI >> specification, and suggest all consumers use the new API. >> >> RETURN_STATUS >> EFIAPI >> S3BootScriptSavePiMemPoll ( >> IN S3_BOOT_SCRIPT_LIB_WIDTH Width, >> IN UINT64 Address, >> IN VOID *Data, >> IN VOID *DataMask, >> IN UINT64 Delay, >> ); > > If the new API is introduced, the old one could be marked as deprecated > by DISABLE_NEW_DEPRECATED_INTERFACES. That's cool, but until then, can we please accept these patches? :) Thanks! Laszlo > Thanks, > Star > >> >> Thank you >> Yao Jiewen >> >> >>> -----Original Message----- >>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >>> Laszlo Ersek >>> Sent: Friday, December 2, 2016 1:56 AM >>> To: edk2-devel-01 <edk2-devel@ml01.01.org> >>> Cc: Tian, Feng <feng.tian@intel.com>; Gao, Liming >>> <liming.gao@intel.com>; >>> Kinney, Michael D <michael.d.kinney@intel.com>; Zeng, Star >>> <star.zeng@intel.com>; Wei, David <david.wei@intel.com> >>> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >>> 64-bit LoopTimes in S3 MEM_POLL >>> >>> While working on S3 boot script related stuff in OVMF, I wanted to see >>> if infinite blocking was possible in the various POLL opcodes. While >>> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >>> PCI_CONFIG2_POLL >>> follows the PI spec vol5 closely, even internally (using 100ns delay >>> units), the MEM_POLL internals differ -- they are microseconds based. >>> >>> That's not a problem per se (it's just a different internal opcode >>> representation, which is fine); the problem is that the current >>> internals don't conform to the spec: in 32-bit builds, the UINT64 number >>> of 100ns units that the caller intends to wait for is silently >>> truncated, for no good reason. This issue is not hard to fix (we can >>> even keep the microseconds-based internals), so let's fix it. >>> >>> Repo: https://github.com/lersek/edk2/ >>> Branch: mempoll_looptimes_64bit >>> >>> Cc: David Wei <david.wei@intel.com> >>> Cc: Feng Tian <feng.tian@intel.com> >>> Cc: Liming Gao <liming.gao@intel.com> >>> Cc: Mang Guo <mang.guo@intel.com> >>> Cc: Michael D Kinney <michael.d.kinney@intel.com> >>> Cc: Star Zeng <star.zeng@intel.com> >>> >>> Thanks >>> Laszlo >>> >>> Laszlo Ersek (3): >>> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >>> LoopTimes >>> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >>> LoopTimes >>> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >>> >>> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >>> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >>> ++++---- >>> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >>> ++++---- >>> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >>> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >>> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >>> 6 files changed, 13 insertions(+), 13 deletions(-) >>> >>> -- >>> 2.9.2 >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.01.org >>> https://lists.01.org/mailman/listinfo/edk2-devel > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-02 9:46 ` Laszlo Ersek @ 2016-12-02 23:56 ` Yao, Jiewen 2016-12-03 18:33 ` Laszlo Ersek 0 siblings, 1 reply; 12+ messages in thread From: Yao, Jiewen @ 2016-12-02 23:56 UTC (permalink / raw) To: Laszlo Ersek, Zeng, Star, edk2-devel-01 Cc: Kinney, Michael D, Tian, Feng, Gao, Liming, Wei, David HI Laszlo Would you please give me some time, so that I could discuss internal team to see if there is any concern on this API update? The estimation will be 1 work week at most. Usually adding a new API does not need compatibility check, but updating an existing API always need. Thank you Yao Jiewen From: Laszlo Ersek [mailto:lersek@redhat.com] Sent: Friday, December 2, 2016 5:47 PM To: Zeng, Star <star.zeng@intel.com>; Yao, Jiewen <jiewen.yao@intel.com>; edk2-devel-01 <edk2-devel@ml01.01.org> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Tian, Feng <feng.tian@intel.com>; Gao, Liming <liming.gao@intel.com>; Wei, David <david.wei@intel.com> Subject: Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL On 12/02/16 05:54, Zeng, Star wrote: > On 2016/12/2 9:53, Yao, Jiewen wrote: >> HI Laszlo >> Thank you to raise this long time existing issue. :-) >> >> There is historic reason that we inherit this undocumented API from >> EDK-I to EDKII. >> >> I do not object your update. Thanks! >> I am thinking if it is time to create a new API which can match PI >> specification, and suggest all consumers use the new API. >> >> RETURN_STATUS >> EFIAPI >> S3BootScriptSavePiMemPoll ( >> IN S3_BOOT_SCRIPT_LIB_WIDTH Width, >> IN UINT64 Address, >> IN VOID *Data, >> IN VOID *DataMask, >> IN UINT64 Delay, >> ); > > If the new API is introduced, the old one could be marked as deprecated > by DISABLE_NEW_DEPRECATED_INTERFACES. That's cool, but until then, can we please accept these patches? :) Thanks! Laszlo > Thanks, > Star > >> >> Thank you >> Yao Jiewen >> >> >>> -----Original Message----- >>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >>> Laszlo Ersek >>> Sent: Friday, December 2, 2016 1:56 AM >>> To: edk2-devel-01 <edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org>> >>> Cc: Tian, Feng <feng.tian@intel.com<mailto:feng.tian@intel.com>>; Gao, Liming >>> <liming.gao@intel.com<mailto:liming.gao@intel.com>>; >>> Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Zeng, Star >>> <star.zeng@intel.com<mailto:star.zeng@intel.com>>; Wei, David <david.wei@intel.com<mailto:david.wei@intel.com>> >>> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >>> 64-bit LoopTimes in S3 MEM_POLL >>> >>> While working on S3 boot script related stuff in OVMF, I wanted to see >>> if infinite blocking was possible in the various POLL opcodes. While >>> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >>> PCI_CONFIG2_POLL >>> follows the PI spec vol5 closely, even internally (using 100ns delay >>> units), the MEM_POLL internals differ -- they are microseconds based. >>> >>> That's not a problem per se (it's just a different internal opcode >>> representation, which is fine); the problem is that the current >>> internals don't conform to the spec: in 32-bit builds, the UINT64 number >>> of 100ns units that the caller intends to wait for is silently >>> truncated, for no good reason. This issue is not hard to fix (we can >>> even keep the microseconds-based internals), so let's fix it. >>> >>> Repo: https://github.com/lersek/edk2/ >>> Branch: mempoll_looptimes_64bit >>> >>> Cc: David Wei <david.wei@intel.com<mailto:david.wei@intel.com>> >>> Cc: Feng Tian <feng.tian@intel.com<mailto:feng.tian@intel.com>> >>> Cc: Liming Gao <liming.gao@intel.com<mailto:liming.gao@intel.com>> >>> Cc: Mang Guo <mang.guo@intel.com<mailto:mang.guo@intel.com>> >>> Cc: Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>> >>> Cc: Star Zeng <star.zeng@intel.com<mailto:star.zeng@intel.com>> >>> >>> Thanks >>> Laszlo >>> >>> Laszlo Ersek (3): >>> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >>> LoopTimes >>> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >>> LoopTimes >>> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >>> >>> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >>> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >>> ++++---- >>> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >>> ++++---- >>> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >>> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >>> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >>> 6 files changed, 13 insertions(+), 13 deletions(-) >>> >>> -- >>> 2.9.2 >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> >>> https://lists.01.org/mailman/listinfo/edk2-devel > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-02 23:56 ` Yao, Jiewen @ 2016-12-03 18:33 ` Laszlo Ersek 2016-12-09 22:58 ` Yao, Jiewen 0 siblings, 1 reply; 12+ messages in thread From: Laszlo Ersek @ 2016-12-03 18:33 UTC (permalink / raw) To: Yao, Jiewen, Zeng, Star, edk2-devel-01 Cc: Kinney, Michael D, Tian, Feng, Gao, Liming, Wei, David On 12/03/16 00:56, Yao, Jiewen wrote: > HI Laszlo > > Would you please give me some time, so that I could discuss internal > team to see if there is any concern on this API update? > > > > The estimation will be 1 work week at most. > > > > Usually adding a new API does not need compatibility check, but updating > an existing API always need. Sure, thanks. Laszlo > *From:*Laszlo Ersek [mailto:lersek@redhat.com] > *Sent:* Friday, December 2, 2016 5:47 PM > *To:* Zeng, Star <star.zeng@intel.com>; Yao, Jiewen > <jiewen.yao@intel.com>; edk2-devel-01 <edk2-devel@ml01.01.org> > *Cc:* Kinney, Michael D <michael.d.kinney@intel.com>; Tian, Feng > <feng.tian@intel.com>; Gao, Liming <liming.gao@intel.com>; Wei, David > <david.wei@intel.com> > *Subject:* Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, > Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL > > > > On 12/02/16 05:54, Zeng, Star wrote: >> On 2016/12/2 9:53, Yao, Jiewen wrote: >>> HI Laszlo >>> Thank you to raise this long time existing issue. :-) >>> >>> There is historic reason that we inherit this undocumented API from >>> EDK-I to EDKII. >>> >>> I do not object your update. > > Thanks! > >>> I am thinking if it is time to create a new API which can match PI >>> specification, and suggest all consumers use the new API. >>> >>> RETURN_STATUS >>> EFIAPI >>> S3BootScriptSavePiMemPoll ( >>> IN S3_BOOT_SCRIPT_LIB_WIDTH Width, >>> IN UINT64 Address, >>> IN VOID *Data, >>> IN VOID *DataMask, >>> IN UINT64 Delay, >>> ); >> >> If the new API is introduced, the old one could be marked as deprecated >> by DISABLE_NEW_DEPRECATED_INTERFACES. > > That's cool, but until then, can we please accept these patches? :) > > Thanks! > Laszlo > >> Thanks, >> Star >> >>> >>> Thank you >>> Yao Jiewen >>> >>> >>>> -----Original Message----- >>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >>>> Laszlo Ersek >>>> Sent: Friday, December 2, 2016 1:56 AM >>>> To: edk2-devel-01 <edk2-devel@ml01.01.org <mailto:edk2-devel@ml01.01.org>> >>>> Cc: Tian, Feng <feng.tian@intel.com <mailto:feng.tian@intel.com>>; Gao, Liming >>>> <liming.gao@intel.com <mailto:liming.gao@intel.com>>; >>>> Kinney, Michael D <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>>; Zeng, Star >>>> <star.zeng@intel.com > <mailto:star.zeng@intel.com>>; Wei, David <david.wei@intel.com > <mailto:david.wei@intel.com>> >>>> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >>>> 64-bit LoopTimes in S3 MEM_POLL >>>> >>>> While working on S3 boot script related stuff in OVMF, I wanted to see >>>> if infinite blocking was possible in the various POLL opcodes. While >>>> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >>>> PCI_CONFIG2_POLL >>>> follows the PI spec vol5 closely, even internally (using 100ns delay >>>> units), the MEM_POLL internals differ -- they are microseconds based. >>>> >>>> That's not a problem per se (it's just a different internal opcode >>>> representation, which is fine); the problem is that the current >>>> internals don't conform to the spec: in 32-bit builds, the UINT64 number >>>> of 100ns units that the caller intends to wait for is silently >>>> truncated, for no good reason. This issue is not hard to fix (we can >>>> even keep the microseconds-based internals), so let's fix it. >>>> >>>> Repo: https://github.com/lersek/edk2/ >>>> Branch: mempoll_looptimes_64bit >>>> >>>> Cc: David Wei <david.wei@intel.com <mailto:david.wei@intel.com>> >>>> Cc: Feng Tian <feng.tian@intel.com <mailto:feng.tian@intel.com>> >>>> Cc: Liming Gao <liming.gao@intel.com <mailto:liming.gao@intel.com>> >>>> Cc: Mang Guo <mang.guo@intel.com <mailto:mang.guo@intel.com>> >>>> Cc: Michael D Kinney <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com>> >>>> Cc: Star Zeng <star.zeng@intel.com <mailto:star.zeng@intel.com>> >>>> >>>> Thanks >>>> Laszlo >>>> >>>> Laszlo Ersek (3): >>>> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >>>> LoopTimes >>>> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >>>> LoopTimes >>>> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >>>> >>>> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >>>> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >>>> ++++---- >>>> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >>>> ++++---- >>>> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >>>> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >>>> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >>>> 6 files changed, 13 insertions(+), 13 deletions(-) >>>> >>>> -- >>>> 2.9.2 >>>> >>>> _______________________________________________ >>>> edk2-devel mailing list >>>> edk2-devel@lists.01.org <mailto:edk2-devel@lists.01.org> >>>> https://lists.01.org/mailman/listinfo/edk2-devel >> > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-03 18:33 ` Laszlo Ersek @ 2016-12-09 22:58 ` Yao, Jiewen 2016-12-16 1:00 ` Kinney, Michael D 0 siblings, 1 reply; 12+ messages in thread From: Yao, Jiewen @ 2016-12-09 22:58 UTC (permalink / raw) To: Laszlo Ersek, Zeng, Star, edk2-devel-01 Cc: Kinney, Michael D, Tian, Feng, Gao, Liming, Wei, David Hi Laszlo According to your description on compatibility, I do not have concern. So far, I do not receive any concern from any other people, so I think it is good. Reviewed-by: Jiewen.Yao@intel.com<mailto:Jiewen.Yao@intel.com> Thank you Yao Jiewen From: Laszlo Ersek [mailto:lersek@redhat.com] Sent: Sunday, December 4, 2016 2:34 AM To: Yao, Jiewen <jiewen.yao@intel.com>; Zeng, Star <star.zeng@intel.com>; edk2-devel-01 <edk2-devel@ml01.01.org> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Tian, Feng <feng.tian@intel.com>; Gao, Liming <liming.gao@intel.com>; Wei, David <david.wei@intel.com> Subject: Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL On 12/03/16 00:56, Yao, Jiewen wrote: > HI Laszlo > > Would you please give me some time, so that I could discuss internal > team to see if there is any concern on this API update? > > > > The estimation will be 1 work week at most. > > > > Usually adding a new API does not need compatibility check, but updating > an existing API always need. Sure, thanks. Laszlo > *From:*Laszlo Ersek [mailto:lersek@redhat.com] > *Sent:* Friday, December 2, 2016 5:47 PM > *To:* Zeng, Star <star.zeng@intel.com<mailto:star.zeng@intel.com>>; Yao, Jiewen > <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; edk2-devel-01 <edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org>> > *Cc:* Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Tian, Feng > <feng.tian@intel.com<mailto:feng.tian@intel.com>>; Gao, Liming <liming.gao@intel.com<mailto:liming.gao@intel.com>>; Wei, David > <david.wei@intel.com<mailto:david.wei@intel.com>> > *Subject:* Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, > Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL > > > > On 12/02/16 05:54, Zeng, Star wrote: >> On 2016/12/2 9:53, Yao, Jiewen wrote: >>> HI Laszlo >>> Thank you to raise this long time existing issue. :-) >>> >>> There is historic reason that we inherit this undocumented API from >>> EDK-I to EDKII. >>> >>> I do not object your update. > > Thanks! > >>> I am thinking if it is time to create a new API which can match PI >>> specification, and suggest all consumers use the new API. >>> >>> RETURN_STATUS >>> EFIAPI >>> S3BootScriptSavePiMemPoll ( >>> IN S3_BOOT_SCRIPT_LIB_WIDTH Width, >>> IN UINT64 Address, >>> IN VOID *Data, >>> IN VOID *DataMask, >>> IN UINT64 Delay, >>> ); >> >> If the new API is introduced, the old one could be marked as deprecated >> by DISABLE_NEW_DEPRECATED_INTERFACES. > > That's cool, but until then, can we please accept these patches? :) > > Thanks! > Laszlo > >> Thanks, >> Star >> >>> >>> Thank you >>> Yao Jiewen >>> >>> >>>> -----Original Message----- >>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >>>> Laszlo Ersek >>>> Sent: Friday, December 2, 2016 1:56 AM >>>> To: edk2-devel-01 <edk2-devel@ml01.01.org <mailto:edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org %3cmailto:edk2-devel@ml01.01.org>>> >>>> Cc: Tian, Feng <feng.tian@intel.com <mailto:feng.tian@intel.com<mailto:feng.tian@intel.com %3cmailto:feng.tian@intel.com>>>; Gao, Liming >>>> <liming.gao@intel.com <mailto:liming.gao@intel.com<mailto:liming.gao@intel.com %3cmailto:liming.gao@intel.com>>>; >>>> Kinney, Michael D <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com %3cmailto:michael.d.kinney@intel.com>>>; Zeng, Star >>>> <star.zeng@intel.com <mailto:star.zeng@intel.com%0b>> <mailto:star.zeng@intel.com>>; Wei, David <david.wei@intel.com <mailto:david.wei@intel.com%0b>> <mailto:david.wei@intel.com>> >>>> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >>>> 64-bit LoopTimes in S3 MEM_POLL >>>> >>>> While working on S3 boot script related stuff in OVMF, I wanted to see >>>> if infinite blocking was possible in the various POLL opcodes. While >>>> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >>>> PCI_CONFIG2_POLL >>>> follows the PI spec vol5 closely, even internally (using 100ns delay >>>> units), the MEM_POLL internals differ -- they are microseconds based. >>>> >>>> That's not a problem per se (it's just a different internal opcode >>>> representation, which is fine); the problem is that the current >>>> internals don't conform to the spec: in 32-bit builds, the UINT64 number >>>> of 100ns units that the caller intends to wait for is silently >>>> truncated, for no good reason. This issue is not hard to fix (we can >>>> even keep the microseconds-based internals), so let's fix it. >>>> >>>> Repo: https://github.com/lersek/edk2/ >>>> Branch: mempoll_looptimes_64bit >>>> >>>> Cc: David Wei <david.wei@intel.com <mailto:david.wei@intel.com<mailto:david.wei@intel.com %3cmailto:david.wei@intel.com>>> >>>> Cc: Feng Tian <feng.tian@intel.com <mailto:feng.tian@intel.com<mailto:feng.tian@intel.com %3cmailto:feng.tian@intel.com>>> >>>> Cc: Liming Gao <liming.gao@intel.com <mailto:liming.gao@intel.com<mailto:liming.gao@intel.com %3cmailto:liming.gao@intel.com>>> >>>> Cc: Mang Guo <mang.guo@intel.com <mailto:mang.guo@intel.com<mailto:mang.guo@intel.com %3cmailto:mang.guo@intel.com>>> >>>> Cc: Michael D Kinney <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com %3cmailto:michael.d.kinney@intel.com>>> >>>> Cc: Star Zeng <star.zeng@intel.com <mailto:star.zeng@intel.com<mailto:star.zeng@intel.com %3cmailto:star.zeng@intel.com>>> >>>> >>>> Thanks >>>> Laszlo >>>> >>>> Laszlo Ersek (3): >>>> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >>>> LoopTimes >>>> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >>>> LoopTimes >>>> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >>>> >>>> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >>>> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >>>> ++++---- >>>> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >>>> ++++---- >>>> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >>>> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >>>> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >>>> 6 files changed, 13 insertions(+), 13 deletions(-) >>>> >>>> -- >>>> 2.9.2 >>>> >>>> _______________________________________________ >>>> edk2-devel mailing list >>>> edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> <mailto:edk2-devel@lists.01.org> >>>> https://lists.01.org/mailman/listinfo/edk2-devel >> > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-09 22:58 ` Yao, Jiewen @ 2016-12-16 1:00 ` Kinney, Michael D 2017-01-03 11:35 ` Laszlo Ersek 0 siblings, 1 reply; 12+ messages in thread From: Kinney, Michael D @ 2016-12-16 1:00 UTC (permalink / raw) To: Yao, Jiewen, Laszlo Ersek, Zeng, Star, edk2-devel-01, Kinney, Michael D Cc: Tian, Feng, Gao, Liming, Wei, David Laszlo, I agree with Jiewen that this is a compatible change. Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Mike From: Yao, Jiewen Sent: Friday, December 9, 2016 2:58 PM To: Laszlo Ersek <lersek@redhat.com>; Zeng, Star <star.zeng@intel.com>; edk2-devel-01 <edk2-devel@ml01.01.org> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Tian, Feng <feng.tian@intel.com>; Gao, Liming <liming.gao@intel.com>; Wei, David <david.wei@intel.com> Subject: RE: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Hi Laszlo According to your description on compatibility, I do not have concern. So far, I do not receive any concern from any other people, so I think it is good. Reviewed-by: Jiewen.Yao@intel.com<mailto:Jiewen.Yao@intel.com> Thank you Yao Jiewen From: Laszlo Ersek [mailto:lersek@redhat.com] Sent: Sunday, December 4, 2016 2:34 AM To: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; Zeng, Star <star.zeng@intel.com<mailto:star.zeng@intel.com>>; edk2-devel-01 <edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org>> Cc: Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Tian, Feng <feng.tian@intel.com<mailto:feng.tian@intel.com>>; Gao, Liming <liming.gao@intel.com<mailto:liming.gao@intel.com>>; Wei, David <david.wei@intel.com<mailto:david.wei@intel.com>> Subject: Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL On 12/03/16 00:56, Yao, Jiewen wrote: > HI Laszlo > > Would you please give me some time, so that I could discuss internal > team to see if there is any concern on this API update? > > > > The estimation will be 1 work week at most. > > > > Usually adding a new API does not need compatibility check, but updating > an existing API always need. Sure, thanks. Laszlo > *From:*Laszlo Ersek [mailto:lersek@redhat.com] > *Sent:* Friday, December 2, 2016 5:47 PM > *To:* Zeng, Star <star.zeng@intel.com<mailto:star.zeng@intel.com>>; Yao, Jiewen > <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; edk2-devel-01 <edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org>> > *Cc:* Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Tian, Feng > <feng.tian@intel.com<mailto:feng.tian@intel.com>>; Gao, Liming <liming.gao@intel.com<mailto:liming.gao@intel.com>>; Wei, David > <david.wei@intel.com<mailto:david.wei@intel.com>> > *Subject:* Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, > Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL > > > > On 12/02/16 05:54, Zeng, Star wrote: >> On 2016/12/2 9:53, Yao, Jiewen wrote: >>> HI Laszlo >>> Thank you to raise this long time existing issue. :-) >>> >>> There is historic reason that we inherit this undocumented API from >>> EDK-I to EDKII. >>> >>> I do not object your update. > > Thanks! > >>> I am thinking if it is time to create a new API which can match PI >>> specification, and suggest all consumers use the new API. >>> >>> RETURN_STATUS >>> EFIAPI >>> S3BootScriptSavePiMemPoll ( >>> IN S3_BOOT_SCRIPT_LIB_WIDTH Width, >>> IN UINT64 Address, >>> IN VOID *Data, >>> IN VOID *DataMask, >>> IN UINT64 Delay, >>> ); >> >> If the new API is introduced, the old one could be marked as deprecated >> by DISABLE_NEW_DEPRECATED_INTERFACES. > > That's cool, but until then, can we please accept these patches? :) > > Thanks! > Laszlo > >> Thanks, >> Star >> >>> >>> Thank you >>> Yao Jiewen >>> >>> >>>> -----Original Message----- >>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >>>> Laszlo Ersek >>>> Sent: Friday, December 2, 2016 1:56 AM >>>> To: edk2-devel-01 <edk2-devel@ml01.01.org <mailto:edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org %3cmailto:edk2-devel@ml01.01.org>>> >>>> Cc: Tian, Feng <feng.tian@intel.com <mailto:feng.tian@intel.com<mailto:feng.tian@intel.com %3cmailto:feng.tian@intel.com>>>; Gao, Liming >>>> <liming.gao@intel.com <mailto:liming.gao@intel.com<mailto:liming.gao@intel.com %3cmailto:liming.gao@intel.com>>>; >>>> Kinney, Michael D <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com %3cmailto:michael.d.kinney@intel.com>>>; Zeng, Star >>>> <star.zeng@intel.com <mailto:star.zeng@intel.com%0b>> <mailto:star.zeng@intel.com>>; Wei, David <david.wei@intel.com <mailto:david.wei@intel.com%0b>> <mailto:david.wei@intel.com>> >>>> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >>>> 64-bit LoopTimes in S3 MEM_POLL >>>> >>>> While working on S3 boot script related stuff in OVMF, I wanted to see >>>> if infinite blocking was possible in the various POLL opcodes. While >>>> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >>>> PCI_CONFIG2_POLL >>>> follows the PI spec vol5 closely, even internally (using 100ns delay >>>> units), the MEM_POLL internals differ -- they are microseconds based. >>>> >>>> That's not a problem per se (it's just a different internal opcode >>>> representation, which is fine); the problem is that the current >>>> internals don't conform to the spec: in 32-bit builds, the UINT64 number >>>> of 100ns units that the caller intends to wait for is silently >>>> truncated, for no good reason. This issue is not hard to fix (we can >>>> even keep the microseconds-based internals), so let's fix it. >>>> >>>> Repo: https://github.com/lersek/edk2/ >>>> Branch: mempoll_looptimes_64bit >>>> >>>> Cc: David Wei <david.wei@intel.com <mailto:david.wei@intel.com<mailto:david.wei@intel.com %3cmailto:david.wei@intel.com>>> >>>> Cc: Feng Tian <feng.tian@intel.com <mailto:feng.tian@intel.com<mailto:feng.tian@intel.com %3cmailto:feng.tian@intel.com>>> >>>> Cc: Liming Gao <liming.gao@intel.com <mailto:liming.gao@intel.com<mailto:liming.gao@intel.com %3cmailto:liming.gao@intel.com>>> >>>> Cc: Mang Guo <mang.guo@intel.com <mailto:mang.guo@intel.com<mailto:mang.guo@intel.com %3cmailto:mang.guo@intel.com>>> >>>> Cc: Michael D Kinney <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com %3cmailto:michael.d.kinney@intel.com>>> >>>> Cc: Star Zeng <star.zeng@intel.com <mailto:star.zeng@intel.com<mailto:star.zeng@intel.com %3cmailto:star.zeng@intel.com>>> >>>> >>>> Thanks >>>> Laszlo >>>> >>>> Laszlo Ersek (3): >>>> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >>>> LoopTimes >>>> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >>>> LoopTimes >>>> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >>>> >>>> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >>>> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >>>> ++++---- >>>> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >>>> ++++---- >>>> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >>>> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >>>> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >>>> 6 files changed, 13 insertions(+), 13 deletions(-) >>>> >>>> -- >>>> 2.9.2 >>>> >>>> _______________________________________________ >>>> edk2-devel mailing list >>>> edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> <mailto:edk2-devel@lists.01.org> >>>> https://lists.01.org/mailman/listinfo/edk2-devel >> > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL 2016-12-16 1:00 ` Kinney, Michael D @ 2017-01-03 11:35 ` Laszlo Ersek 0 siblings, 0 replies; 12+ messages in thread From: Laszlo Ersek @ 2017-01-03 11:35 UTC (permalink / raw) To: Kinney, Michael D, Yao, Jiewen, Zeng, Star, edk2-devel-01 Cc: Tian, Feng, Gao, Liming, Wei, David On 12/16/16 02:00, Kinney, Michael D wrote: > Laszlo, > > I agree with Jiewen that this is a compatible change. > > Reviewed-by: Michael Kinney <michael.d.kinney@intel.com> Thank you both for the reviews, I pushed the series: 7c6075e2546d..32ea56f0a65b. Laszlo > > Mike > > From: Yao, Jiewen > Sent: Friday, December 9, 2016 2:58 PM > To: Laszlo Ersek <lersek@redhat.com>; Zeng, Star <star.zeng@intel.com>; edk2-devel-01 <edk2-devel@ml01.01.org> > Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Tian, Feng <feng.tian@intel.com>; Gao, Liming <liming.gao@intel.com>; Wei, David <david.wei@intel.com> > Subject: RE: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL > > Hi Laszlo > According to your description on compatibility, I do not have concern. > So far, I do not receive any concern from any other people, so I think it is good. > > Reviewed-by: Jiewen.Yao@intel.com<mailto:Jiewen.Yao@intel.com> > > Thank you > Yao Jiewen > > From: Laszlo Ersek [mailto:lersek@redhat.com] > Sent: Sunday, December 4, 2016 2:34 AM > To: Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; Zeng, Star <star.zeng@intel.com<mailto:star.zeng@intel.com>>; edk2-devel-01 <edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org>> > Cc: Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Tian, Feng <feng.tian@intel.com<mailto:feng.tian@intel.com>>; Gao, Liming <liming.gao@intel.com<mailto:liming.gao@intel.com>>; Wei, David <david.wei@intel.com<mailto:david.wei@intel.com>> > Subject: Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL > > On 12/03/16 00:56, Yao, Jiewen wrote: >> HI Laszlo >> >> Would you please give me some time, so that I could discuss internal >> team to see if there is any concern on this API update? >> >> >> >> The estimation will be 1 work week at most. >> >> >> >> Usually adding a new API does not need compatibility check, but updating >> an existing API always need. > > Sure, thanks. > Laszlo > >> *From:*Laszlo Ersek [mailto:lersek@redhat.com] >> *Sent:* Friday, December 2, 2016 5:47 PM >> *To:* Zeng, Star <star.zeng@intel.com<mailto:star.zeng@intel.com>>; Yao, Jiewen >> <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; edk2-devel-01 <edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org>> >> *Cc:* Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>>; Tian, Feng >> <feng.tian@intel.com<mailto:feng.tian@intel.com>>; Gao, Liming <liming.gao@intel.com<mailto:liming.gao@intel.com>>; Wei, David >> <david.wei@intel.com<mailto:david.wei@intel.com>> >> *Subject:* Re: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, >> Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL >> >> >> >> On 12/02/16 05:54, Zeng, Star wrote: >>> On 2016/12/2 9:53, Yao, Jiewen wrote: >>>> HI Laszlo >>>> Thank you to raise this long time existing issue. :-) >>>> >>>> There is historic reason that we inherit this undocumented API from >>>> EDK-I to EDKII. >>>> >>>> I do not object your update. >> >> Thanks! >> >>>> I am thinking if it is time to create a new API which can match PI >>>> specification, and suggest all consumers use the new API. >>>> >>>> RETURN_STATUS >>>> EFIAPI >>>> S3BootScriptSavePiMemPoll ( >>>> IN S3_BOOT_SCRIPT_LIB_WIDTH Width, >>>> IN UINT64 Address, >>>> IN VOID *Data, >>>> IN VOID *DataMask, >>>> IN UINT64 Delay, >>>> ); >>> >>> If the new API is introduced, the old one could be marked as deprecated >>> by DISABLE_NEW_DEPRECATED_INTERFACES. >> >> That's cool, but until then, can we please accept these patches? :) >> >> Thanks! >> Laszlo >> >>> Thanks, >>> Star >>> >>>> >>>> Thank you >>>> Yao Jiewen >>>> >>>> >>>>> -----Original Message----- >>>>> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >>>>> Laszlo Ersek >>>>> Sent: Friday, December 2, 2016 1:56 AM >>>>> To: edk2-devel-01 <edk2-devel@ml01.01.org <mailto:edk2-devel@ml01.01.org<mailto:edk2-devel@ml01.01.org %3cmailto:edk2-devel@ml01.01.org>>> >>>>> Cc: Tian, Feng <feng.tian@intel.com <mailto:feng.tian@intel.com<mailto:feng.tian@intel.com %3cmailto:feng.tian@intel.com>>>; Gao, Liming >>>>> <liming.gao@intel.com <mailto:liming.gao@intel.com<mailto:liming.gao@intel.com %3cmailto:liming.gao@intel.com>>>; >>>>> Kinney, Michael D <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com %3cmailto:michael.d.kinney@intel.com>>>; Zeng, Star >>>>> <star.zeng@intel.com > <mailto:star.zeng@intel.com%0b>> <mailto:star.zeng@intel.com>>; Wei, David <david.wei@intel.com > <mailto:david.wei@intel.com%0b>> <mailto:david.wei@intel.com>> >>>>> Subject: [edk2] [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: >>>>> 64-bit LoopTimes in S3 MEM_POLL >>>>> >>>>> While working on S3 boot script related stuff in OVMF, I wanted to see >>>>> if infinite blocking was possible in the various POLL opcodes. While >>>>> edk2's implementation of IO_POLL, PCI_CONFIG_POLL and >>>>> PCI_CONFIG2_POLL >>>>> follows the PI spec vol5 closely, even internally (using 100ns delay >>>>> units), the MEM_POLL internals differ -- they are microseconds based. >>>>> >>>>> That's not a problem per se (it's just a different internal opcode >>>>> representation, which is fine); the problem is that the current >>>>> internals don't conform to the spec: in 32-bit builds, the UINT64 number >>>>> of 100ns units that the caller intends to wait for is silently >>>>> truncated, for no good reason. This issue is not hard to fix (we can >>>>> even keep the microseconds-based internals), so let's fix it. >>>>> >>>>> Repo: https://github.com/lersek/edk2/ >>>>> Branch: mempoll_looptimes_64bit >>>>> >>>>> Cc: David Wei <david.wei@intel.com <mailto:david.wei@intel.com<mailto:david.wei@intel.com %3cmailto:david.wei@intel.com>>> >>>>> Cc: Feng Tian <feng.tian@intel.com <mailto:feng.tian@intel.com<mailto:feng.tian@intel.com %3cmailto:feng.tian@intel.com>>> >>>>> Cc: Liming Gao <liming.gao@intel.com <mailto:liming.gao@intel.com<mailto:liming.gao@intel.com %3cmailto:liming.gao@intel.com>>> >>>>> Cc: Mang Guo <mang.guo@intel.com <mailto:mang.guo@intel.com<mailto:mang.guo@intel.com %3cmailto:mang.guo@intel.com>>> >>>>> Cc: Michael D Kinney <michael.d.kinney@intel.com <mailto:michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com %3cmailto:michael.d.kinney@intel.com>>> >>>>> Cc: Star Zeng <star.zeng@intel.com <mailto:star.zeng@intel.com<mailto:star.zeng@intel.com %3cmailto:star.zeng@intel.com>>> >>>>> >>>>> Thanks >>>>> Laszlo >>>>> >>>>> Laszlo Ersek (3): >>>>> MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit >>>>> LoopTimes >>>>> MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save 64-bit >>>>> LoopTimes >>>>> Vlv2TbltDevicePkg/BootScriptSaveDxe: save 64-bit LoopTimes >>>>> >>>>> MdeModulePkg/Library/PiDxeS3BootScriptLib/BootScriptSave.c | 2 +- >>>>> MdeModulePkg/Universal/Acpi/S3SaveStateDxe/S3SaveState.c | 8 >>>>> ++++---- >>>>> MdeModulePkg/Universal/Acpi/SmmS3SaveState/SmmS3SaveState.c | 8 >>>>> ++++---- >>>>> MdePkg/Include/Library/S3BootScriptLib.h | 2 +- >>>>> MdePkg/Library/BaseS3BootScriptLibNull/BootScriptLib.c | 2 +- >>>>> Vlv2TbltDevicePkg/BootScriptSaveDxe/ScriptSave.c | 4 ++-- >>>>> 6 files changed, 13 insertions(+), 13 deletions(-) >>>>> >>>>> -- >>>>> 2.9.2 >>>>> >>>>> _______________________________________________ >>>>> edk2-devel mailing list >>>>> edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org> <mailto:edk2-devel@lists.01.org> >>>>> https://lists.01.org/mailman/listinfo/edk2-devel >>> >> > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel > ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2017-01-03 11:36 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-12-01 17:55 [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Laszlo Ersek 2016-12-01 17:55 ` [PATCH 1/3] MdePkg, MdeModulePkg: S3BootScriptSaveMemPoll(): accept 64-bit LoopTimes Laszlo Ersek 2016-12-01 17:55 ` [PATCH 2/3] MdeModulePkg: S3SaveStateDxe, SmmS3SaveState: save " Laszlo Ersek 2016-12-01 17:55 ` [PATCH 3/3] Vlv2TbltDevicePkg/BootScriptSaveDxe: " Laszlo Ersek 2016-12-02 1:53 ` [PATCH 0/3] MdePkg, MdeModulePkg, Vlv2TbltDevicePkg: 64-bit LoopTimes in S3 MEM_POLL Yao, Jiewen 2016-12-02 4:54 ` Zeng, Star 2016-12-02 9:46 ` Laszlo Ersek 2016-12-02 23:56 ` Yao, Jiewen 2016-12-03 18:33 ` Laszlo Ersek 2016-12-09 22:58 ` Yao, Jiewen 2016-12-16 1:00 ` Kinney, Michael D 2017-01-03 11:35 ` Laszlo Ersek
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox