> On Wed, Jan 31, 2018 at 8:55 AM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > > > In fact this MSR can even be passed down unconditionally, since it needs > > no save/restore and has no ill performance effect on the sibling > > hyperthread. > > I'm a bit surprised to hear that IBPB has no ill performance impact on > the sibling hyperthread. On current CPUs, this has to flush the BTB, > doesn't it? And since the BTB is shared between hyperthreads, doesn't > the sibling lose all of its branch predictions? IBPB most definitely (in current implementations) will stop both hyperthreads for the flush. IBPB is not a cheap operation on a system level