KVM patches applied in weird order in -stable

From: Matt Fleming
Date: Tue Sep 13 2016 - 10:51:09 EST


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.