This is an attempt to fix David's reported problem with set_exception_return
and make it more robust.

Patch 1 introduces setjmp; patches 2 and 3 replace test_for_exception
and set_exception_return with setjmp/longjmp.  Patch 4 provides further
cleanups.

Paolo

Paolo Bonzini (4):
  lib: add setjmp header and x86 implementation
  x86: replace set_exception_return with longjmp-based implementation
  x86: remove test_for_exception
  x86: apic: cleanup

 config/config-i386.mak       |  2 ++
 config/config-x86-common.mak |  4 +++-
 config/config-x86_64.mak     |  2 ++
 lib/setjmp.h                 | 12 +++++++++++
 lib/x86/desc.c               | 24 +++++++++------------
 lib/x86/desc.h               |  8 ++++---
 lib/x86/setjmp32.S           | 25 ++++++++++++++++++++++
 lib/x86/setjmp64.S           | 27 ++++++++++++++++++++++++
 x86/apic.c                   | 50 ++++++++++++++++++++------------------------
 x86/setjmp.c                 | 19 +++++++++++++++++
 x86/vmx.c                    | 43 ++++++++++++++++++++++---------------
 11 files changed, 154 insertions(+), 62 deletions(-)
 create mode 100644 lib/setjmp.h
 create mode 100644 lib/x86/setjmp32.S
 create mode 100644 lib/x86/setjmp64.S
 create mode 100644 x86/setjmp.c

-- 
2.5.0

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to