linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch 0/3] x86/paravirt: Rework paravirt patching
@ 2019-04-24 13:41 Thomas Gleixner
  2019-04-24 13:41 ` [patch 1/3] x86/paravirt: Remove bogus extern declarations Thomas Gleixner
                   ` (2 more replies)
  0 siblings, 3 replies; 28+ messages in thread
From: Thomas Gleixner @ 2019-04-24 13:41 UTC (permalink / raw)
  To: LKML; +Cc: x86, Juergen Gross, Andi Kleen

Andi tried to make the paravirt patch magic work nicely with LTO. It turned
out that the DEF_NATIVE() macro is clever but fragile. Even without LTO it
works by chance and not by design.

As the paravirt patch tables are not changed frequently it's reasonable to
convert them to regular data which is initialized with byte sequences.

Looking at Andi's attempt to change the existing code made me realize
that there is no real reason to have two variants for 32 and 64 bit
which just differ slightly.

The following series unifies the 32/64bit implementation and converts
it to use regular data at the end.

Thanks,

	tglx

8<--------------
 a/arch/x86/kernel/paravirt_patch_32.c |   67 ------------------
 a/arch/x86/kernel/paravirt_patch_64.c |   75 --------------------
 arch/x86/include/asm/paravirt_types.h |    4 -
 arch/x86/kernel/Makefile              |    4 -
 b/arch/x86/kernel/paravirt_patch.c    |  126 ++++++++++++++++++++++++++++++++++
 5 files changed, 128 insertions(+), 148 deletions(-)



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

end of thread, other threads:[~2019-05-24  8:01 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-24 13:41 [patch 0/3] x86/paravirt: Rework paravirt patching Thomas Gleixner
2019-04-24 13:41 ` [patch 1/3] x86/paravirt: Remove bogus extern declarations Thomas Gleixner
2019-04-25  7:31   ` [tip:x86/paravirt] " tip-bot for Thomas Gleixner
2019-05-24  7:58   ` tip-bot for Thomas Gleixner
2019-04-24 13:41 ` [patch 2/3] x86/paravirt: Unify 32/64 bit patch code Thomas Gleixner
2019-04-25  7:32   ` [tip:x86/paravirt] " tip-bot for Thomas Gleixner
2019-05-24  8:00   ` [tip:x86/paravirt] x86/paravirt: Unify the 32/64 bit paravirt patching code tip-bot for Thomas Gleixner
2019-04-24 13:41 ` [patch 3/3] x86/paravirt: Replace paravirt patch asm magic Thomas Gleixner
2019-04-25  6:52   ` Ingo Molnar
2019-04-25  7:22     ` Thomas Gleixner
2019-04-25  7:46       ` Juergen Gross
2019-04-25  8:10       ` [PATCH] x86/paravirt: Match paravirt patchlet field definition ordering to initialization ordering Ingo Molnar
2019-04-25  9:17         ` [PATCH] x86/paravirt: Detect oversized patching bugs as they happen and BUG_ON() to avoid later crashes Ingo Molnar
2019-04-25  9:21           ` Peter Zijlstra
2019-04-25  9:50             ` x86/paravirt: Detect over-sized patching bugs in paravirt_patch_call() Ingo Molnar
2019-04-25 10:22               ` Peter Zijlstra
2019-04-25 10:57                 ` Ingo Molnar
2019-04-25 11:30                   ` Juergen Gross
2019-04-25 12:30                     ` Juergen Gross
2019-04-25 11:40                   ` Peter Zijlstra
2019-04-25 12:30                     ` Peter Zijlstra
2019-05-24  7:59               ` [tip:x86/paravirt] " tip-bot for Ingo Molnar
2019-05-24  7:58           ` [tip:x86/paravirt] x86/paravirt: Detect over-sized patching bugs in paravirt_patch_insns() tip-bot for Ingo Molnar
2019-05-24  8:01         ` [tip:x86/paravirt] x86/paravirt: Match paravirt patchlet field definition ordering to initialization ordering tip-bot for Ingo Molnar
2019-04-25  8:08     ` [patch 3/3] x86/paravirt: Replace paravirt patch asm magic Peter Zijlstra
2019-04-25  8:19       ` Peter Zijlstra
2019-04-25  9:20       ` Ingo Molnar
2019-05-24  8:00   ` [tip:x86/paravirt] x86/paravirt: Replace the " tip-bot for Thomas Gleixner

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).