linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* use of setjmp/longjmp in x86 emulator.
@ 2010-03-01  9:18 Gleb Natapov
  2010-03-01 12:45 ` Takuya Yoshikawa
  2010-03-01 16:13 ` Zachary Amsden
  0 siblings, 2 replies; 24+ messages in thread
From: Gleb Natapov @ 2010-03-01  9:18 UTC (permalink / raw)
  To: linux-kernel; +Cc: mingo, avi, mtosatti, zamsden

I am looking at improving KVM x86 emulator. Current code does not
handle some special cases correctly (code execution from ROM, ins/outs
to/from MMIO) and many exception conditions during instruction emulation
are not handled correctly. There is a lot of code in emulator that is
there only for exception propagation. Using setjmp/longjmp will be very
beneficial here as exception condition during instruction execution
maps very naturally to setjmp/longjmp, so my question is what about
adding setjmp/longjmp implementation to the kernel, or alternatively,
if there is a fear that it can be abused, add it locally to emulator.c?
Note that instruction emulation is always done in process context.

--
			Gleb.

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

end of thread, other threads:[~2010-03-09  6:28 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-01  9:18 use of setjmp/longjmp in x86 emulator Gleb Natapov
2010-03-01 12:45 ` Takuya Yoshikawa
2010-03-01 12:52   ` Gleb Natapov
2010-03-01 13:17     ` Takuya Yoshikawa
2010-03-01 13:26       ` Gleb Natapov
2010-03-01 19:13         ` john cooper
2010-03-02  7:28           ` Gleb Natapov
2010-03-07  9:00             ` Avi Kivity
2010-03-08 23:11               ` Eric W. Biederman
2010-03-09  6:28                 ` Gleb Natapov
2010-03-01 16:13 ` Zachary Amsden
2010-03-01 17:47   ` Gleb Natapov
2010-03-01 18:39     ` Zachary Amsden
2010-03-01 18:47       ` Luca Barbieri
2010-03-01 19:03       ` Gleb Natapov
2010-03-01 19:18         ` Zachary Amsden
2010-03-01 22:31           ` H. Peter Anvin
2010-03-01 22:56             ` H. Peter Anvin
2010-03-01 23:34               ` Zachary Amsden
2010-03-01 23:43                 ` H. Peter Anvin
2010-03-02  8:05                 ` Gleb Natapov
2010-03-02  8:49               ` Gleb Natapov
2010-03-07  9:04                 ` Avi Kivity
2010-03-08  0:08                   ` H. Peter Anvin

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