Re: [Qemu-devel] Help debugging a regression in KVM Module
> Am 18.08.2015 um 17:25 schrieb Radim Krčmář : > > 2015-08-18 16:54+0200, Peter Lieven: >> After some experiments I was able to find out the bad commit that introduced >> the regression: >> >> commit f30ebc312ca9def25650b4e1d01cdb425c310dca >> Author: Radim Krčmář >> Date: Thu Oct 30 15:06:47 2014 +0100 >> >> It seems that this optimisation is not working reliabliy after live >> migration. I can't reproduce if >> I take a 3.19 kernel and revert this single commit. > > Hello, this bug has gone unnoticed for a long time so it is fixed only > since v4.1 (and v3.19.stable was dead at that point). thanks for the pointer. i noticed the regression some time ago, but never found the time to debug. some distros rely on 3.19 e.g. Ubuntu LTS 14.04.2. I will try to ping the maintainer. Peter > > commit b6ac069532218027f2991cba01d7a72a200688b0 > Author: Radim Krčmář > Date: Fri Jun 5 20:57:41 2015 +0200 > >KVM: x86: fix lapic.timer_mode on restore > >lapic.timer_mode was not properly initialized after migration, which >broke few useful things, like login, by making every sleep eternal. > >Fix this by calling apic_update_lvtt in kvm_apic_post_state_restore. > >There are other slowpaths that update lvtt, so this patch makes sure >something similar doesn't happen again by calling apic_update_lvtt >after every modification. > >Cc: sta...@vger.kernel.org >Fixes: f30ebc312ca9 ("KVM: x86: optimize some accesses to LVTT and SPIV") >Signed-off-by: Radim Krčmář >Signed-off-by: Marcelo Tosatti -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Qemu-devel] Help debugging a regression in KVM Module
2015-08-18 16:54+0200, Peter Lieven: > After some experiments I was able to find out the bad commit that introduced > the regression: > > commit f30ebc312ca9def25650b4e1d01cdb425c310dca > Author: Radim Krčmář > Date: Thu Oct 30 15:06:47 2014 +0100 > > It seems that this optimisation is not working reliabliy after live > migration. I can't reproduce if > I take a 3.19 kernel and revert this single commit. Hello, this bug has gone unnoticed for a long time so it is fixed only since v4.1 (and v3.19.stable was dead at that point). commit b6ac069532218027f2991cba01d7a72a200688b0 Author: Radim Krčmář Date: Fri Jun 5 20:57:41 2015 +0200 KVM: x86: fix lapic.timer_mode on restore lapic.timer_mode was not properly initialized after migration, which broke few useful things, like login, by making every sleep eternal. Fix this by calling apic_update_lvtt in kvm_apic_post_state_restore. There are other slowpaths that update lvtt, so this patch makes sure something similar doesn't happen again by calling apic_update_lvtt after every modification. Cc: sta...@vger.kernel.org Fixes: f30ebc312ca9 ("KVM: x86: optimize some accesses to LVTT and SPIV") Signed-off-by: Radim Krčmář Signed-off-by: Marcelo Tosatti -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Qemu-devel] Help debugging a regression in KVM Module
Am 14.08.2015 um 22:01 schrieb Alex Bennée: Peter Lieven writes: Hi, some time a go I stumbled across a regression in the KVM Module that has been introduced somewhere between 3.17 and 3.19. I have a rather old openSUSE guest with an XFS filesystem which realiably crashes after some live migrations. I originally believed that the issue might be related to my setup with a 3.12 host kernel and kvm-kmod 3.19, but I now found that it is also still present with a 3.19 host kernel with included 3.19 kvm module. My idea was to continue testing on a 3.12 host kernel and then bisect all commits to the kvm related parts. Now my question is how to best bisect only kvm related changes (those that go into kvm-kmod)? In general I don't bother. As it is a bisection you eliminate half the commits at a time you get their fairly quickly anyway. However you can tell bisect which parts of the tree you car about: git bisect start -- arch/arm64/kvm include/linux/kvm* include/uapi/linux/kvm* virt/kvm/ After some experiments I was able to find out the bad commit that introduced the regression: commit f30ebc312ca9def25650b4e1d01cdb425c310dca Author: Radim Krčmář Date: Thu Oct 30 15:06:47 2014 +0100 It seems that this optimisation is not working reliabliy after live migration. I can't reproduce if I take a 3.19 kernel and revert this single commit. Peter -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Qemu-devel] Help debugging a regression in KVM Module
Am 14.08.2015 um 22:01 schrieb Alex Bennée: Peter Lieven writes: Hi, some time a go I stumbled across a regression in the KVM Module that has been introduced somewhere between 3.17 and 3.19. I have a rather old openSUSE guest with an XFS filesystem which realiably crashes after some live migrations. I originally believed that the issue might be related to my setup with a 3.12 host kernel and kvm-kmod 3.19, but I now found that it is also still present with a 3.19 host kernel with included 3.19 kvm module. My idea was to continue testing on a 3.12 host kernel and then bisect all commits to the kvm related parts. Now my question is how to best bisect only kvm related changes (those that go into kvm-kmod)? In general I don't bother. As it is a bisection you eliminate half the commits at a time you get their fairly quickly anyway. However you can tell bisect which parts of the tree you car about: git bisect start -- arch/arm64/kvm include/linux/kvm* include/uapi/linux/kvm* virt/kvm/ Yes, I just have to find out how exactly that works out if I want to bisect the linux submodule of the kvm-kmod repository. But thanks for the pointer on how to limit the directories. Thanks, Peter -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Qemu-devel] Help debugging a regression in KVM Module
Peter Lieven writes: > Hi, > > some time a go I stumbled across a regression in the KVM Module that has been > introduced somewhere > between 3.17 and 3.19. > > I have a rather old openSUSE guest with an XFS filesystem which realiably > crashes after some live migrations. > I originally believed that the issue might be related to my setup with a 3.12 > host kernel and kvm-kmod 3.19, > but I now found that it is also still present with a 3.19 host kernel with > included 3.19 kvm module. > > My idea was to continue testing on a 3.12 host kernel and then bisect all > commits to the kvm related parts. > > Now my question is how to best bisect only kvm related changes (those > that go into kvm-kmod)? In general I don't bother. As it is a bisection you eliminate half the commits at a time you get their fairly quickly anyway. However you can tell bisect which parts of the tree you car about: git bisect start -- arch/arm64/kvm include/linux/kvm* include/uapi/linux/kvm* virt/kvm/ > > Thanks, > Peter -- Alex Bennée -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html