Re: [RFC PATCH 2/2] x86/ibpb: Prevent missed IBPB flush

2018-01-25 Thread Tim Chen
On 01/25/2018 12:20 AM, David Woodhouse wrote: > On Wed, 2018-01-24 at 16:36 -0800, Tim Chen wrote: >> It is possible that the last uesr mm that we recorded for a cpu was >> released, and a new mm with identical address was allocated when we >> check it again. We could skip IBPB flush here for

Re: [RFC PATCH 2/2] x86/ibpb: Prevent missed IBPB flush

2018-01-25 Thread Tim Chen
On 01/25/2018 12:20 AM, David Woodhouse wrote: > On Wed, 2018-01-24 at 16:36 -0800, Tim Chen wrote: >> It is possible that the last uesr mm that we recorded for a cpu was >> released, and a new mm with identical address was allocated when we >> check it again. We could skip IBPB flush here for

Re: [RFC PATCH 2/2] x86/ibpb: Prevent missed IBPB flush

2018-01-25 Thread David Woodhouse
On Wed, 2018-01-24 at 16:36 -0800, Tim Chen wrote: > It is possible that the last uesr mm that we recorded for a cpu was > released, and a new mm with identical address was allocated when we > check it again.  We could skip IBPB flush here for the process with > the new mm. > > It is a difficult

Re: [RFC PATCH 2/2] x86/ibpb: Prevent missed IBPB flush

2018-01-25 Thread David Woodhouse
On Wed, 2018-01-24 at 16:36 -0800, Tim Chen wrote: > It is possible that the last uesr mm that we recorded for a cpu was > released, and a new mm with identical address was allocated when we > check it again.  We could skip IBPB flush here for the process with > the new mm. > > It is a difficult

[RFC PATCH 2/2] x86/ibpb: Prevent missed IBPB flush

2018-01-24 Thread Tim Chen
It is possible that the last uesr mm that we recorded for a cpu was released, and a new mm with identical address was allocated when we check it again. We could skip IBPB flush here for the process with the new mm. It is a difficult to exploit case as we have to exit() a process on a cpu, free

[RFC PATCH 2/2] x86/ibpb: Prevent missed IBPB flush

2018-01-24 Thread Tim Chen
It is possible that the last uesr mm that we recorded for a cpu was released, and a new mm with identical address was allocated when we check it again. We could skip IBPB flush here for the process with the new mm. It is a difficult to exploit case as we have to exit() a process on a cpu, free