Re: [PATCH 00/15] x86: Enable FSGSBASE instructions

From: Andy Lutomirski
Date: Tue Mar 20 2018 - 11:05:51 EST


On Mon, Mar 19, 2018 at 5:49 PM, Chang S. Bae <chang.seok.bae@xxxxxxxxx> wrote:
> FSGSBASE is 64-bit instruction set to allow read/write
> FS/GS base from any privilege. As introduced from
> Ivybridge, enabling effort has been revolving quite long
> [2,3,4] for various reasons. After extended discussions [1],
> this patchset is proposed to introduce new ABIs of
> customizing FS/GS base (separate from its selector).
>
> FSGSBASE-enabled VM can be located on hosts with
> either HW virtualization or SW emulation. KVM advertises
> FSGSBASE when physical CPU has and emulation is
> supported in QEMU/TCG [5]. In a pool of mixed systems, VMM
> may disable FSGSBASE for seamless VM migrations [6].
>
> A couple of major benefits are expected. Kernel will have
> performance improvement in context switch by skipping MSR
> write for GS base. User-level programs (such as JAVA-based)
> benefit from avoiding system calls to edit FS/GS base.

Can you describe what changed since the last submission? It looks
like a lot has changed and this series is much more complicated and
much more fragile than it used to be. Why?