FSL P5040: KVM HV doesn't work with the RC5 of kernel 5.11
From: Christian Zigotzky <hidden>
Date: 2021-01-27 16:09:41
Hello, I compiled the RC5 of kernel 5.11 today. Unfortunately KVM HV doesn't work anymore on my FSL P5040 board [1]. I tested it with QEMU 5.0.0 today [2]. The virtual e5500 QEMU machine works with the "RC4 with KVM HV" and with the "RC5 without KVM HV". The complete system freezes if I use KVM HV with the RC5. I have bisected and 785025820a6a565185ce9d47fdd8d23dbf91dee8 (powerpc/mm/highmem: use __set_pte_at() for kmap_local()) [3] is the first bad commit. I was able to revert this bad commit and after a new compiling, KVM HV works again. I created a patch for reverting the commit. [4] Please find attached the kernel config. I use one uImage for the virtual machine and for the P5040 board. Please check the first bad commit. Thanks, Christian [1] http://wiki.amiga.org/index.php?title=X5000 [2] qemu-system-ppc64 -M ppce500 -cpu e5500 -enable-kvm -m 1024 -kernel uImage-5.11 -drive format=raw,file=MintPPC32-X5000.img,index=0,if=virtio -netdev user,id=mynet0 -device e1000,netdev=mynet0 -append "rw root=/dev/vda" -device virtio-vga -device virtio-mouse-pci -device virtio-keyboard-pci -device pci-ohci,id=newusb -device usb-audio,bus=newusb.0 -smp 4 [3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v5.11-rc5&id=785025820a6a565185ce9d47fdd8d23dbf91dee8 [4] diff -rupN a/arch/powerpc/include/asm/highmem.h b/arch/powerpc/include/asm/highmem.h
--- a/arch/powerpc/include/asm/highmem.h 2021-01-27 16:12:40.382164118 +0100
+++ b/arch/powerpc/include/asm/highmem.h 2021-01-27 16:10:54.055249957 +0100
@@ -58,8 +58,6 @@ extern pte_t *pkmap_page_table; #define flush_cache_kmaps() flush_cache_all() -#define arch_kmap_local_set_pte(mm, vaddr, ptep, ptev) \ - __set_pte_at(mm, vaddr, ptep, ptev, 1) #define arch_kmap_local_post_map(vaddr, pteval) \ local_flush_tlb_page(NULL, vaddr) #define arch_kmap_local_post_unmap(vaddr) \
Attachments
- cyrus-5.11-rc5.config [text/plain] 160773 bytes · preview