[PATCH 2/5] Invalidate IO permission bitmap.
Jan Klötzke <[email protected]> Fri, 16 May 2008 20:13:42 +0200
| Newsgroups | gmane.os.openbeos.kernel.devel |
|---|---|
| Message-ID | <[email protected]> |
The IO permission bitmap is always checked for virtual 8086 mode tasks. Make sure it is invalid. --- src/system/kernel/arch/x86/arch_cpu.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/system/kernel/arch/x86/arch_cpu.c b/src/system/kernel/arch/x86/arch_cpu.c index 3b2c949..e175e56 100644 --- a/src/system/kernel/arch/x86/arch_cpu.c +++ b/src/system/kernel/arch/x86/arch_cpu.c @@ -229,6 +229,7 @@ init_double_fault(int cpuNum) tss->fs = KERNEL_DATA_SEG; tss->gs = KERNEL_DATA_SEG; tss->ldt_seg_selector = 0; + tss->io_map_base = sizeof(struct tss); // add TSS descriptor for this new TSS set_tss_descriptor(&gGDT[DOUBLE_FAULT_TSS_BASE_SEGMENT + cpuNum], @@ -501,6 +502,7 @@ arch_cpu_init_post_vm(kernel_args *args) // structure memset(&gCPU[i].arch.tss, 0, sizeof(struct tss)); gCPU[i].arch.tss.ss0 = KERNEL_DATA_SEG; + gCPU[i].arch.tss.io_map_base = sizeof(struct tss); // add TSS descriptor for this new TSS set_tss_descriptor(&gGDT[TSS_BASE_SEGMENT + i], -- 1.5.4.2 ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/