From 23b671daf490acaec6fdad55f2bfa44021200a63 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Mon, 28 Apr 2014 20:17:15 +0100 Subject: [librm] Allow interrupts in protected mode When running in a virtual machine, switching to real mode may be expensive. Allow interrupts to be enabled while in protected mode and reflected down to the real-mode interrupt handlers. Signed-off-by: Michael Brown --- src/arch/i386/include/gdbmach.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/arch/i386/include/gdbmach.h') diff --git a/src/arch/i386/include/gdbmach.h b/src/arch/i386/include/gdbmach.h index 794dab193..416ae341a 100644 --- a/src/arch/i386/include/gdbmach.h +++ b/src/arch/i386/include/gdbmach.h @@ -46,6 +46,14 @@ enum { GDBMACH_AWATCH, }; +/* Interrupt vectors */ +extern void gdbmach_nocode_sigfpe ( void ); +extern void gdbmach_nocode_sigtrap ( void ); +extern void gdbmach_nocode_sigstkflt ( void ); +extern void gdbmach_nocode_sigill ( void ); +extern void gdbmach_withcode_sigbus ( void ); +extern void gdbmach_withcode_sigsegv ( void ); + static inline void gdbmach_set_pc ( gdbreg_t *regs, gdbreg_t pc ) { regs [ GDBMACH_EIP ] = pc; } @@ -61,4 +69,6 @@ static inline void gdbmach_breakpoint ( void ) { extern int gdbmach_set_breakpoint ( int type, unsigned long addr, size_t len, int enable ); +extern void gdbmach_init ( void ); + #endif /* GDBMACH_H */ -- cgit v1.2.3-55-g7522