linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/10] x86: Clean up percpu operations
@ 2020-05-30 22:11 Brian Gerst
  2020-05-30 22:11 ` [PATCH v2 01/10] x86/percpu: Introduce size abstraction macros Brian Gerst
                   ` (11 more replies)
  0 siblings, 12 replies; 32+ messages in thread
From: Brian Gerst @ 2020-05-30 22:11 UTC (permalink / raw)
  To: linux-kernel, x86
  Cc: Thomas Gleixner, Ingo Molnar, Borislav Petkov, H . Peter Anvin,
	Andy Lutomirski, Peter Zijlstra, Nick Desaulniers, Brian Gerst

The core percpu operations already have a switch on the width of the
data type, which resulted in an extra amount of dead code being
generated with the x86 operations having another switch.  This patch set
rewrites the x86 ops to remove the switch.  Additional cleanups are to
use named assembly operands, and to cast variables to the width used in
the assembly to make Clang happy.

Changes from v1:
- Add separate patch for XADD constraint fix
- Fixed sparse truncation warning
- Add cleanup of percpu_stable_op()
- Add patch to Remove PER_CPU()

Brian Gerst (10):
  x86/percpu: Introduce size abstraction macros
  x86/percpu: Clean up percpu_to_op()
  x86/percpu: Clean up percpu_from_op()
  x86/percpu: Clean up percpu_add_op()
  x86/percpu: Remove "e" constraint from XADD
  x86/percpu: Clean up percpu_add_return_op()
  x86/percpu: Clean up percpu_xchg_op()
  x86/percpu: Clean up percpu_cmpxchg_op()
  x86/percpu: Clean up percpu_stable_op()
  x86/percpu: Remove unused PER_CPU() macro

 arch/x86/include/asm/percpu.h | 510 ++++++++++++----------------------
 1 file changed, 172 insertions(+), 338 deletions(-)


base-commit: 229aaa8c059f2c908e0561453509f996f2b2d5c4
-- 
2.25.4


^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2020-07-14  1:30 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-30 22:11 [PATCH v2 00/10] x86: Clean up percpu operations Brian Gerst
2020-05-30 22:11 ` [PATCH v2 01/10] x86/percpu: Introduce size abstraction macros Brian Gerst
2020-06-01 20:48   ` Nick Desaulniers
2020-05-30 22:11 ` [PATCH v2 02/10] x86/percpu: Clean up percpu_to_op() Brian Gerst
2020-07-09 10:30   ` Peter Zijlstra
2020-07-10  4:38     ` Brian Gerst
2020-07-10  8:53       ` Peter Zijlstra
2020-07-10 16:56         ` Nick Desaulniers
2020-05-30 22:11 ` [PATCH v2 03/10] x86/percpu: Clean up percpu_from_op() Brian Gerst
2020-05-30 22:11 ` [PATCH v2 04/10] x86/percpu: Clean up percpu_add_op() Brian Gerst
2020-06-01 20:18   ` Nick Desaulniers
2020-05-30 22:11 ` [PATCH v2 05/10] x86/percpu: Remove "e" constraint from XADD Brian Gerst
2020-06-01 18:50   ` Nick Desaulniers
2020-05-30 22:11 ` [PATCH v2 06/10] x86/percpu: Clean up percpu_add_return_op() Brian Gerst
2020-06-01 19:47   ` Nick Desaulniers
2020-05-30 22:11 ` [PATCH v2 07/10] x86/percpu: Clean up percpu_xchg_op() Brian Gerst
2020-05-30 22:11 ` [PATCH v2 08/10] x86/percpu: Clean up percpu_cmpxchg_op() Brian Gerst
2020-05-30 22:11 ` [PATCH v2 09/10] x86/percpu: Clean up percpu_stable_op() Brian Gerst
2020-06-01 20:43   ` Nick Desaulniers
2020-06-02 14:19     ` Brian Gerst
2020-07-09 10:25       ` Peter Zijlstra
2020-05-30 22:11 ` [PATCH v2 10/10] x86/percpu: Remove unused PER_CPU() macro Brian Gerst
2020-06-01 20:26   ` Nick Desaulniers
2020-06-01 21:00 ` [PATCH v2 00/10] x86: Clean up percpu operations Nick Desaulniers
2020-07-08 19:36   ` Nick Desaulniers
2020-07-09 20:02     ` Nick Desaulniers
2020-07-13 22:24     ` Nick Desaulniers
2020-07-13 22:40       ` Linus Torvalds
2020-07-13 22:58         ` Nick Desaulniers
2020-07-14  0:31           ` Nick Desaulniers
2020-07-14  1:29             ` Linus Torvalds
2020-07-09 10:30 ` Peter Zijlstra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).