[edk2-devel] [PATCH v2 2/3] MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging

Laszlo Ersek lersek at redhat.com
Thu Jul 11 12:12:38 UTC 2019


On 07/11/19 06:05, Ni, Ray wrote:
> Laszlo, Mike,
> 
> An update to my revert proposal, I will only revert the below 2 patches:
> 
> 7c5010c7f88b790f4524c4a5311819e3af5e2752
> * MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging
> 
> 7365eb2c8cf1d7112330d09918c0c67e8d0b827a
> * UefiCpuPkg/PiSmmCpu: Enable 5 level paging when CPU supports
> 
> 
> Will keep the below patch in github.
> 7e56f8928d8461d820a81a50908adf648279f1dc
> * UefiCpuPkg/PiSmmCpu: Change variable names and comments to follow SDM
> 
> Is it good to you?
> Or the revert process needs to revert whole patch series?
> 
> Can you or someone else guide me where the revert process is documented?

(1) In general, reverts are always applied in the reverse order of the
original series.

(2) It's fine to revert a subset of the patches if, and only if:

- at any stage during the revert series, the tree builds and works

- at the end of the revert series, all previous commits that have *not*
been reverted contain the required maintainer approval tags.

(3) So, in the present case, you should first revert 7365eb2c8cf1
("UefiCpuPkg/PiSmmCpu: Enable 5 level paging when CPU supports",
2019-07-10). This is because the code introduced in said commit would
not build without the MdePkg/BaseLib.h changes.

Then, second, you should revert 7c5010c7f88b ("MdePkg/BaseLib.h: Update
IA32_CR4 structure for 5-level paging", 2019-07-10).

Please use the "git revert" command. When reverting 7365eb2c8cf1, state
that the reason for the revert is maintaining proper dependencies
(buildability). When reverting 7c5010c7f88b, please state in the commit
message that the reason for the revert is incorrect patch review workflow.

Finally (now with Mike's R-b available on the list), you can reapply the
MdePkg and UefiCpuPkg patches (in that order); just make sure that you
add Mike's R-b to the reapplied MdePkg patch.

(4) Summary:

$ git revert 7365eb2c8cf1
--> reason to state in the commit message: maintain buildability
--> add your Signed-off-by

$ git revert 7c5010c7f88b
--> reason to state in the commit message: lacking patch review process

$ git cherry-pick -x -e 7c5010c7f88b
--> append Mike's R-b to the commit message

$ git cherry-pick -x 7365eb2c8cf1
--> commit message will not be edited

$ git push

Thanks,
Laszlo



>> -----Original Message-----
>> From: Ni, Ray
>> Sent: Thursday, July 11, 2019 11:25 AM
>> To: Kinney, Michael D <michael.d.kinney at intel.com>; Laszlo Ersek
>> <lersek at redhat.com>; devel at edk2.groups.io; Dong, Eric
>> <eric.dong at intel.com>
>> Cc: Leif Lindholm <leif.lindholm at linaro.org>; Gao, Liming
>> <liming.gao at intel.com>
>> Subject: RE: [edk2-devel] [PATCH v2 2/3] MdePkg/BaseLib.h: Update
>> IA32_CR4 structure for 5-level paging
>>
>> Laszlo, Mike,
>> Sorry I did violate the process.
>> I had two assumptions which led me violate the process:
>> 1. Reviewed-by from UefiCpuPkg maintainers on this IA32_CR4 change is
>> more important
>>     than that from MdePkg maintainers. In another word, I thought if
>> UefiCpuPkg maintainers
>>     agree with this change, MdePkg maintainers should have no concerns.
>>     (It's a wrong assumption. MdePkg maintainers may have some general
>> suggestions, e.g.:
>>     name, location, comments and etc..)
>> 2. This change is directly from the published white paper and there is no
>> other option regarding
>>      this IA32_CR4 change.
>>     (It's a wrong assumption. MdePkg maintainers may have some general
>> suggestions, e.g.:
>>     name, location, comments and etc..)
>>
>> I agree I should get Reviewed-by tag from MdePkg maintainers. My
>> assumptions are wrong.
>>
>> To strictly follow the process, I will:
>> 1. Post a patch series to revert the 3 patches.
>>      Since this change doesn't break any functionality (does break the process),
>> I will wait for
>>      Reviewed-by from each package maintainer and make sure push the
>> patches after 24h.
>> 2. After step #1, post a new patch series to add the 3 patches back with
>> Reviewed-by tag from
>>     Eric and Mike, Regression-Tested-by from you.
>>
>> Do you think it follows the existing process?
>>
>> Sorry again for this violation.
>>
>> Thanks,
>> Ray
>>
>>
>>> -----Original Message-----
>>> From: Kinney, Michael D
>>> Sent: Thursday, July 11, 2019 3:39 AM
>>> To: Laszlo Ersek <lersek at redhat.com>; devel at edk2.groups.io; Dong, Eric
>>> <eric.dong at intel.com>; Ni, Ray <ray.ni at intel.com>; Kinney, Michael D
>>> <michael.d.kinney at intel.com>
>>> Cc: Leif Lindholm <leif.lindholm at linaro.org>; Gao, Liming
>>> <liming.gao at intel.com>
>>> Subject: RE: [edk2-devel] [PATCH v2 2/3] MdePkg/BaseLib.h: Update
>>> IA32_CR4 structure for 5-level paging
>>>
>>> Laszlo,
>>>
>>> I agree with your feedback.  Process must be followed.
>>>
>>> I also agree that it may make sense to add some more maintainers to
>>> the MdePkg, especially for some of the content in MdePkg that is
>>> closely related to the UefiCpuPkg content.
>>>
>>> I have reviewed this patch to the BaseLib.h.  The new LA57 bit added
>>> to IA32_CR4 matches the documentation in the white paper referenced in
>>> the series.
>>>
>>> Reviewed-by: Michael D Kinney <michael.d.kinney at intel.com>
>>>
>>> Thanks,
>>>
>>> Mike
>>>
>>>
>>>> -----Original Message-----
>>>> From: Laszlo Ersek [mailto:lersek at redhat.com]
>>>> Sent: Wednesday, July 10, 2019 10:17 AM
>>>> To: devel at edk2.groups.io; Dong, Eric <eric.dong at intel.com>; Ni, Ray
>>>> <ray.ni at intel.com>
>>>> Cc: Leif Lindholm <leif.lindholm at linaro.org>; Gao, Liming
>>>> <liming.gao at intel.com>; Kinney, Michael D
>>>> <michael.d.kinney at intel.com>
>>>> Subject: Re: [edk2-devel] [PATCH v2 2/3]
>>>> MdePkg/BaseLib.h: Update IA32_CR4 structure for 5-level paging
>>>>
>>>> Ray, Eric,
>>>>
>>>> (+Liming, +Mike, +Leif)
>>>>
>>>> On 07/09/19 03:04, Dong, Eric wrote:
>>>>> Reviewed-by: Eric Dong <eric.dong at intel.com>
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Ni, Ray
>>>>>> Sent: Wednesday, July 3, 2019 2:54 PM
>>>>>> To: devel at edk2.groups.io
>>>>>> Cc: Dong, Eric <eric.dong at intel.com>; Laszlo Ersek
>>>>>> <lersek at redhat.com>
>>>>>> Subject: [PATCH v2 2/3] MdePkg/BaseLib.h: Update
>>>> IA32_CR4 structure
>>>>>> for 5-level paging
>>>>>>
>>>>>> 5-level paging is documented in white paper:
>>>>>>
>>>> https://software.intel.com/sites/default/files/managed/2b
>>>> /80/5-
>>>>>> level_paging_white_paper.pdf
>>>>>>
>>>>>> Commit f8113e25001e715390127f23e2197252cbd6d1a2
>>>>>> changed Cpuid.h already.
>>>>>>
>>>>>> This patch updates IA32_CR4 structure to include LA57
>>>> field.
>>>>>>
>>>>>> Signed-off-by: Ray Ni <ray.ni at intel.com>
>>>>>> Cc: Eric Dong <eric.dong at intel.com>
>>>>>> Regression-tested-by: Laszlo Ersek <lersek at redhat.com>
>>>>>> ---
>>>>>>  MdePkg/Include/Library/BaseLib.h | 3 ++-
>>>>>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/MdePkg/Include/Library/BaseLib.h
>>>>>> b/MdePkg/Include/Library/BaseLib.h
>>>>>> index ebd7dd274c..a22bfc9fad 100644
>>>>>> --- a/MdePkg/Include/Library/BaseLib.h
>>>>>> +++ b/MdePkg/Include/Library/BaseLib.h
>>>>>> @@ -5324,7 +5324,8 @@ typedef union {
>>>>>>      UINT32  OSXMMEXCPT:1;   ///< Operating System
>>>> Support for
>>>>>>                              ///< Unmasked SIMD
>>>> Floating Point
>>>>>>                              ///< Exceptions.
>>>>>> -    UINT32  Reserved_0:2;   ///< Reserved.
>>>>>> +    UINT32  Reserved_2:1;   ///< Reserved.
>>>>>> +    UINT32  LA57:1;         ///< Linear Address
>>>> 57bit.
>>>>>>      UINT32  VMXE:1;         ///< VMX Enable
>>>>>>      UINT32  Reserved_1:18;  ///< Reserved.
>>>>>>    } Bits;
>>>>
>>>> I'm sorry but you will have to revert this patch series immediately.
>>>> None of the MdePkg maintainers have approved this patch -
>>>> - commit 7c5010c7f88b.
>>>>
>>>> In the first place, Mike and Liming were never CC'd on the patch, so
>>>> they may not have noticed it, even.
>>>>
>>>> The situation is very similar to the recent SM3 crypto series that I
>>>> had to revert myself. An MdePkg patch was pushed without package
>>>> owner review.
>>>>
>>>> Can you guys please revert this series immediately, without me
>>>> having to do it?
>>>>
>>>>
>>>> If we think that MdePkg should have more "M" folks, in order to
>>>> distribute the review load better, then we should address that
>>>> problem first. Ignoring rules just because that's more convenient is
>>>> not acceptable.
>>>>
>>>> Thanks,
>>>> Laszlo


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#43599): https://edk2.groups.io/g/devel/message/43599
Mute This Topic: https://groups.io/mt/32295048/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list