maxdev1 / ghost

Ghost, a micro-kernel based hobby operating system.
http://ghostkernel.org/
GNU General Public License v3.0
560 stars 57 forks source link

Fix booting in Hyper-V #30

Open maxdev1 opened 1 year ago

maxdev1 commented 1 year ago

In Hyper-V, for some reason even though the MADT reports the IO/APIC to be present at 0xFEC00000, a GPF occurs when writing to the REGSEL MMIO register. This causes a kernel panic.

ajh123 commented 5 months ago

A similar(?) error is produced in qemu-system-x86_64:

Ghost Loader Version 1.1.0

    loader  found kernel binary at 0x01f96000, loading...

Ghost Kernel Version 0.14.2

  Copyright (C) 2022, Max Schlüssel <lokoxe@gmail.com>

    kernel  initializing core services
    memory  available: 96 MiB
   ramdisk  module loaded: 30 MB
       cpu  vendor: 'AuthenticAMD'
       cpu  available features: PAE MMX SSE SSE2
   tasking  core: 0 idle task: 0
   tasking  core: 0 cleanup task: 1
    kernel  starting on 1 cores
    system  ready
 exception  general protection fault in task 1 (process 1)
                 eip: 0x00000000   eflags: 0x00000000
                 eax: 0x00000000      ebx: 0x00000000
                 ecx: 0x00000000      edx: 0x00000000
                 esp: 0xc000c577      ebp: 0x00000000
                intr: 0x0000000d    error: 0x00000000
                task stack: 0xf1e6e000 - 0xf1e70000
                intr stack: 0x00000000 - 0x00000000
   kernerr  unrecoverable error on processor 0
     mutex  0: tried to use uninitialized mutex 0xf000607c