On Mon, 28 Jan 2019, Zhenzhong Duan wrote:
On 2019/1/26 2:03, Thomas Gleixner wrote:
Bah, nonsense. Brain was clearly still out for lunch and I confused IBPB
and STIBP for a moment. cond_ibpb() is the thing issues in switch_mm() and
that is not leaving a stale MSR around because we only write to it when we
need the barrier. The bit is not stale because the barrier is only issued
with the write. The bit has not to be cleared.
So the only 'issue' what happens is that switch_to() either issues a
barrier too much or misses one. That's really not a problem.
Ok, yes, the purpose of this patch is to avoid the one missed barrier.
And that missed barrier is not worth it to do extra work in switch_to/mm
simply because it's a one off event and there is no way to exploit that
reliably.