On 31/01/2018 16:53, Jim Mattson wrote: > On Wed, Jan 31, 2018 at 1:42 PM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > >> Can we just say it sucks to be L2 too? :) Because in the end as long as >> no one ever writes to spec_ctrl, everybody is happy. > > Unfortunately, quite a few OS vendors shipped IBRS-based mitigations > earlier this month. (Has Redhat stopped writing to IA32_SPEC_CTRL yet? > :-) Not yet, but getting there. :) > And in the long run, everyone is going to set IA32_SPEC_CTRL.IBRS=1 on > CPUs with IA32_ARCH_CAPABILITIES.IBRS_ALL. And then it will suck for everyone---they will have to pay the price of saving/restoring an MSR that is going to be written just once. Perhaps we will have to tweak the heuristic, only passing IBRS through when the guest writes IBRS=0. In the end I think it's premature to try and optimize for L2 guests of long-lived L1 hypervisors. Paolo