[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1458576969-13309-1-git-send-email-andi@firstfloor.org>
Date: Mon, 21 Mar 2016 09:16:00 -0700
From: Andi Kleen <andi@...stfloor.org>
To: x86@...nel.org
Cc: luto@...capital.net, linux-kernel@...r.kernel.org
Subject: Updated version of RD/WR FS/GS BASE patchkit
This is a reworked version of my older fsgsbase patchkit.
Main changes:
- Ported to new entry/* code, which simplified it somewhat
- Now has a test program
- Fixed ptrace/core dump support
- Better documentation
- Some minor fixes improvement
This adds kernel support for some Intel instructions that
allow fast access to the FS and GS 64bit base. They need
some changes to entry_64.S because they allow user
to fully control the GS base.
Advantages:
- NMIs (and other "paranoid" interrupts) avoid
one RDMSR which makes them faster
- User space can use these instructions, mainly
for efficient context switching with user thread libraries
- Context switches do not need to use MSR writes
anymore to context switch FS/GS base >4GB. This
will speed up applications that have enough thread
local data that it won't fit below 4GB.
- User space can use GS efficiently as an additional
global pointer register
I also included one minor (unrelated) optimization to
disable an unneeded old SWAPGS workaround.
-Andi
Powered by blists - more mailing lists