diff options
| author | Michael Brown | 2009-02-17 03:03:16 +0100 |
|---|---|---|
| committer | Michael Brown | 2009-02-17 03:03:16 +0100 |
| commit | 7f903f03afbadd809923a10fac57d59400e94182 (patch) | |
| tree | d51cffa86e1dc7352a8054461a2887c12dd63256 /src/arch/i386/interface/syslinux | |
| parent | [comboot] Fix reference counting on replacement images (diff) | |
| download | ipxe-7f903f03afbadd809923a10fac57d59400e94182.tar.gz ipxe-7f903f03afbadd809923a10fac57d59400e94182.tar.xz ipxe-7f903f03afbadd809923a10fac57d59400e94182.zip | |
[comboot] Unhook interrupt vectors after returning from a COMBOOT image
Diffstat (limited to 'src/arch/i386/interface/syslinux')
| -rw-r--r-- | src/arch/i386/interface/syslinux/comboot_call.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/arch/i386/interface/syslinux/comboot_call.c b/src/arch/i386/interface/syslinux/comboot_call.c index f37aa2ae1..c641c8402 100644 --- a/src/arch/i386/interface/syslinux/comboot_call.c +++ b/src/arch/i386/interface/syslinux/comboot_call.c @@ -616,3 +616,18 @@ void hook_comboot_interrupts ( ) { hook_bios_interrupt ( 0x22, ( unsigned int ) int22_wrapper, &int22_vector ); } + +/** + * Unhook BIOS interrupts related to COMBOOT API (INT 20h, 21h, 22h) + */ +void unhook_comboot_interrupts ( ) { + + unhook_bios_interrupt ( 0x20, ( unsigned int ) int20_wrapper, + &int20_vector ); + + unhook_bios_interrupt ( 0x21, ( unsigned int ) int21_wrapper, + &int21_vector ); + + unhook_bios_interrupt ( 0x22, ( unsigned int ) int22_wrapper, + &int22_vector ); +} |
