Jump to content

Fix for IOATAFamily / AppleIntelPIIXATA panic in Snow Leopard


  • Please log in to reply
76 replies to this topic

#1
sigmaris

sigmaris

    InsanelyMac Protégé

  • Members
  • Pip
  • 49 posts
For people having panics caused by AppleIntelPIIXATA.kext on Snow Leopard (e.g. on Intel BadAxe or BadAxe2 mobo) this kext may provide a solution. AppleIntelPIIXATA loading on a system with the secondary PCI IDE channel disabled seems to trigger a bug in IOATAFamily causing a NULL pointer dereference. I have patched the source of IOATAFamily from Snow Leopard to avoid the bug and recompiled it.

If you are having panics looking like this, try replacing your IOATAFamily.kext with the attached one, and let me know if it fixes the panic. I have gotten access to my PATA drives on a BadAxe 1 board using this kext.

Note that this is not the IOATAFamily from 10.5.8 as described here, it is compiled from patched Snow Leopard source code. The source is available from Apple here and the small patch I used is also attached to this post. The AppleIntelPIIXATA.kext is also included in the PlugIns folder of the attached kext, but it is unmodified.

Edit: replaced the suspect .tar.gz with a .zip file

Edit 2/4/10: Apple have fixed the bug in 10.6.3, so this patch isn't needed/useful anymore for 10.6.3+ systems.

Attached Files



#2
Nihilator

Nihilator

    InsanelyMac Protégé

  • Members
  • Pip
  • 47 posts
It does not work with Boot-132 or BootCD.

#3
Onixs

Onixs

    Since 2007

  • Members
  • PipPipPipPipPipPipPip
  • 808 posts
  • Gender:Male
It doesnt work on P5K ich9. Still waiting for Root device, even though i have applepiiatainjector

#4
THe KiNG

THe KiNG

    InsanelyMac Legend

  • Retired Developers
  • 791 posts
  • Gender:Male

The AppleIntelPIIXATA.kext is also included in the PlugIns folder of the attached kext, but it is unmodified.

@rals2007 Wait for -DuNe- fix if you want to use IDE mode on unsupported ichx.

It doesnt work on P5K ich9. Still waiting for Root device, even though i have applepiiatainjector

This is a fix for laptops(IMO) that has the secondary pci ide channel disabled.
Thanks for sharing the fix :P

#5
sigmaris

sigmaris

    InsanelyMac Protégé

  • Members
  • Pip
  • 49 posts

It does not with Boot-132 or BootCD. Did you only test your patch by copying it over Snow Leopard's IOATAFamily.kext (inside Snow Leopard's dmg file)?


I haven't tested it with the boot-132 / cdboot as I can't get the CD to boot on my system. It just resets as soon as it it loads off the CD after the BIOS screen. From what I know, it should theoretically work when loaded from boot-132 or /Extra/Extensions, though, as it will load first and override the vanilla IOATAFamily.

#6
zellkern

zellkern

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 1 posts
the tar gz archive you attached is corrupt, at least my winrar says

#7
Chrysaor

Chrysaor

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 523 posts
  • Gender:Male
Thanks, works great in Snow 32/64.

#8
kmboss

kmboss

    InsanelyMac Protégé

  • Members
  • Pip
  • 33 posts
Awesome, it works for me! (Bad Axe 2)

Thank you!!!

#9
slickslick

slickslick

    InsanelyMac Protégé

  • Members
  • Pip
  • 18 posts
Hey! U re god :( THX 4 THIS

#10
el_charlie

el_charlie

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 221 posts
  • Gender:Male
  • Location:Maracaibo, Venezuela
Ok, my impressions about the kext.

It DOES work on 32/64 bits on my motherboard Foxconn G31MV-K with the ICH7 southbridge. However, on 64bits, my SATA hard drive is not recognized. The system boots fine (my Snow Leopard installation is on my 80GB IDE HD) but the 2 partitions of my SATA drive (Windows 7 and Data) doesn't show up.

Now I will test the kext, leaving untouched the vanilla on S/L/E and try this on EFI/Extra/Extensions to see if it works.

EDIT:

It works fu***ng great!

I mean, in my case it doesn't work on EFI/Extra/Extensions (the vanilla still loads and KPs). But it works great on 64 bits on /System/Library/Extensions.

When I said it didn't recognize my SATA drive, I was wrong. NTFS-3G doesn't work on 64 bits. Therefore, my 2 partitions on the SATA drive didn't mount. But the SATA drive appears fine on System profiler.

Thanks for this AMAZING kext. Thank you, thank you, thank you!!!!

Cheers!!

#11
Niatross

Niatross

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts

For people having panics caused by AppleIntelPIIXATA.kext on Snow Leopard (e.g. on Intel BadAxe or BadAxe2 mobo) this kext may provide a solution. AppleIntelPIIXATA loading on a system with the secondary PCI IDE channel disabled seems to trigger a bug in IOATAFamily causing a NULL pointer dereference. I have patched the source of IOATAFamily from Snow Leopard to avoid the bug and recompiled it.

If you are having panics looking like this, try replacing your IOATAFamily.kext with the attached one, and let me know if it fixes the panic. I have gotten access to my PATA drives on a BadAxe 1 board using this kext.

Note that this is not the IOATAFamily from 10.5.8 as described here, it is compiled from patched Snow Leopard source code. The source is available from Apple here and the small patch I used is also attached to this post. The AppleIntelPIIXATA.kext is also included in the PlugIns folder of the attached kext, but it is unmodified.

Edit: replaced the suspect .tar.gz with a .zip file


I'm confused. Why did you include a patch zip file along with the IOATAFamily download? Anyway, give us some more detail on this fix. Does it support ICH7-R chipsets?

I haven't tested it with the boot-132 / cdboot as I can't get the CD to boot on my system. It just resets as soon as it it loads off the CD after the BIOS screen. From what I know, it should theoretically work when loaded from boot-132 or /Extra/Extensions, though, as it will load first and override the vanilla IOATAFamily.


Can anyone in the OSx86 community figure out how to fix the IOATAFamily kext (specifically AppleIntelPIIXATA.kext) for a Boot-132 or CDBoot install. This must be a difficult problem, because no one in the community has been able to step up and figure out the problem. Hopefully "Dune" can.

Once you can boot your system from CD, try Boot-132 or BootCD and tell me if your patched IOATAFamily.kext works because on my system it kernel panics. My system has no secondary ATA controller.

#12
VIP-death

VIP-death

    InsanelyMac Protégé

  • Members
  • Pip
  • 7 posts
I have ICH-7-R and this patched kext works for me in x32 Snow.I put this pathed kext in Extra/Extentions and leaving untouchable the vanilla kext in /System/Library/Extentions and everything works great, no more kernel panic.

#13
Niatross

Niatross

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts

I have ICH-7-R and this patched kext works for me in x32 Snow.I put this pathed kext in Extra/Extentions and leaving untouchable the vanilla kext in /System/Library/Extentions and everything works great, no more kernel panic.


The question is: Are you booting from the Boot-132 or BoodCD using an IDE (ATA) DVD drive when installing Snow Leopard?

If your booting from a SATA DVD-ROM drive and using a Boot-132 or BoodCD, then you'll have no problems installing Snow Leopard. Also, you'll have no problems if your bootloader is on your SATA hard drive and your copying these kexts (mentioned in this thread) to the /Extra/Extensions folder.

#14
timewise

timewise

    InsanelyMac Protégé

  • Members
  • PipPip
  • 70 posts
Nice patch! I am now booting my bad axe 2 in ide mode :(
I was also able to remove AHCIPortInjector.kext, ATAPortInjector.kext and IOAHCIBlockStorageInjector.kext
THX

#15
Niatross

Niatross

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts

Ok, my impressions about the kext.

It DOES work on 32/64 bits on my motherboard Foxconn G31MV-K with the ICH7 southbridge. However, on 64bits, my SATA hard drive is not recognized. The system boots fine (my Snow Leopard installation is on my 80GB IDE HD) but the 2 partitions of my SATA drive (Windows 7 and Data) doesn't show up.

Now I will test the kext, leaving untouched the vanilla on S/L/E and try this on EFI/Extra/Extensions to see if it works.

EDIT:

It works fu***ng great!

I mean, in my case it doesn't work on EFI/Extra/Extensions (the vanilla still loads and KPs). But it works great on 64 bits on /System/Library/Extensions.

When I said it didn't recognize my SATA drive, I was wrong. NTFS-3G doesn't work on 64 bits. Therefore, my 2 partitions on the SATA drive didn't mount. But the SATA drive appears fine on System profiler.

Thanks for this AMAZING kext. Thank you, thank you, thank you!!!!

Cheers!!


What are you going to do when Software Updates overwrites the IOATAFamily.kext in S/L/E?

It seems this fix is only useful when you install it to S/L/E, but will not work on the EFI partition or from a Boot-132 or BootCD. Not good.

OSBundleRequired=Root doesn't even help.

#16
timewise

timewise

    InsanelyMac Protégé

  • Members
  • PipPip
  • 70 posts
It is working for me in chameleon RC1 Extra/Extensions folder with PC EFI 10.1 boot file.
Chameleon is installed to it's own 1 Gb partition.

#17
sigmaris

sigmaris

    InsanelyMac Protégé

  • Members
  • Pip
  • 49 posts
As far as chipset goes, this patch doesn't add support for any more ICH chipsets than what the standard AppleIntelPIIXATA supports, it just fixes the kernel panic in IOATAFamily that's triggered by AppleIntelPIIXATA. I believe -DuNe- is working on support for additional chipsets in AppleIntelPIIXATA under Snow Leo, see this thread

#18
Brett Whinnen

Brett Whinnen

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 146 posts
  • Gender:Male
  • Location:Bne, AU
Brilliant! Great work! This has me one step closer to a perfect installation :)

#19
Logicpro9_user

Logicpro9_user

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 193 posts
  • Gender:Male
So here is where i am at now!

I followed the guide step by step,

http://www.insanelym...p;#entry1268472

There is a problem though.......

1.Booted from my sata drive where the SL install image/DVD was restored to. I did delete the AppleIntelPIIXATA from IOATAFamily before I installed.....

2. Install of SL went 100% ok.

3. It asks me to restart after 100% install.....

3. rebooted then I get this panic when the new SL install drive boots.

Can anyone shine any light on this?

Would be great to sort it out! OH I forgot to say, I now no longer have a 10.5.8 install to work from!!
Only the Boot drive! and a broken SL install..... My system details are in my Sig.

Attached Files



#20
olav

olav

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 128 posts
Thanx! Works nice here as well on bad axe 2, only the IDE fix left for the marvell controller in snow leo ;)





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy