Re: KVM patches applied in weird order in -stable

From: Paolo Bonzini
Date: Tue Sep 13 2016 - 12:26:23 EST




On 13/09/2016 16:58, Greg KH wrote:
> [adding stable@ as this is a stable issue, not a 'normal' issue]
>
> On Tue, Sep 13, 2016 at 03:51:00PM +0100, Matt Fleming wrote:
>> Folks,
>>
>> While hunting down a performance issue involving KVM I was surprised
>> to see "native_set_debugreg()" as the first entry in `perf top`.
>>
>> Digging deeper, it looks as though the following patches were applied
>> in the wrong order in -stable. This is the order as they appear in
>> Linus' tree,
>>
>> [0] commit 4e422bdd2f84 ("KVM: x86: fix missed hardware breakpoints")
>> [1] commit 172b2386ed16 ("KVM: x86: fix missed hardware breakpoints")
>> [2] commit 70e4da7a8ff6 ("KVM: x86: fix root cause for missed hardware breakpoints")
>>
>> but this is the order for linux-4.4.y
>>
>> [1] commit fc90441e728a ("KVM: x86: fix missed hardware breakpoints")
>> [2] commit 25e8618619a5 ("KVM: x86: fix root cause for missed hardware breakpoints")
>> [0] commit 0f6e5e26e68f ("KVM: x86: fix missed hardware breakpoints")
>>
>> The upshot is that KVM_DEBUGREG_RELOAD is always set when returning
>> from kvm_arch_vcpu_load() in stable, but not in Linus' tree.
>
> How would applying these in a different order cause breakage?

[2] is reverting [0]+[1]. Stable is not due to the different order.

> And if this is a problem, can you please send me a patch to fix it up?

Yup, on the way.

Paolo