[edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression

Laszlo Ersek posted 1 patch 1 year, 3 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
OvmfPkg/Library/PlatformInitLib/Platform.c | 34 ++++++++++++++++++++
1 file changed, 34 insertions(+)
[edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Laszlo Ersek 1 year, 3 months ago
Repo:       https://pagure.io/lersek/edk2.git
Branch:     cpuhp-reg-catch-4250
Test build: https://github.com/tianocore/edk2/pull/3853
Bugzilla:   https://bugzilla.tianocore.org/show_bug.cgi?id=4250

NOTE: the test build linked above (in the github.com CI env) *failed*.
That's because the CI environment is affected by this very QEMU bug!

Namely, the following checks failed -- due to the intentional hang
introduced in this patch:

- PlatformCI_OvmfPkg_Ubuntu_GCC5_PR (12 tests)
- PlatformCI_OvmfPkg_Windows_VS2019_PR (11 tests)

(The Build_VS2019_TARGET_CODE_COVERAGE and
Build_GCC5_TARGET_CODE_COVERAGE tests also failed, but those seem bogus
to me.)

All 12+11=23 PlatformCI_OvmfPkg_* checks failed due to timeout, and the
firmware logs of the DEBUG and NOOPT builds end with:

> INFO - PlatformMaxCpuCountInitialization: Broken CPU hotplug register block: Present=0 Possible=1.
> INFO - PlatformMaxCpuCountInitialization: Switch QEMU's acceleration from TCG to KVM, or update QEMU.
> INFO - PlatformMaxCpuCountInitialization: Refer to <https://bugzilla.tianocore.org/show_bug.cgi?id=4250>.
> INFO - ASSERT /home/vsts/work/1/s/OvmfPkg/Library/PlatformInitLib/Platform.c(574): ((BOOLEAN)(0==1))

So I'm not proposing to merge this immediately; something must be fixed
first:

- use KVM in the CI env, or

- delay this patch until my QEMU fix is merged, and a new release is
  made, and the new QEMU release is packaged by the distros, and the new
  distro packages are picked up by github.com CI.

Suggestions?

Thanks,
Laszlo

Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Brijesh Singh <brijesh.singh@amd.com>
Cc: Erdem Aktas <erdemaktas@google.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: James Bottomley <jejb@linux.ibm.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Min Xu <min.m.xu@intel.com>
Cc: Sebastien Boeuf <sebastien.boeuf@intel.com>
Cc: Tom Lendacky <thomas.lendacky@amd.com>

Laszlo Ersek (1):
  OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression

 OvmfPkg/Library/PlatformInitLib/Platform.c | 34 ++++++++++++++++++++
 1 file changed, 34 insertions(+)



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#97945): https://edk2.groups.io/g/devel/message/97945
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Gerd Hoffmann 1 year, 3 months ago
  Hi,

> So I'm not proposing to merge this immediately; something must be fixed
> first:
> 
> - use KVM in the CI env, or

Not sure this is an option.  Is nested virtualization supported in azure
pipeline VMs?  If so, is /dev/kvm passed into containers?

> - delay this patch until my QEMU fix is merged, and a new release is
>   made, and the new QEMU release is packaged by the distros, and the new
>   distro packages are picked up by github.com CI.

Well.  There is the pending patch series by Oliver to switch over CI to
use containers, and build using fedora container images.  Putting the
fix on fast track and backport the fix to the fedora packages should be
in the cards, which should get us a working qemu quickly.

That requires updating the fedora containers though.  I think they are
at Fedora 35 still, which is EOL meanwhile, so no more updates ...

Oliver?
CI team?

take care,
  Gerd



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#97987): https://edk2.groups.io/g/devel/message/97987
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Oliver Steffen 1 year, 3 months ago
Quoting Gerd Hoffmann (2023-01-05 14:12:22)
>   Hi,
>
> > So I'm not proposing to merge this immediately; something must be fixed
> > first:
> >
> > - use KVM in the CI env, or
>
> Not sure this is an option.  Is nested virtualization supported in azure
> pipeline VMs?  If so, is /dev/kvm passed into containers?

I doubt it, but need to check.

>
> > - delay this patch until my QEMU fix is merged, and a new release is
> >   made, and the new QEMU release is packaged by the distros, and the new
> >   distro packages are picked up by github.com CI.
>
> Well.  There is the pending patch series by Oliver to switch over CI to
> use containers, and build using fedora container images.  Putting the
> fix on fast track and backport the fix to the fedora packages should be
> in the cards, which should get us a working qemu quickly.
>
> That requires updating the fedora containers though.  I think they are
> at Fedora 35 still, which is EOL meanwhile, so no more updates ...

Yes, it is Fedora 35, because we were (are?) not ready for gcc 12 yet.
Currently we are building Qemu is from scratch anyway (instead of
using the Fedora 35 repo) becasue we needed a recent one, see
https://github.com/tianocore/containers/blob/main/Fedora-35/Dockerfile#L75

So if the fixed Qemu is availiabe as source download from download.qemu.org
then this is easy to get into the CI images.

That reminds me to resent the "containerized CI" patches again.

>
> Oliver?
> CI team?
>
> take care,
>   Gerd
>

Oliver



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#97990): https://edk2.groups.io/g/devel/message/97990
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Gerd Hoffmann 1 year, 3 months ago
On Thu, Jan 05, 2023 at 02:43:32PM +0100, Oliver Steffen wrote:
> Quoting Gerd Hoffmann (2023-01-05 14:12:22)
> > Not sure this is an option.  Is nested virtualization supported in azure
> > pipeline VMs?  If so, is /dev/kvm passed into containers?
> 
> I doubt it, but need to check.

> > That requires updating the fedora containers though.  I think they are
> > at Fedora 35 still, which is EOL meanwhile, so no more updates ...
> 
> Yes, it is Fedora 35, because we were (are?) not ready for gcc 12 yet.

The gcc12 fix finally landed (129404f6e4395008ac0045e7e627edbba2a1e064),
so yes, we are ready now.

> Currently we are building Qemu is from scratch anyway (instead of
> using the Fedora 35 repo) becasue we needed a recent one, see
> https://github.com/tianocore/containers/blob/main/Fedora-35/Dockerfile#L75

Alternative to self-compiling is using
https://fedoraproject.org/wiki/Virtualization_Preview_Repository
for a more recent qemu version.

take care,
  Gerd



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#97992): https://edk2.groups.io/g/devel/message/97992
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Laszlo Ersek 1 year, 3 months ago
On 1/5/23 14:52, Gerd Hoffmann wrote:
> On Thu, Jan 05, 2023 at 02:43:32PM +0100, Oliver Steffen wrote:
>> Quoting Gerd Hoffmann (2023-01-05 14:12:22)
>>> Not sure this is an option.  Is nested virtualization supported in azure
>>> pipeline VMs?  If so, is /dev/kvm passed into containers?
>>
>> I doubt it, but need to check.
> 
>>> That requires updating the fedora containers though.  I think they are
>>> at Fedora 35 still, which is EOL meanwhile, so no more updates ...
>>
>> Yes, it is Fedora 35, because we were (are?) not ready for gcc 12 yet.
> 
> The gcc12 fix finally landed (129404f6e4395008ac0045e7e627edbba2a1e064),
> so yes, we are ready now.
> 
>> Currently we are building Qemu is from scratch anyway (instead of
>> using the Fedora 35 repo) becasue we needed a recent one, see
>> https://github.com/tianocore/containers/blob/main/Fedora-35/Dockerfile#L75
> 
> Alternative to self-compiling is using
> https://fedoraproject.org/wiki/Virtualization_Preview_Repository
> for a more recent qemu version.

Ah, those options all sound great. I didn't expect it was possible to
use self-built (or otherwise "externally sourced") QEMUs in CI!

Thanks!
Laszlo



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98000): https://edk2.groups.io/g/devel/message/98000
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Oliver Steffen 1 year, 3 months ago
Quoting Laszlo Ersek (2023-01-05 16:12:36)
> On 1/5/23 14:52, Gerd Hoffmann wrote:
> > On Thu, Jan 05, 2023 at 02:43:32PM +0100, Oliver Steffen wrote:
> >> Quoting Gerd Hoffmann (2023-01-05 14:12:22)
> >>> Not sure this is an option.  Is nested virtualization supported in azure
> >>> pipeline VMs?  If so, is /dev/kvm passed into containers?
> >>
> >> I doubt it, but need to check.
> >
> >>> That requires updating the fedora containers though.  I think they are
> >>> at Fedora 35 still, which is EOL meanwhile, so no more updates ...
> >>
> >> Yes, it is Fedora 35, because we were (are?) not ready for gcc 12 yet.
> >
> > The gcc12 fix finally landed (129404f6e4395008ac0045e7e627edbba2a1e064),
> > so yes, we are ready now.
> >
> >> Currently we are building Qemu is from scratch anyway (instead of
> >> using the Fedora 35 repo) becasue we needed a recent one, see
> >> https://github.com/tianocore/containers/blob/main/Fedora-35/Dockerfile#L75
> >
> > Alternative to self-compiling is using
> > https://fedoraproject.org/wiki/Virtualization_Preview_Repository
> > for a more recent qemu version.
>
> Ah, those options all sound great. I didn't expect it was possible to
> use self-built (or otherwise "externally sourced") QEMUs in CI!

I would prefer the tar download since it is a rather long lived and
version-stable source. We a trying to pin down the version numbers the
most relevant tools so that they don't "run away"/update without
intent.

I'll also check if we can run the CI with gcc 12.

- Oliver



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98004): https://edk2.groups.io/g/devel/message/98004
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Michael D Kinney 1 year, 3 months ago
Hi Laszlo,

Unit test code coverage was enabled just a couple days ago in CI.  Looks like you uncovered a corner case that was missed that should not generate a CI failure.

I have asked Gua to investigate.

Thanks,

Mike

> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Laszlo Ersek
> Sent: Wednesday, January 4, 2023 7:13 AM
> To: devel@edk2.groups.io
> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>; Brijesh Singh <brijesh.singh@amd.com>; Aktas, Erdem <erdemaktas@google.com>; Gerd
> Hoffmann <kraxel@redhat.com>; James Bottomley <jejb@linux.ibm.com>; Yao, Jiewen <jiewen.yao@intel.com>; Justen, Jordan L
> <jordan.l.justen@intel.com>; Xu, Min M <min.m.xu@intel.com>; Boeuf, Sebastien <sebastien.boeuf@intel.com>; Tom Lendacky
> <thomas.lendacky@amd.com>
> Subject: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
> 
> Repo:       https://pagure.io/lersek/edk2.git
> Branch:     cpuhp-reg-catch-4250
> Test build: https://github.com/tianocore/edk2/pull/3853
> Bugzilla:   https://bugzilla.tianocore.org/show_bug.cgi?id=4250
> 
> NOTE: the test build linked above (in the github.com CI env) *failed*.
> That's because the CI environment is affected by this very QEMU bug!
> 
> Namely, the following checks failed -- due to the intentional hang
> introduced in this patch:
> 
> - PlatformCI_OvmfPkg_Ubuntu_GCC5_PR (12 tests)
> - PlatformCI_OvmfPkg_Windows_VS2019_PR (11 tests)
> 
> (The Build_VS2019_TARGET_CODE_COVERAGE and
> Build_GCC5_TARGET_CODE_COVERAGE tests also failed, but those seem bogus
> to me.)
> 
> All 12+11=23 PlatformCI_OvmfPkg_* checks failed due to timeout, and the
> firmware logs of the DEBUG and NOOPT builds end with:
> 
> > INFO - PlatformMaxCpuCountInitialization: Broken CPU hotplug register block: Present=0 Possible=1.
> > INFO - PlatformMaxCpuCountInitialization: Switch QEMU's acceleration from TCG to KVM, or update QEMU.
> > INFO - PlatformMaxCpuCountInitialization: Refer to <https://bugzilla.tianocore.org/show_bug.cgi?id=4250>.
> > INFO - ASSERT /home/vsts/work/1/s/OvmfPkg/Library/PlatformInitLib/Platform.c(574): ((BOOLEAN)(0==1))
> 
> So I'm not proposing to merge this immediately; something must be fixed
> first:
> 
> - use KVM in the CI env, or
> 
> - delay this patch until my QEMU fix is merged, and a new release is
>   made, and the new QEMU release is packaged by the distros, and the new
>   distro packages are picked up by github.com CI.
> 
> Suggestions?
> 
> Thanks,
> Laszlo
> 
> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
> Cc: Brijesh Singh <brijesh.singh@amd.com>
> Cc: Erdem Aktas <erdemaktas@google.com>
> Cc: Gerd Hoffmann <kraxel@redhat.com>
> Cc: James Bottomley <jejb@linux.ibm.com>
> Cc: Jiewen Yao <jiewen.yao@intel.com>
> Cc: Jordan Justen <jordan.l.justen@intel.com>
> Cc: Min Xu <min.m.xu@intel.com>
> Cc: Sebastien Boeuf <sebastien.boeuf@intel.com>
> Cc: Tom Lendacky <thomas.lendacky@amd.com>
> 
> Laszlo Ersek (1):
>   OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
> 
>  OvmfPkg/Library/PlatformInitLib/Platform.c | 34 ++++++++++++++++++++
>  1 file changed, 34 insertions(+)
> 
> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#97952): https://edk2.groups.io/g/devel/message/97952
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Laszlo Ersek 1 year, 3 months ago
Hi Mike,

On 1/5/23 00:34, Kinney, Michael D wrote:
> Hi Laszlo,
> 
> Unit test code coverage was enabled just a couple days ago in CI.  Looks like you uncovered a corner case that was missed that should not generate a CI failure.
> 
> I have asked Gua to investigate.

the CI env is healthy, as far as I can tell. It's just that this patch
catches a grave bug in QEMU, and refuses continue booting if the bug is
present (intentionally). The issue is that currently there's no released
QEMU version with the fix, so if this patch is merged immediately into
OVMF, then OVMF will hang every test case in CI. (Every test scenario
that boots OVMF one way or another.)

Practically, this patch must be postponed until QEMU can be upgraded in
the CI env -- it turns out though that the latter could be possible much
earlier than I had hoped.

Thanks!
Laszlo



> 
> Thanks,
> 
> Mike
> 
>> -----Original Message-----
>> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Laszlo Ersek
>> Sent: Wednesday, January 4, 2023 7:13 AM
>> To: devel@edk2.groups.io
>> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>; Brijesh Singh <brijesh.singh@amd.com>; Aktas, Erdem <erdemaktas@google.com>; Gerd
>> Hoffmann <kraxel@redhat.com>; James Bottomley <jejb@linux.ibm.com>; Yao, Jiewen <jiewen.yao@intel.com>; Justen, Jordan L
>> <jordan.l.justen@intel.com>; Xu, Min M <min.m.xu@intel.com>; Boeuf, Sebastien <sebastien.boeuf@intel.com>; Tom Lendacky
>> <thomas.lendacky@amd.com>
>> Subject: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
>>
>> Repo:       https://pagure.io/lersek/edk2.git
>> Branch:     cpuhp-reg-catch-4250
>> Test build: https://github.com/tianocore/edk2/pull/3853
>> Bugzilla:   https://bugzilla.tianocore.org/show_bug.cgi?id=4250
>>
>> NOTE: the test build linked above (in the github.com CI env) *failed*.
>> That's because the CI environment is affected by this very QEMU bug!
>>
>> Namely, the following checks failed -- due to the intentional hang
>> introduced in this patch:
>>
>> - PlatformCI_OvmfPkg_Ubuntu_GCC5_PR (12 tests)
>> - PlatformCI_OvmfPkg_Windows_VS2019_PR (11 tests)
>>
>> (The Build_VS2019_TARGET_CODE_COVERAGE and
>> Build_GCC5_TARGET_CODE_COVERAGE tests also failed, but those seem bogus
>> to me.)
>>
>> All 12+11=23 PlatformCI_OvmfPkg_* checks failed due to timeout, and the
>> firmware logs of the DEBUG and NOOPT builds end with:
>>
>>> INFO - PlatformMaxCpuCountInitialization: Broken CPU hotplug register block: Present=0 Possible=1.
>>> INFO - PlatformMaxCpuCountInitialization: Switch QEMU's acceleration from TCG to KVM, or update QEMU.
>>> INFO - PlatformMaxCpuCountInitialization: Refer to <https://bugzilla.tianocore.org/show_bug.cgi?id=4250>.
>>> INFO - ASSERT /home/vsts/work/1/s/OvmfPkg/Library/PlatformInitLib/Platform.c(574): ((BOOLEAN)(0==1))
>>
>> So I'm not proposing to merge this immediately; something must be fixed
>> first:
>>
>> - use KVM in the CI env, or
>>
>> - delay this patch until my QEMU fix is merged, and a new release is
>>   made, and the new QEMU release is packaged by the distros, and the new
>>   distro packages are picked up by github.com CI.
>>
>> Suggestions?
>>
>> Thanks,
>> Laszlo
>>
>> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
>> Cc: Brijesh Singh <brijesh.singh@amd.com>
>> Cc: Erdem Aktas <erdemaktas@google.com>
>> Cc: Gerd Hoffmann <kraxel@redhat.com>
>> Cc: James Bottomley <jejb@linux.ibm.com>
>> Cc: Jiewen Yao <jiewen.yao@intel.com>
>> Cc: Jordan Justen <jordan.l.justen@intel.com>
>> Cc: Min Xu <min.m.xu@intel.com>
>> Cc: Sebastien Boeuf <sebastien.boeuf@intel.com>
>> Cc: Tom Lendacky <thomas.lendacky@amd.com>
>>
>> Laszlo Ersek (1):
>>   OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
>>
>>  OvmfPkg/Library/PlatformInitLib/Platform.c | 34 ++++++++++++++++++++
>>  1 file changed, 34 insertions(+)
>>
>>
>>
>> 
>>
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98002): https://edk2.groups.io/g/devel/message/98002
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Laszlo Ersek 1 year, 3 months ago
ugh, unless you meant the Build_VS2019_TARGET_CODE_COVERAGE and
Build_GCC5_TARGET_CODE_COVERAGE test failures, which I mentioned in
passing -- I agree that those don't look healthy.

Thanks
Laszlo

On 1/5/23 16:15, Laszlo Ersek wrote:
> Hi Mike,
> 
> On 1/5/23 00:34, Kinney, Michael D wrote:
>> Hi Laszlo,
>>
>> Unit test code coverage was enabled just a couple days ago in CI.  Looks like you uncovered a corner case that was missed that should not generate a CI failure.
>>
>> I have asked Gua to investigate.
> 
> the CI env is healthy, as far as I can tell. It's just that this patch
> catches a grave bug in QEMU, and refuses continue booting if the bug is
> present (intentionally). The issue is that currently there's no released
> QEMU version with the fix, so if this patch is merged immediately into
> OVMF, then OVMF will hang every test case in CI. (Every test scenario
> that boots OVMF one way or another.)
> 
> Practically, this patch must be postponed until QEMU can be upgraded in
> the CI env -- it turns out though that the latter could be possible much
> earlier than I had hoped.
> 
> Thanks!
> Laszlo
> 
> 
> 
>>
>> Thanks,
>>
>> Mike
>>
>>> -----Original Message-----
>>> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Laszlo Ersek
>>> Sent: Wednesday, January 4, 2023 7:13 AM
>>> To: devel@edk2.groups.io
>>> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>; Brijesh Singh <brijesh.singh@amd.com>; Aktas, Erdem <erdemaktas@google.com>; Gerd
>>> Hoffmann <kraxel@redhat.com>; James Bottomley <jejb@linux.ibm.com>; Yao, Jiewen <jiewen.yao@intel.com>; Justen, Jordan L
>>> <jordan.l.justen@intel.com>; Xu, Min M <min.m.xu@intel.com>; Boeuf, Sebastien <sebastien.boeuf@intel.com>; Tom Lendacky
>>> <thomas.lendacky@amd.com>
>>> Subject: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
>>>
>>> Repo:       https://pagure.io/lersek/edk2.git
>>> Branch:     cpuhp-reg-catch-4250
>>> Test build: https://github.com/tianocore/edk2/pull/3853
>>> Bugzilla:   https://bugzilla.tianocore.org/show_bug.cgi?id=4250
>>>
>>> NOTE: the test build linked above (in the github.com CI env) *failed*.
>>> That's because the CI environment is affected by this very QEMU bug!
>>>
>>> Namely, the following checks failed -- due to the intentional hang
>>> introduced in this patch:
>>>
>>> - PlatformCI_OvmfPkg_Ubuntu_GCC5_PR (12 tests)
>>> - PlatformCI_OvmfPkg_Windows_VS2019_PR (11 tests)
>>>
>>> (The Build_VS2019_TARGET_CODE_COVERAGE and
>>> Build_GCC5_TARGET_CODE_COVERAGE tests also failed, but those seem bogus
>>> to me.)
>>>
>>> All 12+11=23 PlatformCI_OvmfPkg_* checks failed due to timeout, and the
>>> firmware logs of the DEBUG and NOOPT builds end with:
>>>
>>>> INFO - PlatformMaxCpuCountInitialization: Broken CPU hotplug register block: Present=0 Possible=1.
>>>> INFO - PlatformMaxCpuCountInitialization: Switch QEMU's acceleration from TCG to KVM, or update QEMU.
>>>> INFO - PlatformMaxCpuCountInitialization: Refer to <https://bugzilla.tianocore.org/show_bug.cgi?id=4250>.
>>>> INFO - ASSERT /home/vsts/work/1/s/OvmfPkg/Library/PlatformInitLib/Platform.c(574): ((BOOLEAN)(0==1))
>>>
>>> So I'm not proposing to merge this immediately; something must be fixed
>>> first:
>>>
>>> - use KVM in the CI env, or
>>>
>>> - delay this patch until my QEMU fix is merged, and a new release is
>>>   made, and the new QEMU release is packaged by the distros, and the new
>>>   distro packages are picked up by github.com CI.
>>>
>>> Suggestions?
>>>
>>> Thanks,
>>> Laszlo
>>>
>>> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
>>> Cc: Brijesh Singh <brijesh.singh@amd.com>
>>> Cc: Erdem Aktas <erdemaktas@google.com>
>>> Cc: Gerd Hoffmann <kraxel@redhat.com>
>>> Cc: James Bottomley <jejb@linux.ibm.com>
>>> Cc: Jiewen Yao <jiewen.yao@intel.com>
>>> Cc: Jordan Justen <jordan.l.justen@intel.com>
>>> Cc: Min Xu <min.m.xu@intel.com>
>>> Cc: Sebastien Boeuf <sebastien.boeuf@intel.com>
>>> Cc: Tom Lendacky <thomas.lendacky@amd.com>
>>>
>>> Laszlo Ersek (1):
>>>   OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
>>>
>>>  OvmfPkg/Library/PlatformInitLib/Platform.c | 34 ++++++++++++++++++++
>>>  1 file changed, 34 insertions(+)
>>>
>>>
>>>
>>> 
>>>
>>
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98003): https://edk2.groups.io/g/devel/message/98003
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression
Posted by Guo, Gua 1 year, 3 months ago
@Kinney, Michael D<mailto:michael.d.kinney@intel.com> I create a PR to fix it. Could you help me for code review and push it to unlock the failure ?
URL: https://github.com/tianocore/edk2/pull/3842/



-----Original Message-----
From: Kinney, Michael D <michael.d.kinney@intel.com>
Sent: Thursday, January 5, 2023 7:35 AM
To: devel@edk2.groups.io; lersek@redhat.com; Guo, Gua <gua.guo@intel.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>; Brijesh Singh <brijesh.singh@amd.com>; Aktas, Erdem <erdemaktas@google.com>; Gerd Hoffmann <kraxel@redhat.com>; James Bottomley <jejb@linux.ibm.com>; Yao, Jiewen <jiewen.yao@intel.com>; Justen, Jordan L <jordan.l.justen@intel.com>; Xu, Min M <min.m.xu@intel.com>; Boeuf, Sebastien <sebastien.boeuf@intel.com>; Tom Lendacky <thomas.lendacky@amd.com>; Kinney, Michael D <michael.d.kinney@intel.com>
Subject: RE: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block regression



Hi Laszlo,



Unit test code coverage was enabled just a couple days ago in CI.  Looks like you uncovered a corner case that was missed that should not generate a CI failure.



I have asked Gua to investigate.



Thanks,



Mike



> -----Original Message-----

> From: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>> On Behalf Of Laszlo

> Ersek

> Sent: Wednesday, January 4, 2023 7:13 AM

> To: devel@edk2.groups.io<mailto:devel@edk2.groups.io>

> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org<mailto:ardb+tianocore@kernel.org>>; Brijesh Singh

> <brijesh.singh@amd.com<mailto:brijesh.singh@amd.com>>; Aktas, Erdem <erdemaktas@google.com<mailto:erdemaktas@google.com>>; Gerd

> Hoffmann <kraxel@redhat.com<mailto:kraxel@redhat.com>>; James Bottomley <jejb@linux.ibm.com<mailto:jejb@linux.ibm.com>>;

> Yao, Jiewen <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>; Justen, Jordan L

> <jordan.l.justen@intel.com<mailto:jordan.l.justen@intel.com>>; Xu, Min M <min.m.xu@intel.com<mailto:min.m.xu@intel.com>>; Boeuf,

> Sebastien <sebastien.boeuf@intel.com<mailto:sebastien.boeuf@intel.com>>; Tom Lendacky

> <thomas.lendacky@amd.com<mailto:thomas.lendacky@amd.com>>

> Subject: [edk2-devel] [PATCH 0/1] OvmfPkg/PlatformInitLib: catch

> QEMU's CPU hotplug reg block regression

>

> Repo:       https://pagure.io/lersek/edk2.git

> Branch:     cpuhp-reg-catch-4250

> Test build: https://github.com/tianocore/edk2/pull/3853

> Bugzilla:   https://bugzilla.tianocore.org/show_bug.cgi?id=4250

>

> NOTE: the test build linked above (in the github.com CI env) *failed*.

> That's because the CI environment is affected by this very QEMU bug!

>

> Namely, the following checks failed -- due to the intentional hang

> introduced in this patch:

>

> - PlatformCI_OvmfPkg_Ubuntu_GCC5_PR (12 tests)

> - PlatformCI_OvmfPkg_Windows_VS2019_PR (11 tests)

>

> (The Build_VS2019_TARGET_CODE_COVERAGE and

> Build_GCC5_TARGET_CODE_COVERAGE tests also failed, but those seem

> bogus to me.)

>

> All 12+11=23 PlatformCI_OvmfPkg_* checks failed due to timeout, and

> the firmware logs of the DEBUG and NOOPT builds end with:

>

> > INFO - PlatformMaxCpuCountInitialization: Broken CPU hotplug register block: Present=0 Possible=1.

> > INFO - PlatformMaxCpuCountInitialization: Switch QEMU's acceleration from TCG to KVM, or update QEMU.

> > INFO - PlatformMaxCpuCountInitialization: Refer to <https://bugzilla.tianocore.org/show_bug.cgi?id=4250>.

> > INFO - ASSERT

> > /home/vsts/work/1/s/OvmfPkg/Library/PlatformInitLib/Platform.c(574):

> > ((BOOLEAN)(0==1))

>

> So I'm not proposing to merge this immediately; something must be

> fixed

> first:

>

> - use KVM in the CI env, or

>

> - delay this patch until my QEMU fix is merged, and a new release is

>   made, and the new QEMU release is packaged by the distros, and the new

>   distro packages are picked up by github.com CI.

>

> Suggestions?

>

> Thanks,

> Laszlo

>

> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org<mailto:ardb+tianocore@kernel.org>>

> Cc: Brijesh Singh <brijesh.singh@amd.com<mailto:brijesh.singh@amd.com>>

> Cc: Erdem Aktas <erdemaktas@google.com<mailto:erdemaktas@google.com>>

> Cc: Gerd Hoffmann <kraxel@redhat.com<mailto:kraxel@redhat.com>>

> Cc: James Bottomley <jejb@linux.ibm.com<mailto:jejb@linux.ibm.com>>

> Cc: Jiewen Yao <jiewen.yao@intel.com<mailto:jiewen.yao@intel.com>>

> Cc: Jordan Justen <jordan.l.justen@intel.com<mailto:jordan.l.justen@intel.com>>

> Cc: Min Xu <min.m.xu@intel.com<mailto:min.m.xu@intel.com>>

> Cc: Sebastien Boeuf <sebastien.boeuf@intel.com<mailto:sebastien.boeuf@intel.com>>

> Cc: Tom Lendacky <thomas.lendacky@amd.com<mailto:thomas.lendacky@amd.com>>

>

> Laszlo Ersek (1):

>   OvmfPkg/PlatformInitLib: catch QEMU's CPU hotplug reg block

> regression

>

>  OvmfPkg/Library/PlatformInitLib/Platform.c | 34 ++++++++++++++++++++

>  1 file changed, 34 insertions(+)

>

>

>

> 

>




-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#97968): https://edk2.groups.io/g/devel/message/97968
Mute This Topic: https://groups.io/mt/96051795/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-