Home » OSX86 Basics

How to Read, Understand and Solve Kernel Panic Screen in OSX86.

20 May 2009 by Vinay 3 Comments

A kernel panic is an action taken by an operating system upon detecting an internal fatal error from which it cannot safely recover. You may encountered with a kernel panic while installing OSX86 or Hackintosh. There are plenty of reasons why Kernel Panic occurs some of them are Defective or incompatible RAM, Incompatible or corrupted kernel extensions, Incompatible or corrupted drivers, Hard disk corruption, including bad sectors, directory corruption, and other hard-disk ills and most possible Incompatible hardware. Attempts by the operating system to read an invalid or non-permitted memory address are a common source of kernel panics. A panic may also occur as a result of a hardware failure or a bug in the operating system. In short there are plenty of reasons and resolutions for kernel panic. Here we study three different Kernel Panic case  Apple2PC Described it very beautifully. You can read the Panic errors given below and understand why it happens.

 

Kernel Panic Example 1:

Unresolved kernel trap(cpu 0): 0×300 – Data access DAR=0×0000000030D6334E PC=0×0000000027B5CD3C
Latest crash info for cpu 0:
Exception state (sv=0×27CA4500)
PC=0×27B5CD3C; MSR=0×00009030; DAR=0×30D6334E; DSISR=0×40000000; LR=0×27B5CD24; R1=0×0D80BAE0; XCP=0×0000000C (0×300 – Data access)
Backtrace:
0×27B5E6C4 0×27B5D82C 0×27B5607C 0×27B45C74 0×002E9A80 0×002EB94C
0×0008C248 0×00029234 0×000233F8 0×000ABEAC 0×8001016C
Kernel loadable modules in backtrace (with dependencies):
com.apple.GeForce(4.1.8)@0×27b3a000
dependency: com.apple.iokit.IOPCIFamily(1.7)@0×1d8f7000
dependency: com.apple.iokit.IOGraphicsFamily(1.4.2)@0×27867000
dependency: com.apple.iokit.IONDRVSupport(1.4.2)@0×2788b000
dependency: com.apple.NVDAResman(4.1.8)@0×278a1000
Proceeding back via exception chain:
Exception state (sv=0×27CA4500)
previously dumped as “Latest” state. skipping…
Exception state (sv=0×1D92D280)
PC=0×9000B348; MSR=0×0200F030; DAR=0×02A8A000; DSISR=0×42000000; LR=0×9000B29C; R1=0xBFFFE900; XCP=0×00000030 (0xC00 – System call)
Kernel version:
Darwin Kernel Version 8.11.0: Wed Oct 10 18:26:00 PDT 2007; root:xnu-792.24.17~1/RELEASE_PPC
panic(cpu 0 caller 0xFFFF0003): 0×300 – Data access
Latest stack backtrace for cpu 0:
Backtrace:
0×000954F8 0×00095A10 0×00026898 0×000A8204 0×000ABB80
Proceeding back via exception chain:
Exception state (sv=0×27CA4500)
PC=0×27B5CD3C; MSR=0×00009030; DAR=0×30D6334E; DSISR=0×40000000; LR=0×27B5CD24; R1=0×0D80BAE0; XCP=0×0000000C (0×300 – Data access)
Backtrace:
0×27B5E6C4 0×27B5D82C 0×27B5607C 0×27B45C74 0×002E9A80 0×002EB94C
0×0008C248 0×00029234 0×000233F8 0×000ABEAC 0×8001016C
Kernel loadable modules in backtrace (with dependencies):
com.apple.GeForce(4.1.8)@0×27b3a000
dependency: com.apple.iokit.IOPCIFamily(1.7)@0×1d8f7000
dependency: com.apple.iokit.IOGraphicsFamily(1.4.2)@0×27867000
dependency: com.apple.iokit.IONDRVSupport(1.4.2)@0×2788b000
dependency: com.apple.NVDAResman(4.1.8)@0×278a1000
Exception state (sv=0×1D92D280)
PC=0×9000B348; MSR=0×0200F030; DAR=0×02A8A000; DSISR=0×42000000; LR=0×9000B29C; R1=0xBFFFE900; XCP=0×00000030 (0xC00 – System call

Kernel_Panic-1p0f

You should understand that what happened here is that the OS has stopped working since it has a problem, the first thing it does is look for a debugger to pass the control to (since this is not a Mac OS X developer station it will not find one), next thing it will do is dump to the screen all the data it can on the incident so you or a qualified technician can understand what the problem is.

the first part (blue part) display data of the CPU registers, program control exception state for CPU number 0 (this is your first CPU) at the time of crash, this data is hex address in the memory, it will not do you much good unless you are a mega advanced user.

next part Backtrace (green part) also uses hex memory address to point the command the CPU ran before crashing, again will not do us any good.

next part (bolded black) is still regarding backtrace (what happened before the crash), but it tells us what modules (usually kext) where loaded, usually this part can tell us allot, since this loading sequence ended with crashing the OS. in this section we see the last loaded module (in this example the GeForce) and the modules it depends on that needed to be loaded before it so they probably did not cause the crash since they are already loaded (although still possible that they are the fault – but rarely they are).

next part (Red part) is the exception chain, again stating the data as hex memory address and the CPU registers, will not help us.

last interesting part is the kernel version part (orange part) this part will state what kernel you are using, name version build date and platform in this example:

Darwin

8.11.0

oct 10

PPC (Power PC)

Conclusion 1 : The problem is with the GeForce kext.

_____________________________________________________________________________________

Kernel Panic Example 2:

panic(cpu 0 caller 0×001A429B): Unresolved kernel trap (CPU 0, Type 14=page fault), registers:
CR0: 0×8001003b, CR2: 0×00000024, CR3: 0×00d7b000, CR4: 0×000006e0
EAX: 0×00000000, EBX: 0×02bacc00, ECX: 0×025dc9a4, EDX: 0×00000000
CR2: 0×00000024, EBP: 0×14053ef8, ESI: 0×00841684, EDI: 0×0083df64
EFL: 0×00010206, EIP: 0×003bd3b3, CS: 0×00000008, DS: 0×14050010
Backtrace, Format – Frame : Return Address (4 potential args on stack) 
0×14053d38 : 0×128d08 (0×3cb134 0×14053d5c 0×131de5 0×0) 
0×14053d78 : 0×1a429b (0×3d0e4c 0×0 0xe 0×3d0670) 
0×14053e88 : 0×19ada4 (0×14053e98 0×14053ea8 0xe 0×48) 
0×14053ef8 : 0×83df81 (0×2bacc00 0×841684 0×14053f28 0×38073e) 
0×14053f28 : 0×39c536 (0×2bacc00 0×28b9880 0×8 0×2) 
0×14053f78 : 0×13d7d9 (0×28b9880 0×2686021 0×0 0xbffff378) 
0×14053fc8 : 0×19ac1c (0×0 0×0 0×4 0×207) Backtrace terminated-invalid frame pointer 0×0
Kernel loadable modules in backtrace (with dependencies):
com.apple.driver.IOBluetoothHIDDriver(1.7.2b2)@0×8 37000
dependency: com.apple.iokit.IOBluetoothFamily(1.7.14f14)@0×6be 000
dependency: com.apple.iokit.IOHIDFamily(1.4.10)@0×531000

 

Conclusion 2 : We probably have a problem with the Bluetooth kext. so up to here it was easy and straight forward, the next doesn’t have the loaded module part.

_____________________________________________________________________________________

Kernel Panic Example 3:

Unresolved kernel trap(cpu 0): 0×300 – Data access DAR=0×0000000000000010 PC=0×00000000000819E8
Latest crash info for cpu 0:
Exception state (sv=0×3D849280)
PC=0×000819E8; MSR=0×00009030; DAR=0×00000010; DSISR=0×40000000; LR=0×000819CC; R1=0×2720BB00; XCP=0×0000000C (0×300 – Data access)
Backtrace:
0×00032AC8 0×000823DC 0×00075F58 0×00075918 0×0006B45C 0×0006B730 
0×000578A0 0×0002921C 0×000233F8 0×000ABAAC 0×414C5945 
Proceeding back via exception chain:
Exception state (sv=0×3D849280)
previously dumped as “Latest” state. skipping…
Exception state (sv=0×42AF9280)
PC=0×9000AB48; MSR=0×0000F030; DAR=0×011DB004; DSISR=0×42000000; LR=0×9000AA9C; R1=0xF0101080; XCP=0×00000030 (0xC00 – System call)
Kernel version:
Darwin Kernel Version 8.8.0: Fri Sep 8 17:18:57 PDT 2006; root:xnu-792.12.6.obj~1/RELEASE_PPC
panic(cpu 0 caller 0xFFFF0003): 0×300 – Data access
Latest stack backtrace for cpu 0:
Backtrace:
0×00095138 0×00095650 0×00026898 0×000A7E04 0×000AB780 
Proceeding back via exception chain:
Exception state (sv=0×3D849280)
PC=0×000819E8; MSR=0×00009030; DAR=0×00000010; DSISR=0×40000000; LR=0×000819CC; R1=0×2720BB00; XCP=0×0000000C (0×300 – Data access)
Backtrace:
0×00032AC8 0×000823DC 0×00075F58 0×00075918 0×0006B45C 0×0006B730 
0×000578A0 0×0002921C 0×000233F8 0×000ABAAC 0×414C5945 
Exception state (sv=0×42AF9280)
PC=0×9000AB48; MSR=0×0000F030; DAR=0×011DB004; DSISR=0×42000000; LR=0×9000AA9C; R1=0xF0101080; XCP=0×00000030 (0xC00 – System call)
Kernel version:
Darwin Kernel Version 8.8.0: Fri Sep 8 17:18:57 PDT 2006; root:xnu-792.12.6.obj~1/RELEASE_PPC

Conclusion 3 :

1. first option is a random memory access error, meaning that the memory has been accessed to an area that wasn’t expected or allowed, maybe even an application has written into memory that it shouldn’t have (that was not its space) and by that caused the OS/kernel to crash, you should check what recent applications/utilities/kext/bundle/plugin/login items you have installed and remove it or disable its launch for a while until you can sort it out.

 

2. second option is usually the case for real macs but also possible for PC, as simple as a hardware problem, or bad memory card that causing the problem, maybe it act badly only if it is cold (immediately after booting the machine) or when it is hot (after several hours of work, depends sometimes minutes is enough on a sunny day), another hardware problem can be any hardware that access memory asynchronously, like IO (bluetooth card, modem, wifi, network card, etc.).

 

3. another option is that your combination of kext and bundles is not working (maybe versions of them some are older then should be?) so for such a case i always keep a bootable/loadable System/Library/Extensions folder on the disk.

 

4. this option is rarely the case, but can happen, if the main boot partition doesn’t have enough free space it could cause the problem, so all you need to do in this case is to boot in safe mode and free some space.

 

5. another simple option is the case of a kext/application/kernel trying to access a file that it doesn’t have a permission to access to, this can be caused due to wrong unix file mod, in this case boot into single user and fix permissions.

 

6. last option (that i can think of) is a bad kernel, so since the kernel itself is badly behaving that is why there are no kext loaded yet, since the kernel hasn’t finished loading the core. this is why i keep a spare bootable/loadable copy on the disk so i can boot from it on a rainy kernel problem day.

_____________________________________________________________________________________

Blog Widget by LinkWithin

Related Posts

3 Comments »

  • Keith B said:

    I continue to get an ACPI kernel panic. I have tried every flag I can find. What is weird is that the very first time I tried to load it went through pretty far until it gray screen on installation. No I get an immediate kernel panic. It’s a C500 laptop so I know it can be done. I’ve tried the 2 latest versions of iDeneb and iAtkos. Been loking for days on Google for an answer.

  • Antonitas said:

    I have a problem installing the OS load and I mark error
    panic(cpu 0 caller 0×001B10AE): “local APIC error \n”@/voodooKernel/xnu-1228.7.58/osfmk/i386/mp.c:809
    Debugger called:

  • james ha said:

    I have a Mac os x 10.3.9 and while trying to download Mac tiger 10.4 my computer failed, I do believe it could have been because of a power failure of electricity. Now I have a:: panic(cpu 0) “PowerMac10,1″
    last stack backtrace
    backtrace:
    0×00083498 0×0008397C OXOOO1EDA4 0×00276EE4 0×002570E4 0×00256EBC 0×00257938 0×00257FAC 0×00248164 0×00248128
    PROCEEDING BACK VIA EXCEPTION CHAIN:
    EXCEPTION STATE (sv=OxO141F500)
    PC=OxOOOOOOOO; MRS=OxOOOODO3O; DAR=OxOOOOOOOO; DSISR=OxOOOOOOOO; LR=OxOOOOOOOO; R1=OxOOOOOOOO; XCP=OxOOOOOOO; (Unknown)
    Kernel version:
    Darwin Kernel Version 7.9.0:
    Wed Mar 30 20:11:17 PST 2005; root:xnu/xnu-517.12.7.obj~1/REALEASE_PPC

    No debugger configured – dumping information
    MRS=OOOO1O3O
    Latest stack backtrace for cpu 0:
    backtrace:
    OxOOO83498 OxOOOO83B48 OxOOO1EDA4 OxOO276EE4 OxOO257OE4 OxOO256EBC OxOO257938 OxOO257FAC OxOO248164 OxOO248128
    Proceeding back via exception chain:
    Exception state (sv=OxO141F500)
    PC=OxOOOOOOOO; MSR=OxOOOODO30; DAR=0×00000000; DSISR=0×00000000; LR=Ox00000000;R1=0×000000000;XCP=0×000000000; (Unknown)
    Kernal version:
    Wed Mar30 20:11:17 PST 2005; root:xnu/xnu-517.12.7.obj~1/RELEASE_PPC
    panic:we are hanging her…
    Darwin Kernel7.9.0:kl18

    Please can you tell me 1) what has happened 2) If this an actual material part which needs renewed or some type of formation 3) How I can repair it myself without the cost of an engineer. Thankyou for the assistance

Leave your response!

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.