overdue-scratch

Author Topic: Wrong bvChain  (Read 2680 times)

0 Members and 1 Guest are viewing this topic.

Slice

  • VoodooLabs
  • Posts: 52
Wrong bvChain
« on: January 23, 2011, 10:25:23 PM »
I want Chameleon Team to hear me. Up for now it doesn't happen.
I am present at this forum to not support users and not for claim that I created my own bootloader.
I need a help to make it working. Any info will be useful.
It is not my project, it is not my sources, it is not my logics. I just not understanding what is what.

This bug I consider as a most terrible. Bug N1.
I created a bootable CD with cdboot, boot.plist and smbios.plist, also modules and themes. No kernel, no system.
Booted into Chameleon GUI. Now I can choose a partition to load system from. Look:

Why "still waiting..."? In the photo you can see that kernel is loaded, and some kexts loaded. Why next stop?
Other one.

The differencies that in the first case I press F10 and change CD to another. Why CD? I booted hard drive where I have good working system!
In the picture you may see disk1s1s2 - this is CD partition where kernel is decided to look non-root kexts.
So, even we boot HDD, we inform kernel wrong boot device. It must be disk0s3 as bootArgs.
This is a place into sources
Code: [Select]
        if (!uuidSet && gBootVolume->fs_getuuid && gBootVolume->fs_getuuid (gBootVolume, uuidStr) == 0) {
            verbose("Setting boot-uuid to: %s\n", uuidStr);
            copyArgument(kBootUUIDKey, uuidStr, strlen(uuidStr), &argP, &cntRemaining);
            uuidSet = true;
        }
What is gBootVolume? Is it a volume to boot or a volume from boot? As I see from the photo UUID is VOLUME FROM BOOT but kernel needs to know his own volume. VOLUME TO BOOT.

zef

  • Administrator
  • Posts: 265
Re: Wrong bvChain
« Reply #1 on: March 18, 2011, 08:06:41 PM »
Hi Slice,

Just going to understand/reproduce your issue and coming back with some reports.
gBootVolume is the selected partition which is passed as the root partition to the kernel.

Bye,
zef

Update: I can't seem to reproduce your issue yet. I'm using VMware for testing cdboot, just attached my latest test bootimage.
« Last Edit: March 18, 2011, 08:47:14 PM by zef »
ASUS P8Z68-V PRO/GEN3 | i5-2500k | 16GB RAM | GTX560 | Keyboard | Mouse | Devilsound DAC

Slice

  • VoodooLabs
  • Posts: 52
Re: Wrong bvChain
« Reply #2 on: March 30, 2011, 12:55:10 PM »
Dunno why you can't reproduce oppose me as I always can't boot.
Checked with trunk, AnVal 5.1.4, NawcomCD.
Last check with VirtualBox, 2 virtual HDD: FreeBSD and Ubuntu. 1 DVD with NawcomCD inserted. Same bug.

It seems depend on BIOS that reported always the same boot sequence while permit me to boot from chosen device.
« Last Edit: March 30, 2011, 12:58:03 PM by Slice »

Slice

  • VoodooLabs
  • Posts: 52
Re: Wrong bvChain
« Reply #3 on: July 24, 2011, 04:25:01 PM »
Tested with RC5m-1208. Now works fine, as well as with trunk I think.
Thank you for the corrections.
The issue is closed.... NO

The problem is BIOS. According to Wiki:
Code: [Select]
The BIOS will assign a BIOS drive number to the CD drive. The drive number assigned is either 80 (hard disk emulation), 00 (floppy disk emulation) or an arbitrary number if the BIOS should not provide emulation. In the case of 00 the boot is quirky.
Two things should be added:
1. FD=0 - floppy drive support b/c some BIOSes account CD as a floppy.
2. ElTorito partition scheme.
« Last Edit: August 05, 2011, 05:04:38 PM by Slice »