KVM: PPC: Book3E: KVM HV host module doesn't work anymore
    Christian Zigotzky 
    chzigotzky at xenosoft.de
       
    Tue Dec 24 01:41:33 AEDT 2024
    
    
  
On 22/12/24 18:49, Paolo Bonzini wrote:
 >
 > Go on with
 > git checkout -b bisection-rebase b467ab82a9fde4b46c0cd2c299220857afb0e0d4
 > git rebase v6.12
 > # check that it boots. if it fails to boot, please report this. if it 
succeds, continue:
 > git bisect start
 > git bisect bad bisection-rebase
 > git bisect good v6.12
 >
 > Proceed to bisect. If you never find a kernel that fails to boot, report.
 >
 > If you find a kernel that fails to boot, start another bisection 
between v6.12 and bisection-rebase, looking for the first patch that 
fails to boot.
Hi Bonzini,
Thank you for your answer.
On 22/12/24 18:49, Paolo Bonzini wrote:
     Thanks. Please try this
     git bisect start
     git checkout c9be85dabb376299504e0d391d15662c0edf8273
---
HEAD is now at c9be85dabb37 KVM: PPC: e500: Mark "struct page" dirty in 
kvmppc_e500_shadow_map()
On 22/12/24 18:49, Paolo Bonzini wrote:
     check that it does not boot
---
Yes, it doesn't boot
On 22/12/24 18:49, Paolo Bonzini wrote:
     git bisect bad
     git checkout adc218676eef25575469234709c2d87185ca223a
---
Previous HEAD position was c9be85dabb37 KVM: PPC: e500: Mark "struct 
page" dirty in kvmppc_e500_shadow_map() HEAD is now at adc218676eef 
Linux 6.12
On 22/12/24 18:49, Paolo Bonzini wrote:
     check that it boots
---
The host system boots and the guest kernel 6.13-rc3 boots in a KVM HV VM 
too.
git bisect good
Bisecting: a merge base must be tested
[e9001a382fa2c256229adc68d55212028b01d515] Merge tag 
'kvmarm-fixes-6.12-3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
On 22/12/24 18:49, Paolo Bonzini wrote:
     There are two possibilities.
     If e9001a382fa2c256229adc68d55212028b01d515 succeeds to boot
     Then git bisect good and bisect to the patch that causes the host 
to fail to boot. What's left seems to be all non-PPC KVM patches, which 
is a bit weird but you never know. Once you have the result, we'll try 
to fix that, and provide you with a fixed branch to bisect the actual 
KVM-PPC failure.
---
The host system doesn't boot.
On 22/12/24 18:49, Paolo Bonzini wrote:
     A potential candidate, based on your skips, is commit eec1e5db464e 
("KVM: Annotate that all paths in hva_to_pfn() might sleep").
     Please also provide a log of the boot failure (I haven't seen it 
but I might be missing it).
     If e9001a382fa2c256229adc68d55212028b01d515 fails to boot
---
Unfortunately, there isn't a guest kernel boot log via serial log.
On 22/12/24 18:49, Paolo Bonzini wrote:
     Go on with
     git checkout -b bisection-rebase 
b467ab82a9fde4b46c0cd2c299220857afb0e0d4
     git rebase v6.12
---
Applying: Documentation: kvm: fix a few mistakes Applying: 
Documentation: kvm: replace section numbers with links
Applying: Documentation: kvm: reorganize introduction Applying: 
Documentation: KVM: fix malformed table
Applying: x86: KVM: Advertise CPUIDs for new instructions in Clearwater 
Forest
Applying: KVM: x86: expose MSR_PLATFORM_INFO as a feature MSR
On 22/12/24 18:49, Paolo Bonzini wrote:
     check that it boots. if it fails to boot, please report this.
---
The host kernel boots but the guest kernel doesn't boot so KVM HV 
doesn't work.
On 22/12/24 18:49, Paolo Bonzini wrote:
     git bisect start
     git bisect bad bisection-rebase
     git bisect good v6.12
---
Bisecting: 99 revisions left to test after this (roughly 7 steps) 
[e7f7cfdd90c5a8bff38e059ca885a668efd2311f] RISC-V: KVM: Save trap CSRs 
in kvm_riscv_vcpu_enter_exit()
git bisect bad (Host boots and guest doesn't boot)
Output:
Bisecting: 49 revisions left to test after this (roughly 6 steps) 
[4f126962ea9b0d267c4a46f6be0e12698e723210] KVM: Move x86's API to 
release a faultin page to common KVM
git bisect good (Host and guest boot)
Output:
Bisecting: 24 revisions left to test after this (roughly 5 steps) 
[2c56ca43bac9f741b9d1c45d292fd512cf22ce98] KVM: PPC: Use kvm_vcpu_map() 
to map guest memory to patch dcbz instructions
git bisect bad (Host boots and guest doesn't boot)
Output:
Bisecting: 12 revisions left to test after this (roughly 4 steps) 
[a585688ac3ca4a91f80179ffcadb33575d9539a9] KVM: PPC: Use 
__kvm_faultin_pfn() to handle page faults on Book3s Radix
git bisect bad (Host boots and guest doesn't boot)
Bisecting: 5 revisions left to test after this (roughly 3 steps) 
[9f9bae39c20dc83e9c6b0de0ab20260b37f1f48e] KVM: arm64: Mark "struct 
page" pfns accessed/dirty before dropping mmu_lock
git bisect bad (Host boots and guest doesn't boot)
Bisecting: 2 revisions left to test after this (roughly 2 steps) 
[16dd33b96e8c0fb5dc335efaf5ebc7f92feef1ae] KVM: PPC: e500: Mark "struct 
page" dirty in kvmppc_e500_shadow_map()
git bisect good (Host and guest boot)
Output:
Bisecting: 0 revisions left to test after this (roughly 1 step) 
[edebc0a1b7ab5ff19b4f5cd011c93196fc34b3e4] KVM: PPC: e500: Use 
__kvm_faultin_pfn() to handle page faults
git bisect bad (Host boots and guest doesn't boot)
Bisecting: 0 revisions left to test after this (roughly 0 steps) 
[a5608a81925937a230816652bc7b953880606e7c] KVM: PPC: e500: Mark "struct 
page" pfn accessed before dropping mmu_lock
git bisect good (Host and guest boot)
`edebc0a1b7ab5ff19b4f5cd011c93196fc34b3e4 is the first bad commit
commit edebc0a1b7ab5ff19b4f5cd011c93196fc34b3e4
Author: Sean Christopherson seanjc at google.com
Date: Thu Oct 10 11:23:56 2024 -0700
KVM: PPC: e500: Use __kvm_faultin_pfn() to handle page faults
Convert PPC e500 to use __kvm_faultin_pfn()+kvm_release_faultin_page(),
and continue the inexorable march towards the demise of
kvm_pfn_to_refcounted_page().
Signed-off-by: Sean Christopherson <seanjc at google.com>
Tested-by: Dmitry Osipenko <dmitry.osipenko at collabora.com>
Signed-off-by: Paolo Bonzini <pbonzini at redhat.com>
Message-ID: <20241010182427.1434605-55-seanjc at google.com>
arch/powerpc/kvm/e500_mmu_host.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)`
Cheers,
Christian
-- 
Sent with BrassMonkey 33.4.0 (https://github.com/wicknix/brass-monkey/releases/tag/33.4.0)
    
    
More information about the Linuxppc-dev
mailing list