Jump to content

Boot Cache Question (-f)

boot cache

  • Please log in to reply
28 replies to this topic

#1
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

Hi

just wondered if someone of you more experienced hackintoshers could shed some light on a issue im having with a hp dc7900.

I have the machine booting Mavericks with the latest chameleon bootloader 2266, which was installed using myhack 3.3.0

(i did have some issues with bluetooth )

 

The issue im having is, i have everything is working now with the custom dsdt and the appropriate ktexts installed in S/L/E but only when booting with -f

when i disable the boot cache it boots up currently but with no USB what so ever.

 

My understanding of the -f bootflag is that it bypasses the cache boot sequence and force loads your ktexts? is this correct?

so if the boot cache is whats causing the issue then how do you clear it?

Any help is much appreciated.

 

Rivers


this is the current setup for cham

Screen%20Shot%202013-11-19%20at%2015.19.



#2
rlf

rlf

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,008 posts

Your kernelcache can be broken if one of your kexts is broken.  OSX tries to rebuild the cache, finds a broken kext and aborts.

 

Try rebuilding the kernelcache manually and read what errors are produced when you do.  This might give a clue to some kexts that need to be reinstalled properly using Kext Wizard ro Kext Utility or similar.

 

Open Terminal and type the following two commands:

sudo kextcache -system-caches
sudo kextcache -update-volume /


#3
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

your a gent, thanks for the help.

Ill give it a try for sure and see if it leads me some where, but i should mention that this issue was apparent before i started to use the kernel cache and when i also had the kexts in the Extra folder.

and when i try to boot into single user mode the USB is null also, unless the -f bootflag is used. Ive also just discovered that the Ethernet port isnt working also.

Here a list of the kexts currently in use, and as ive point out im using a custom dsdt that according to most other where i got it from is near perfect example of a dsdt.

 

Screen%20Shot%202013-11-19%20at%2019.51.


ive tried the terminal commands you gave in -s single user mode with the -f bootflag, otherwise i dont have USB or ethernet (it still boots into the OS tho)

and it returned this

Finder%20%28via%20Ember%29.png



#4
rlf

rlf

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,008 posts

Boot normally and perform the commands.  The idea first is not to fix the cache if it needs fixing.  The idea is to identify kexts that might need to be fixed.  Attempting to build the cache will do that.

 

Also, there are two Intel ethernet kexts listed above.  Try using only one.  I saw the Intel82566MM.kext listed in another posting.  Remove the AppleIntelE1000e.kext and see if your ethernet improves.



#5
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

This is the boot without the -f flag, i spotted some usb errors along the way


Boot normally and perform the commands.  The idea first is not to fix the cache if it needs fixing.  The idea is to identify kexts that might need to be fixed.  Attempting to build the cache will do that.

 

Also, there are two Intel ethernet kexts listed above.  Try using only one.  I saw the Intel82566MM.kext listed in another posting.  Remove the AppleIntelE1000e.kext and see if your ethernet improves.

By boot normally do you mean without bootflags?? because if you do there is no way to do this. if i boot without the -f bootflag i have no USB whatsoever, not even in single user mode, nor can remotely connect through ether on my actual mac.

Ive removed the AppleIntelE1000e.kext and i rebuilt the cache again like youve stated earlier in the post, and i left firefox open so that after i rebooted without the -f i could see if it could reconnect to youtube in firefox, which it did.

So i presumed that i would be able to remote connect into it to control it.NOPE.

It loaded firefox but when i tried to conncet via svn from my imac, it worked for a brief second and then stalled the entire os on the hackintosh, then disconnected me and now its unaccessible. bizarre.



#6
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,144 posts
  • Gender:Male
  • Location:Brazil

Remove the force64 and all USB flags and don't keep kernel extensions in /Extra/Extensions.

 

Anything in /Extra/Extensions will not load with UseKernelCache=y, but -f overrides that.

You probably have something in /Extra/Extensions that is not in /System/Library/Extensions, and therefore doesn't get included in the kernel cache.

 

Try this in S/L/E: http://www.insanelym...-x-with-source/



#7
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

Ive unchecked both flags but it didnt make any difference in relatation to the USB issue.

 

Solved it!!

turns out it was the AppleHPET.kext causing the issue. little B.

Thanks for the help gents

 

but now the Kernel Panics about 30seconds after boot, even in Single Usermode



#8
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,144 posts
  • Gender:Male
  • Location:Brazil

That's not a fix, you break other things by removing that. AppleHPET.kext is required for CPU power management to work.

 

Try removing the ForceHPET flag and put AppleHPET.kext back.

 

Follow the link I gave you and try that driver for your USB.

 

You mentioned a "custom" DSDT, what did you mean by that? It's possible that your "custom" DSDT is breaking more things than it was meant to fix.

 

HP have a history of notoriously "alternative" DSDT implementations, it's hard to follow the code and they're difficult to patch.

It sounds to me like most of your issues can be solved in DSDT by someone talented enough (not me).



#9
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

Yep your right. ill have a look now

IMG_5687%20%28via%20Ember%29.jpeg



#10
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,144 posts
  • Gender:Male
  • Location:Brazil

AFAIK setting ForceHPET=y makes Chameleon inject a fake HPET device that keeps OS X happy. It's useful when the DSDT HPET code is not exactly the way that OS X likes it.

 

Maybe it's best to leave ForceHPET enabled in your case until it can be fixed in DSDT, if there is a way to do that.

 

Look for a HPET setting in your BIOS, set it to enabled or 64-bit if such settings are available.

AFAIK Windows (at least Windows 7) does not use the HPET at all, so this will not affect your Windows installation if you have one.



#11
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

according to the google groups page i got the DSDT (2012-08-25 - hp_Compaq DC7900 CMT DSDT - Rev. F -  dsdt.aml) from, its the most perfect dsdt that theyve seen. their words not mine. so im not sure about that. but int he link above someone else has experienced the same no usb thign as me

but now i have a bit of an issue. Due to the fact its KPing so quickly post boot i dont have adequate time to restore the previously removed kexts and then rebuild the cache.

any suggestions?

 

I should point out i am able to plug the sata cable via usb directly into my imac to access the drive, but im unsure of how to rebuild the cache on a external drive



#12
Gringo Vermelho

Gringo Vermelho

    The Jan Bird fix

  • Supervisors
  • 6,144 posts
  • Gender:Male
  • Location:Brazil

That's easy, just trash the cache, it'll be rebuilt automatically.

 

Delete the contents of /system/library/caches/com.apple.kext.caches/startup.

 

Or you can just boot with UseKernelCache=n



#13
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

okay so ive got it booting again,ive update my kext utility to get round the identified developer warnings, ive tried the genericusbxhci kext you pointed me to but no such luck. ive removed the Intel82566MM.kext because i think it was causing some issues.

but still no usb.

I find this so strange because when i boot with the -f bootflag i completely no issues.

Screen%20Shot%202013-11-20%20at%2000.42.


one thing i have noticed is that i have a wireless receiver plugged via the usb which has a power light on the front.

Immediately after the a drive is selected in the boot menu the light flashes off then on directly afterwards in the boot sequence when booting with the -f bootflag.

but when im not using that bootflag, immediately after hitting return on the drive to boot, the light goes off. this is usually a solid indication to whether the usb is going to work or not. sigh.

 

point im making is its something thats initialized pretty early on in the boot process

 

Just found out the usb loads in safeboot (-x) also



#14
rlf

rlf

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,008 posts

1. -x doesn't use the cache, so it is like booting with -f, except -x also doesn't load some of the kexts

 

2. There is nothing wrong with booting -f.  The only purpose for the cache is to speed up  booting.  Booting without the cache just means each kext must be reviewed to determine which devices it is supposed to drive.  Booting -f just takes a little more boot time.  It is not like you spend the whole day booting.

 

3.  I still feel there is something that is corrupting your cache.  It is possibly an improperly installed kext.  The two Terminal commands I gave you are supposed to build the cache, but if something prevents building the cache, they give the reason why.  That is why I want you to run those two commands.  To find the reason(s) why the cache can't be built properly (that is if it can't be).

 

Boot any way you have to in order to use Terminal.  If that means booting -f, that is fine, it doesn't matter.  Don't boot -s.  Booting -x is fine.  Type the two commands that I gave earlier and if they give errors, then review them for kexts that need to be reinstalled.

 

4. Also, as Gringo said, if you are going to boot with the cache, you have to get the kexts out of the Extra folder and put them in the /S/L/E folder.



#15
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

1.  ah didnt know that but makes sense

 

2. Im aware that there isnt any difference, but i just want to use this as an excuse to learn why it hasnt been working the way i intended and i wanted a fast boot time.

 

3. I believe you are right but i can not figure out for the life of me what it is. i have actually tried these commands, but ill do it again and paste in the output.

 

4. As ive stated before, all kexts are in the S/L/E folder.

heres what the Extras folder looks like

dudley%20%28via%20Ember%29.png

 

ill also add that Thomas van Dalen from the chat pointed me towards kext wizard and since then i have reinstalled all the kexts i was originally using with the exception of the intel82566MM.kext and rebuild the cache using that tool and the perms. here are the kexts in the S/L/E folder currently.

kexts%20%28via%20Ember%29.png

im wondering if i even need the AppleIntelPIIXATA2.kext

i need this on my dc7800 build previous to this build because that wouldnt recognise the drives.

 

**Update**

Ive just tried the commands there was no output

dudley%20%28via%20Ember%29.png



#16
rlf

rlf

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,008 posts

**Update**

Ive just tried the commands there was no output

Wow.  For sure I was expecting an error on one of the USB kexts.



#17
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

i just clocked this on the google groups thread i found the dsdt originally. it kinda proves what you said in the fact that the usb support is lost after the boot menu. which it is, unless bootflags are used

Updated%20DC7900%20DSDT%20Available%20-%


i did gain USB functionality  w/o bootflags when i removed that appleHPET.kext tho, but obviously the KP is a problem. thats somewhat of a lead



#18
rlf

rlf

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,008 posts

What revision is your BIOS?  The DSDT says it is for Rev. F.  If you don't have the same revision of BIOS, there can be problems.

 

Try booting without the DSDT.  You can do this by specifying boot flag: DSDT=null

 

Also, what happens if you boot with -F (capital F)?  This ignores the org.chameleon.Boot.plist.



#19
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

tried it but to no avail. Im pretty positive it has nothing to do with the dsdt, and my bios is the most current.

 

Hackintosh%20-%20HP%20Dc7900%20-%20Maver



#20
Rivers

Rivers

    InsanelyMac Protégé

  • Members
  • Pip
  • 16 posts
  • Gender:Male
  • Location:UK
  • Interests:Snowboarding, Macs

rlf have you any other ideas, im stumped







0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

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