On Mon, 2018-07-30 at 18:24 +0200, Mike Galbraith wrote: > On Sun, 2018-07-29 at 13:47 +0200, Mike Galbraith wrote: > > FYI, per kvm unit tests, 4.16-rt definitely has more kvm issues. But it's not RT, or rather most of it isn't... > > huawei5:/abuild/mike/kvm-unit-tests # uname -r > > 4.16.18-rt11-rt > > huawei5:/abuild/mike/kvm-unit-tests # ./run_tests.sh > > PASS selftest-setup (2 tests) > > FAIL selftest-vectors-kernel > > FAIL selftest-vectors-user > > PASS selftest-smp (65 tests) > > PASS pci-test (1 tests) > > PASS pmu (3 tests) > > FAIL gicv2-ipi > > FAIL gicv3-ipi > > FAIL gicv2-active > > FAIL gicv3-active > > PASS psci (4 tests) > > FAIL timer > > huawei5:/abuild/mike/kvm-unit-tests # > > > > 4.14-rt passes all tests. The above is with the kvm raw_spinlock_t > > conversion patch applied, but the 4.12 based SLERT tree I cloned to > > explore arm-land in the first place shows only one timer failure, and > > has/needs it applied as well, which would seem to vindicate it. > > > > huawei5:/abuild/mike/kvm-unit-tests # uname -r > > 4.12.14-0.gec0b559-rt > > huawei5:/abuild/mike/kvm-unit-tests # ./run_tests.sh > > PASS selftest-setup (2 tests) > > PASS selftest-vectors-kernel (2 tests) > > PASS selftest-vectors-user (2 tests) > > PASS selftest-smp (65 tests) > > PASS pci-test (1 tests) > > PASS pmu (3 tests) > > PASS gicv2-ipi (3 tests) > > PASS gicv3-ipi (3 tests) > > PASS gicv2-active (1 tests) > > PASS gicv3-active (1 tests) > > PASS psci (4 tests) > > FAIL timer (8 tests, 1 unexpected failures) > > FWIW, this single timer failure wass inspired by something in the 4-15 > merge window. As noted, the single timer failure is an RT issue of some sort, and remains. The rest I bisected in @stable with the attached config, and confirmed that revert fixes up 4.16-rt as well (modulo singleton). a9c0e12ebee56ef06b7eccdbc73bab71d0018df8 is the first bad commit commit a9c0e12ebee56ef06b7eccdbc73bab71d0018df8 Author: Marc Zyngier Date: Mon Oct 23 17:11:20 2017 +0100 KVM: arm/arm64: Only clean the dcache on translation fault The only case where we actually need to perform a dcache maintenance is when we map the page for the first time, and subsequent permission faults do not require cache maintenance. Let's make it conditional on not being a permission fault (and thus a translation fault). Reviewed-by: Christoffer Dall Signed-off-by: Marc Zyngier Signed-off-by: Christoffer Dall :040000 040000 951e77e6ec8df405f4bad59086ad1416c480ce3c 946dd071aa755606eaa5103d870bc471cc07258f M virt git bisect start # good: [a8ec862fd39d9adb88469eb8b9125daccc1c8335] Linux 4.15.18 git bisect good a8ec862fd39d9adb88469eb8b9125daccc1c8335 # bad: [62e9ccfaaedffd057e921fca976f9f7f71c9b254] Linux 4.16.18 git bisect bad 62e9ccfaaedffd057e921fca976f9f7f71c9b254 # good: [d8a5b80568a9cb66810e75b182018e9edb68e8ff] Linux 4.15 git bisect good d8a5b80568a9cb66810e75b182018e9edb68e8ff # good: [fe53d1443a146326b49d57fe6336b5c2a725223f] Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc git bisect good fe53d1443a146326b49d57fe6336b5c2a725223f # good: [9a61df9e5f7471fe5be3e02bd0bed726b2761a54] Merge tag 'kbuild-v4.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild git bisect good 9a61df9e5f7471fe5be3e02bd0bed726b2761a54 # bad: [c4f4d2f917729e9b7b8bb452bf4971be93e7a15f] Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net git bisect bad c4f4d2f917729e9b7b8bb452bf4971be93e7a15f # bad: [97ace515f01439d4cf6e898b4094040dc12d36e7] Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc git bisect bad 97ace515f01439d4cf6e898b4094040dc12d36e7 # bad: [9f416319f40cd857d2bb517630e5855a905ef3fb] arm64: fix unwind_frame() for filtered out fn for function graph tracing git bisect bad 9f416319f40cd857d2bb517630e5855a905ef3fb # bad: [405cacc947f7b58969b2a8ab1568c2d98b245308] drm/i915/vlv: Add cdclk workaround for DSI git bisect bad 405cacc947f7b58969b2a8ab1568c2d98b245308 # good: [810f4600ec5ee79c68dcbb136ed26a652df46348] Merge tag 'kvm-s390-next-4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux git bisect good 810f4600ec5ee79c68dcbb136ed26a652df46348 # bad: [1ab03c072feb579c9fd116de25be2b211e6bff6a] Merge tag 'kvm-ppc-next-4.16-2' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc git bisect bad 1ab03c072feb579c9fd116de25be2b211e6bff6a # bad: [87cedc6be55954c6efd6eca2e694132513f65a2a] kvm: x86: remove efer_reload entry in kvm_vcpu_stat git bisect bad 87cedc6be55954c6efd6eca2e694132513f65a2a # good: [fefb876b9b96fa7e4ed3d906979ea45b4cf07349] arm64: KVM: PTE/PMD S2 XN bit definition git bisect good fefb876b9b96fa7e4ed3d906979ea45b4cf07349 # bad: [b276f1b3b1eb52697f6645bb98f7d32ffb89df69] KVM: arm/arm64: Fix trailing semicolon git bisect bad b276f1b3b1eb52697f6645bb98f7d32ffb89df69 # bad: [17ab9d57debaa53d665651e425a0efc4a893c039] KVM: arm/arm64: Drop vcpu parameter from guest cache maintenance operartions git bisect bad 17ab9d57debaa53d665651e425a0efc4a893c039 # bad: [a9c0e12ebee56ef06b7eccdbc73bab71d0018df8] KVM: arm/arm64: Only clean the dcache on translation fault git bisect bad a9c0e12ebee56ef06b7eccdbc73bab71d0018df8 # good: [d0e22b4ac3ba23c611739f554392bf5e217df49f] KVM: arm/arm64: Limit icache invalidation to prefetch aborts git bisect good d0e22b4ac3ba23c611739f554392bf5e217df49f # first bad commit: [a9c0e12ebee56ef06b7eccdbc73bab71d0018df8] KVM: arm/arm64: Only clean the dcache on translation fault