All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oliver Sang <oliver.sang@intel.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Andy Lutomirski <luto@kernel.org>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Fenghua Yu <fenghua.yu@intel.com>,
	Tony Luck <tony.luck@intel.com>,
	Yu-cheng Yu <yu-cheng.yu@intel.com>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Borislav Petkov <bp@suse.de>,
	Peter Zijlstra <peterz@infradead.org>,
	Kan Liang <kan.liang@linux.intel.com>,
	Chang Seok Bae <chang.seok.bae@intel.com>,
	Megha Dey <megha.dey@linux.intel.com>,
	aubrey.li@intel.com, zhengjun.xing@linux.intel.com,
	feng.tang@intel.com, yujie.liu@intel.com, beibei.si@intel.com,
	philip.li@intel.com, julie.du@intel.com
Subject: Re: [patch V4 00/65] x86/fpu: Spring cleaning and PKRU sanitizing
Date: Fri, 25 Jun 2021 22:50:41 +0800	[thread overview]
Message-ID: <20210625145041.GA29722@xsang-OptiPlex-9020> (raw)
In-Reply-To: <20210623120127.327154589@linutronix.de>

Hi Thomas,

On Wed, Jun 23, 2021 at 02:01:27PM +0200, Thomas Gleixner wrote:
> The main parts of this series are:
> 
>   - Simplification and removal/replacement of redundant and/or
>     overengineered code.
> 
>   - Name space cleanup as the existing names were just a permanent source
>     of confusion.
> 
>   - Clear seperation of user ABI and kernel internal state handling.
> 
>   - Removal of PKRU from being XSTATE managed in the kernel because PKRU
>     has to be eagerly restored on context switch and keeping it in sync
>     in the xstate buffer is just pointless overhead and fragile.
> 
>     The kernel still XSAVEs PKRU on context switch but the value in the
>     buffer is not longer used and never restored from the buffer.
> 
>     This still needs to be cleaned up, but the series is already 40+
>     patches large and the cleanup of this is not a functional problem.
> 
>     The functional issues of PKRU management are fully addressed with the
>     series as is.
> 
>   - Cleanup of fpu signal restore
> 
>     - Make the fast path self contained. Handle #PF directly and skip
>       the slow path on any other exception as that will just end up
>       with the same result that the frame is invalid. This allows
>       the compiler to optimize the slow path out for 64bit kernels
>       w/o ia32 emulation.
> 
>     - Reduce code duplication and unnecessary operations
> 
> It applies on top of
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git master
> 
> and is also available via git:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git x86/fpu

0-Day kernel CI tested this branch from performance view, choosing some sub-tests
from will-it-scale and stress-ng (detail as below)

Test Summary
============
no obvious performance changes found vs v5.13-rc7 so far

Test Environment
================
https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git/log/?h=x86/fpu
* a263e30a4f111 (tglx-devel/x86/fpu) x86/fpu/signal: Let xrstor handle the features to init
* cf917e53a97e9 x86/fpu/signal: Handle #PF in the direct restore path
* 7b269dff0be66 x86/fpu: Return proper error codes from user access functions
* d2d6be9e16386 x86/fpu/signal: Split out the direct restore code
...
* d3ca29fb9911f x86/fpu: Fix copy_xstate_to_kernel() gap handling
*   58a664af246e6 Merge branch 'x86/fpu' of ../tip into x86/fpu
|\
| * b7c11876d24bd (tip/x86/fpu, peterz-queue/x86/fpu) selftests/x86: Test signal frame XSTATE header corruption handling
...
* | 13311e74253fe (tag: v5.13-rc7


64bit kernel testing, upon below platforms:
(1)
model: Cascade Lake
Intel(R) Xeon(R) Gold 6238M CPU @ 2.10GHz
nr_node: 2
nr_cpu: 88
memory: 128G
(2)
model: Ice Lake
nr_node: 2
nr_cpu: 96
memory: 256G


32bit kernel testing, upon below platform:
Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz
model: Ivy Bridge
nr_node: 1
nr_cpu: 8
memory: 16G


tested below test suites:
will-it-scale-performance-context_switch1
will-it-scale-performance-page_fault1
will-it-scale-performance-poll1
will-it-scale-performance-pthread_mutex1
will-it-scale-performance-writeseek1

regarding stress-ng, either no gap or data is unstable on
64bit (1) platform

commit:                                                                                                          
  v5.13-rc7                                                                                                      
  a263e30a4f111e13a6c859102d1b319a79b072c0                                                                       
                                                                                                                 
       v5.13-rc7 a263e30a4f111e13a6c859102d1                                                                     
---------------- ---------------------------                                                                     
         %stddev     %change         %stddev
             \          |                \
 2.786e+08 ±  2%      -1.3%  2.751e+08        stress-ng.switch.ops
   4643776 ±  2%      -1.3%    4585061        stress-ng.switch.ops_per_sec
--
  25884344 ± 15%      +5.3%   27252860 ± 12%  stress-ng.nanosleep.ops
    431397 ± 15%      +5.3%     454204 ± 12%  stress-ng.nanosleep.ops_per_sec
--
  5.48e+09 ±  2%      +4.3%  5.713e+09 ±  3%  stress-ng.yield.ops
  91326562 ±  2%      +4.3%   95215138 ±  3%  stress-ng.yield.ops_per_sec
--
   6723205 ±  3%      -2.0%    6585690 ±  9%  stress-ng.tee.ops
    112049 ±  3%      -2.0%     109755 ±  9%  stress-ng.tee.ops_per_sec
--
   3078530            -0.2%    3072610        stress-ng.zombie.ops
     49390            -0.2%      49295        stress-ng.zombie.ops_per_sec
--
   2261601            -0.1%    2259339        stress-ng.cyclic.ops
     37693            -0.1%      37655        stress-ng.cyclic.ops_per_sec
--
 1.543e+09 ± 16%      +0.4%   1.55e+09 ± 19%  stress-ng.fifo.ops
  25721633 ± 16%      +0.4%   25831339 ± 19%  stress-ng.fifo.ops_per_sec
--
    192171            +0.6%     193383        stress-ng.clone.ops
      2998            +0.6%       3016        stress-ng.clone.ops_per_sec
--
  88703410            -0.5%   88257268        stress-ng.sleep.ops
   1470841            -0.5%    1463509        stress-ng.sleep.ops_per_sec
--
    401598            +0.1%     401990        stress-ng.netlink-proc.ops
      6692            +0.1%       6699        stress-ng.netlink-proc.ops_per_sec
--
 1.182e+08            +2.5%  1.212e+08        stress-ng.softlockup.ops
   1969636            +2.5%    2019730        stress-ng.softlockup.ops_per_sec
--
 1.866e+08            -0.2%  1.863e+08        stress-ng.fanotify.ops
   4754116 ± 12%      -2.8%    4620280 ±  5%  stress-ng.fanotify.ops_per_sec
--
  17926280            -0.3%   17866738        stress-ng.vforkmany.ops
    286256            +0.4%     287262        stress-ng.vforkmany.ops_per_sec
--
 1.381e+09 ± 13%      +8.7%  1.501e+09 ± 19%  stress-ng.fifo.ops
  23013090 ± 13%      +8.7%   25020209 ± 19%  stress-ng.fifo.ops_per_sec
--
 1.165e+08 ±  2%      -2.0%  1.141e+08 ±  3%  stress-ng.splice.ops
   1941398 ±  2%      -2.0%    1901755 ±  3%  stress-ng.splice.ops_per_sec
--
   5476091            -0.2%    5466962        stress-ng.vfork.ops
     91262            -0.2%      91116        stress-ng.vfork.ops_per_sec
--
  21878786            -1.4%   21574984        stress-ng.netlink-task.ops
    364646            -1.4%     359582        stress-ng.netlink-task.ops_per_sec
--
   5023286            +1.6%    5101458        stress-ng.pthread.ops
     83554            +1.6%      84869        stress-ng.pthread.ops_per_sec
--
  92688395 ±  2%      -8.3%   84967931 ±  4%  stress-ng.futex.ops
   1544792 ±  2%      -8.3%    1416117 ±  4%  stress-ng.futex.ops_per_sec
--
   5416582 ±  2%      +1.6%    5504734 ±  5%  stress-ng.wait.ops
     90275 ±  2%      +1.6%      91744 ±  5%  stress-ng.wait.ops_per_sec
--
 7.939e+08 ±  4%      +0.7%  7.998e+08        stress-ng.mq.ops
  13231931 ±  4%      +0.7%   13329018        stress-ng.mq.ops_per_sec
--
 3.936e+08 ± 53%     +51.5%  5.965e+08 ± 37%  stress-ng.hrtimers.ops
   6416615 ± 52%     +49.8%    9609730 ± 38%  stress-ng.hrtimers.ops_per_sec
--
  35268682            -1.1%   34872339        stress-ng.sendfile.ops
    587805            -1.1%     581200        stress-ng.sendfile.ops_per_sec
--
  18126587            -0.7%   18000304 ±  3%  stress-ng.sem-sysv.ops
    302108            -0.7%     300004 ±  3%  stress-ng.sem-sysv.ops_per_sec
--
 9.953e+08 ±  2%      -0.4%  9.912e+08        stress-ng.pipe.ops
  16589030 ±  2%      -0.4%   16519202        stress-ng.pipe.ops_per_sec
--
   1056000            +0.0%    1056000        stress-ng.schedpolicy.ops
     17599            +0.0%      17599        stress-ng.schedpolicy.ops_per_sec
--
 2.481e+09            +1.2%   2.51e+09        stress-ng.vm-splice.ops
  41349053            +1.2%   41828864        stress-ng.vm-splice.ops_per_sec
--
  56805932 ±  2%      +1.1%   57451245 ±  2%  stress-ng.eventfd.ops
    946751 ±  2%      +1.1%     957505 ±  2%  stress-ng.eventfd.ops_per_sec
--
      1605            -1.2%       1585 ±  2%  stress-ng.mmapfork.ops
     25.18 ±  4%      -0.8%      24.98 ±  4%  stress-ng.mmapfork.ops_per_sec
--
   2549139            +1.2%    2578537        stress-ng.fork.ops
     42485            +1.2%      42975        stress-ng.fork.ops_per_sec
--
  16582541 ±  3%     -10.8%   14792067 ± 21%  stress-ng.close.ops
    276357 ±  3%     -10.8%     246515 ± 21%  stress-ng.close.ops_per_sec
--
 1.847e+09            -1.3%  1.822e+09        stress-ng.pipeherd.ops
  30743202            -1.3%   30330538        stress-ng.pipeherd.ops_per_sec
--
   6780757 ±  2%      +4.3%    7070424        stress-ng.tee.ops
    113008 ±  2%      +4.3%     117835        stress-ng.tee.ops_per_sec
--
   3421466            +0.0%    3422853        stress-ng.dnotify.ops
     57024            +0.0%      57047        stress-ng.dnotify.ops_per_sec
--
    749895            -0.9%     742801        stress-ng.kill.ops
     12498            -0.9%      12379        stress-ng.kill.ops_per_sec
--
 3.761e+08            -2.5%  3.668e+08        stress-ng.msg.ops
   6266833            -2.5%    6112949        stress-ng.msg.ops_per_sec
--
   2258479            +0.1%    2260255        stress-ng.daemon.ops
     37641            +0.1%      37670        stress-ng.daemon.ops_per_sec
--
  40560445            -0.8%   40239283        stress-ng.affinity.ops
    668138            -1.6%     657142        stress-ng.affinity.ops_per_sec
--
     21230 ±  4%      -0.9%      21047 ±  2%  stress-ng.inotify.ops
    353.14 ±  4%      -0.9%     349.88 ±  2%  stress-ng.inotify.ops_per_sec
--
  23250444 ±  2%      +1.6%   23627954        stress-ng.fault.ops
    387495 ±  2%      +1.6%     393795        stress-ng.fault.ops_per_sec
--
  3.94e+08            -0.2%  3.933e+08        stress-ng.sem.ops
   6567438            -0.2%    6555371        stress-ng.sem.ops_per_sec
--
    698544            -0.0%     698480        stress-ng.session.ops
     11494            +0.0%      11495        stress-ng.session.ops_per_sec

> 
> This is a follow up to V3 which can be found here:
> 
>      https://lore.kernel.org/r/20210618141823.161158090@linutronix.de
> 
> Changes vs. V3:
> 
>   - Dropped the two bugfixes which are applied already and rebased on top
> 
>   - Addressed review comments (Andy, Boris)
> 
>     Patches: 13, 35, 36, 37, 46, 58, 62, 63
> 
>   - Fixed the math-emu fallout which I had stashed safely on the 32bit
>     testbox (Boris)
> 
>     Patch: 28
> 
>   - Picked up tags
> 
> Thanks to everyone for review, feedback and testing (various teams
> @Intel).
> 
> Note: I've not picked up any tested-by tags. It would be nice to have
> them on this hopefully final version.
> 
> Thanks,
> 
> 	tglx
> ---
>  arch/x86/events/intel/lbr.c          |    6 
>  arch/x86/include/asm/fpu/internal.h  |  202 ++++------
>  arch/x86/include/asm/fpu/xstate.h    |   78 +++-
>  arch/x86/include/asm/pgtable.h       |   57 ---
>  arch/x86/include/asm/pkeys.h         |    9 
>  arch/x86/include/asm/pkru.h          |   62 +++
>  arch/x86/include/asm/processor.h     |    9 
>  arch/x86/include/asm/special_insns.h |   14 
>  arch/x86/kernel/cpu/common.c         |   34 -
>  arch/x86/kernel/fpu/core.c           |  282 +++++++--------
>  arch/x86/kernel/fpu/init.c           |   15 
>  arch/x86/kernel/fpu/regset.c         |  223 ++++++------
>  arch/x86/kernel/fpu/signal.c         |  419 ++++++++++------------
>  arch/x86/kernel/fpu/xstate.c         |  645 +++++++++++++----------------------
>  arch/x86/kernel/process.c            |   22 +
>  arch/x86/kernel/process_64.c         |   28 +
>  arch/x86/kernel/traps.c              |    5 
>  arch/x86/kvm/svm/sev.c               |    1 
>  arch/x86/kvm/x86.c                   |   56 +--
>  arch/x86/math-emu/fpu_proto.h        |    2 
>  arch/x86/math-emu/load_store.c       |    2 
>  arch/x86/math-emu/reg_ld_str.c       |    2 
>  arch/x86/mm/extable.c                |    2 
>  arch/x86/mm/fault.c                  |    2 
>  arch/x86/mm/pkeys.c                  |   22 -
>  include/linux/pkeys.h                |    4 
>  26 files changed, 1037 insertions(+), 1166 deletions(-)
> 
> 

      parent reply	other threads:[~2021-06-25 14:34 UTC|newest]

Thread overview: 142+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-23 12:01 [patch V4 00/65] x86/fpu: Spring cleaning and PKRU sanitizing Thomas Gleixner
2021-06-23 12:01 ` [patch V4 01/65] x86/fpu: Fix copy_xstate_to_kernel() gap handling Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 02/65] x86/pkeys: Revert a5eff7259790 ("x86/pkeys: Add PKRU value to init_fpstate") Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 03/65] x86/fpu: Mark various FPU states __ro_after_init Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] x86/fpu: Mark various FPU state variables __ro_after_init tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 04/65] x86/fpu: Make xfeatures_mask_all __ro_after_init Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 05/65] x86/fpu: Get rid of fpu__get_supported_xfeatures_mask() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 06/65] x86/fpu: Remove unused get_xsave_field_ptr() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 07/65] x86/fpu: Move inlines where they belong Thomas Gleixner
2021-06-23 18:43   ` Bae, Chang Seok
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 08/65] x86/fpu: Limit xstate copy size in xstateregs_set() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 09/65] x86/fpu: Sanitize xstateregs_set() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2022-07-14  4:04   ` [patch V4 09/65] " Andrei Vagin
2022-07-25 17:47     ` Dave Hansen
2022-07-25 17:57       ` Andrei Vagin
2022-07-25 21:26         ` Dave Hansen
2022-07-28 23:32           ` Chang S. Bae
2022-08-05 12:12             ` Andrei Vagin
2022-08-05 18:24               ` Chang S. Bae
2022-08-05 18:35                 ` Dave Hansen
2021-06-23 12:01 ` [patch V4 10/65] x86/fpu: Reject invalid MXCSR values in copy_kernel_to_xstate() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 11/65] x86/fpu: Simplify PTRACE_GETREGS code Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Dave Hansen
2021-06-23 12:01 ` [patch V4 12/65] x86/fpu: Rewrite xfpregs_set() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Andy Lutomirski
2021-06-23 12:01 ` [patch V4 13/65] x86/fpu: Fail ptrace() requests that try to set invalid MXCSR values Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Andy Lutomirski
2021-06-23 12:01 ` [patch V4 14/65] x86/fpu: Clean up fpregs_set() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Andy Lutomirski
2021-06-23 12:01 ` [patch V4 15/65] x86/fpu: Make copy_xstate_to_kernel() usable for [x]fpregs_get() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-24 15:09   ` [PATCH] x86/fpu/xstate: Clear xstate header in copy_xstate_to_uabi_buf() again Thomas Gleixner
2021-06-24 15:41     ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 16/65] x86/fpu: Use copy_xstate_to_uabi_buf() in xfpregs_get() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 17/65] x86/fpu: Use copy_xstate_to_uabi_buf() in fpregs_get() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 18/65] x86/fpu: Remove fpstate_sanitize_xstate() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 19/65] x86/fpu/regset: Move fpu__read_begin() into regset Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 20/65] x86/fpu: Move fpu__write_begin() to regset Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 21/65] x86/fpu: Get rid of using_compacted_format() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 22/65] x86/kvm: Avoid looking up PKRU in XSAVE buffer Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Dave Hansen
2021-06-23 12:01 ` [patch V4 23/65] x86/fpu: Cleanup arch_set_user_pkey_access() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 24/65] x86/fpu: Get rid of copy_supervisor_to_kernel() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 25/65] x86/fpu: Rename copy_xregs_to_kernel() and copy_kernel_to_xregs() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 26/65] x86/fpu: Rename copy_user_to_xregs() and copy_xregs_to_user() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 27/65] x86/fpu: Rename fxregs related copy functions Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] x86/fpu: Rename fxregs-related " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 28/65] x86/math-emu: Rename frstor() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 29/65] x86/fpu: Rename fregs related copy functions Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] x86/fpu: Rename fregs-related " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 30/65] x86/fpu: Rename xstate copy functions which are related to UABI Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 31/65] x86/fpu: Deduplicate copy_uabi_from_user/kernel_to_xstate() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:01 ` [patch V4 32/65] x86/fpu: Rename copy_fpregs_to_fpstate() to save_fpregs_to_fpstate() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 33/65] x86/fpu: Get rid of the FNSAVE optimization Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 34/65] x86/fpu: Rename copy_kernel_to_fpregs() to restore_fpregs_from_fpstate() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 35/65] x86/fpu: Rename initstate copy functions Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 36/65] x86/fpu: Rename "dynamic" XSTATEs to "independent" Thomas Gleixner
2021-06-23 12:02 ` [patch V4 37/65] x86/fpu/xstate: Sanitize handling of independent features Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 38/65] x86/pkeys: Move read_pkru() and write_pkru() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Dave Hansen
2021-06-23 12:02 ` [patch V4 39/65] x86/fpu: Rename and sanitize fpu__save/copy() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 40/65] x86/cpu: Sanitize X86_FEATURE_OSPKE Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 41/65] x86/pkru: Provide pkru_get_init_value() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 42/65] x86/pkru: Provide pkru_write_default() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 43/65] x86/cpu: Write the default PKRU value when enabling PKE Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 44/65] x86/fpu: Use pkru_write_default() in copy_init_fpstate_to_fpregs() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 45/65] x86/fpu: Rename fpu__clear_all() to fpu_flush_thread() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 46/65] x86/fpu: Clean up the fpu__clear() variants Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Andy Lutomirski
2021-06-23 12:02 ` [patch V4 47/65] x86/fpu: Rename __fpregs_load_activate() to fpregs_restore_userregs() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 48/65] x86/fpu: Move FXSAVE_LEAK quirk info __copy_kernel_to_fpregs() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 49/65] x86/fpu: Rename xfeatures_mask_user() to xfeatures_mask_uabi() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 50/65] x86/fpu: Dont restore PKRU in fpregs_restore_userspace() Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 51/65] x86/fpu: Add PKRU storage outside of task XSAVE buffer Thomas Gleixner
2021-06-23 22:09   ` [tip: x86/fpu] " tip-bot2 for Dave Hansen
2021-06-23 12:02 ` [patch V4 52/65] x86/fpu: Hook up PKRU into ptrace() Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Dave Hansen
2021-06-23 12:02 ` [patch V4 53/65] x86/fpu: Mask PKRU from kernel XRSTOR[S] operations Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 54/65] x86/fpu: Remove PKRU handling from switch_fpu_finish() Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 55/65] x86/fpu: Dont store PKRU in xstate in fpu_reset_fpstate() Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] x86/fpu: Don't " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 56/65] x86/pkru: Remove xstate fiddling from write_pkru() Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 57/65] x86/fpu: Mark init_fpstate __ro_after_init Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 58/65] x86/fpu/signal: Move initial checks into fpu__sig_restore() Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] x86/fpu/signal: Move initial checks into fpu__restore_sig() tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 59/65] x86/fpu/signal: Remove the legacy alignment check Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 60/65] x86/fpu/signal: Sanitize the xstate check on sigframe Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 61/65] x86/fpu/signal: Sanitize copy_user_to_fpregs_zeroing() Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 62/65] x86/fpu/signal: Split out the direct restore code Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 63/65] x86/fpu: Return proper error codes from user access functions Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 64/65] x86/fpu/signal: Handle #PF in the direct restore path Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-23 12:02 ` [patch V4 65/65] x86/fpu/signal: Let xrstor handle the features to init Thomas Gleixner
2021-06-23 22:08   ` [tip: x86/fpu] " tip-bot2 for Thomas Gleixner
2021-06-25 14:50 ` Oliver Sang [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210625145041.GA29722@xsang-OptiPlex-9020 \
    --to=oliver.sang@intel.com \
    --cc=aubrey.li@intel.com \
    --cc=beibei.si@intel.com \
    --cc=bigeasy@linutronix.de \
    --cc=bp@suse.de \
    --cc=chang.seok.bae@intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=feng.tang@intel.com \
    --cc=fenghua.yu@intel.com \
    --cc=julie.du@intel.com \
    --cc=kan.liang@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@kernel.org \
    --cc=megha.dey@linux.intel.com \
    --cc=peterz@infradead.org \
    --cc=philip.li@intel.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=yu-cheng.yu@intel.com \
    --cc=yujie.liu@intel.com \
    --cc=zhengjun.xing@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.