xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC 0/9] x86: Improvements to trap handling
@ 2014-05-15  9:48 Andrew Cooper
  2014-05-15  9:48 ` [PATCH RFC 1/9] x86/traps: Names for system descriptor types Andrew Cooper
                   ` (9 more replies)
  0 siblings, 10 replies; 33+ messages in thread
From: Andrew Cooper @ 2014-05-15  9:48 UTC (permalink / raw)
  To: Xen-devel; +Cc: Andrew Cooper, Feng Wu, Keir Fraser, Jan Beulich, Tim Deegan

This is a large change to trap handling.  Its underlying purpose is to avoid
the current situation where ignore_int() in the .init section remains patched
into each IDT in the reserved exception vectors.

As a side effect, Xen gains full bugframe and exception_table support from the
beginning of __start_xen.

This is far from comprehensivly tested, but has been tested with bugframes and
extable redirects from right after setting up the console (so printing works),
along with the panic() and reboot paths.

I notice that Feng Wu has submitted a patch moving the irq-stub generation,
and it is completely by chance that I have functionally similar patch in this
series.

Andrew Cooper (9):
  x86/traps: Names for system descriptor types
  x86/traps: Make panic and reboot paths safe during early boot
  x86/traps: Make the main trap handlers safe for use early during Xen boot
  x86/misc: Early cleanup
  x86/traps: Functional prep work
  x86/boot: Install trap handlers much earlier on boot
  x86/boot: Drop pre-C IDT patching
  x86/irqs: Move interrupt-stub generation out of C
  x86/misc: Post cleanup

 xen/arch/x86/boot/x86_64.S      |   56 +-----------------
 xen/arch/x86/cpu/common.c       |   70 +++++++++++++++++-----
 xen/arch/x86/cpu/mcheck/mce.c   |    5 +-
 xen/arch/x86/crash.c            |    2 +-
 xen/arch/x86/i8259.c            |   69 +---------------------
 xen/arch/x86/mm.c               |   10 ++--
 xen/arch/x86/setup.c            |   42 ++++++-------
 xen/arch/x86/shutdown.c         |   42 +++++++------
 xen/arch/x86/smpboot.c          |   21 ++-----
 xen/arch/x86/traps.c            |  124 ++++++++++++++++++++++++---------------
 xen/arch/x86/x86_64/Makefile    |    1 +
 xen/arch/x86/x86_64/entry.S     |   22 +++----
 xen/arch/x86/x86_64/irqgen.S    |   72 +++++++++++++++++++++++
 xen/arch/x86/x86_64/traps.c     |   31 +---------
 xen/common/symbols.c            |    2 +-
 xen/drivers/char/console.c      |    5 --
 xen/include/asm-x86/asm_defns.h |    5 --
 xen/include/asm-x86/config.h    |    1 +
 xen/include/asm-x86/desc.h      |    9 ++-
 xen/include/asm-x86/ldt.h       |    2 +-
 xen/include/asm-x86/processor.h |    6 +-
 xen/include/asm-x86/setup.h     |    1 -
 xen/include/asm-x86/system.h    |    1 +
 xen/include/xen/kernel.h        |    1 +
 xen/include/xen/sched.h         |    1 +
 25 files changed, 295 insertions(+), 306 deletions(-)
 create mode 100644 xen/arch/x86/x86_64/irqgen.S

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

end of thread, other threads:[~2014-05-16  8:49 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-15  9:48 [PATCH RFC 0/9] x86: Improvements to trap handling Andrew Cooper
2014-05-15  9:48 ` [PATCH RFC 1/9] x86/traps: Names for system descriptor types Andrew Cooper
2014-05-15  9:56   ` Andrew Cooper
2014-05-15 10:08   ` Jan Beulich
2014-05-15 10:26     ` Andrew Cooper
2014-05-15 12:10       ` Jan Beulich
2014-05-15  9:48 ` [PATCH RFC 2/9] x86/traps: Make panic and reboot paths safe during early boot Andrew Cooper
2014-05-15 10:19   ` Jan Beulich
2014-05-15 10:53     ` Andrew Cooper
2014-05-15 12:12       ` Jan Beulich
2014-05-15 15:46         ` Andrew Cooper
2014-05-15 15:59           ` Jan Beulich
2014-05-15  9:48 ` [PATCH RFC 3/9] x86/traps: Make the main trap handlers safe for use early during Xen boot Andrew Cooper
2014-05-15 10:20   ` Jan Beulich
2014-05-15  9:48 ` [PATCH RFC 4/9] x86/misc: Early cleanup Andrew Cooper
2014-05-15 10:32   ` Jan Beulich
2014-05-15 10:38     ` Andrew Cooper
2014-05-15  9:48 ` [PATCH RFC 5/9] x86/traps: Functional prep work Andrew Cooper
2014-05-15 10:36   ` Jan Beulich
2014-05-15 10:45     ` Andrew Cooper
2014-05-15 12:15       ` Jan Beulich
2014-05-15 12:42         ` Andrew Cooper
2014-05-15  9:48 ` [PATCH RFC 6/9] x86/boot: Install trap handlers much earlier on boot Andrew Cooper
2014-05-15 10:53   ` Jan Beulich
2014-05-15 11:05     ` Andrew Cooper
2014-05-15 12:21       ` Jan Beulich
2014-05-15  9:48 ` [PATCH RFC 7/9] x86/boot: Drop pre-C IDT patching Andrew Cooper
2014-05-15  9:48 ` [PATCH RFC 8/9] x86/irqs: Move interrupt-stub generation out of C Andrew Cooper
2014-05-15 13:06   ` Jan Beulich
2014-05-15  9:48 ` [PATCH RFC 9/9] x86/misc: Post cleanup Andrew Cooper
2014-05-15 13:14   ` Jan Beulich
2014-05-15 13:17     ` Andrew Cooper
2014-05-16  8:49 ` [PATCH RFC 0/9] x86: Improvements to trap handling Wu, Feng

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