overdue-scratch

Author Topic: will only boot with -F  (Read 3140 times)

0 Members and 1 Guest are viewing this topic.

pajen

  • Entrant
  • Posts: 3
will only boot with -F
« on: August 13, 2010, 03:57:02 PM »
Hi, I have the following behavior:
my EP35-DS4 based SnowLeopard machine will not boot unless I put in -F at the chameleon prompt.
If I do that, it works fine in every aspect as far as I can tell.
So I guess my questions are:
1) what does -F do? is it just skipping the /E/E/com.apple.boot.plist or...?
2) clues as to what is happening anyone? it seems to stop at a hyperIoctl.cpp assertion as far as I can tell, if I try booting without -F.
3) if I cant fix this, is there a way to make it do -F automatically at boot everytime?

thanx, paj

Terc

  • Forum Moderator
  • Posts: 129
Re: will only boot with -F
« Reply #1 on: August 13, 2010, 06:13:06 PM »
This is most likely an issue with the kernel extensions you've picked.  It's also probably not a Chameleon bootloader issue, so it doesn't really belong in this sub forum.

terramir

  • Observer
  • Posts: 20
Re: will only boot with -F
« Reply #2 on: August 14, 2010, 01:29:44 AM »
This is most likely an issue with the kernel extensions you've picked.  It's also probably not a Chameleon bootloader issue, so it doesn't really belong in this sub forum.
Actually it sort of does, however you answered one of my questions already, He specifically asked what -f does
and I was trying to find out the exact same thing right about now I got the same issue, Think with me it's the
 sleep enabler kext (the universal one 10.6.x) maybe it has attitude problems with 10.6.0 LOL. :P
Anyway it's a legitimate question what the -f switch does.
However I am not sure I even got my answer right now I'm assuming the guy in the first post is sort of right,
 because I thought it would rebuild your .mkext :confused: but the next time I booted without it and the
gui froze again (history just upgrade mem to 2 gigs and switched vmem from 256 to 512) so I figured the
mkext cache was fraking up the updating I boot with -f and low and behold now my SL_htpc boots.
I reboot again it froze again, then I used -f again and well  it works again.
So Logically he's right, but still is he completely right what does -f exactly do and what doesn't it do.
And BTW what switch then does rebuild my S/L/E .mkext or does a switch like that not exist. :o

terramir

pajen

  • Entrant
  • Posts: 3
Re: will only boot with -F
« Reply #3 on: August 14, 2010, 09:36:18 AM »
clarification to terramir: -F, not -f....  :-)
Terc: so this means that with -F, the my kexts will not load? Then -F does more than skip com.apple.boot.plist...?

/p

terramir

  • Observer
  • Posts: 20
Re: will only boot with -F
« Reply #4 on: August 14, 2010, 10:20:18 PM »
clarification to terramir: -F, not -f....  :-)
Terc: so this means that with -F, the my kexts will not load? Then -F does more than skip com.apple.boot.plist...?

/p
I think boot flags like -f are case insensitive give it a try boot with -f instead of -F see if it does same thing,  ??? really hope someone clarifies exactly what -F or -f does exactly. Could use that info for trouble shooting
terramir

Terc

  • Forum Moderator
  • Posts: 129
Re: will only boot with -F
« Reply #5 on: August 15, 2010, 03:31:22 AM »
Actually, if you read the documentation included with the Chameleon download (in the doc folder) BootHelp.txt tells you what -F does.

-F (ignore boot configuration file)

terramir

  • Observer
  • Posts: 20
Re: will only boot with -F
« Reply #6 on: August 17, 2010, 06:46:29 AM »
yeah what does it ignore only the boot.apple....plist or the kext's in the extra folder as well and what does it do use standard kexts? I I mean if it ignores the /e/e folder then it would ignore fakesmc. What all does it exactly ignore?
that is my question not general but specifically what does it leave out in the boot and how and what does it replace it with?
Please some clairfication
terramir

zef

  • Administrator
  • Posts: 265
Re: will only boot with -F
« Reply #7 on: August 17, 2010, 11:34:36 AM »
Hi guys,

By inspecting the sources this is what I learned so far:

Using the -F (kIgnoreBootFileFlag) option will clear only the passed values for the "Kernel Flags" option read from the com.apple.Boot.plist.

For example if you have -v set in your Boot.plist but you type -F at the boot command prompt, the system will boot in normal (non-verbosed) mode.

This is where the -F option gets into action:
http://forge.voodooprojects.org/p/chameleon/source/tree/273/trunk/i386/boot2/options.c#L1211

The -x (kSafeModeFlag) and -f (kOldSafeModeFlag) options have the same effect on the booter side.
Specifying any of these options will prevent loading extensions and kernel caches by adding the kBootModeSafe flag for the gBootMode variable. The difference here is the -x flag will be passed also as a "Kernel Flags" argument for the kernel, while the -f won't.

http://forge.voodooprojects.org/p/chameleon/source/tree/273/trunk/i386/boot2/options.c#L1280

Conclusion: How about removing the support for the -f flag?
ASUS P8Z68-V PRO/GEN3 | i5-2500k | 16GB RAM | GTX560 | Keyboard | Mouse | Devilsound DAC

pajen

  • Entrant
  • Posts: 3
Re: will only boot with -F
« Reply #8 on: August 17, 2010, 02:15:05 PM »
zef,
now we're talking :-) thanks for looking through the code, this makes a lot more sense now.
I had a arch=x86_32 type of kernel flag, and I think that removing that actually disabled some drivers
related to vmware fusion, and those were the ones acting up. So, I removed the arch flag and
now it works fine.
Thank you to all that helped me resolve this weird behavior.

/paj