[gPXE] Opensolaris
Floris Bos
bos at je-eigen-domein.nl
Tue Apr 20 09:18:52 EDT 2010
On Tuesday, April 20, 2010 08:06:13 am Stefan Hajnoczi wrote:
> Unfortunately, there is no documentation, but you can peruse the Legacy
> GRUB source that is bundled with Solaris. The specific workaround I'm
> referring to involves the use of the drives_addr field in the
> multiboot_info structure. On netboot, the entire DHCP ACK packet is
> referred-to there.
> See line ~1422 of usr/src/uts/i86pc/os/fakebop.c to see how that is
> interpreted."
Besides this issue, there seems to be another one.
Judging by the (lack of) debug messages, something goes wrong before even
reaching that function.
I noticed that when I load kernel and boot_archive (ramdisk), the last debug
message is:
==
*** DBOOT DONE -- back to asm to jump to kernel
==
If I only load the kernel it goes a bit further, before complaining it misses
its boot_archive:
==
==
*** DBOOT DONE -- back to asm to jump to kernel
*** Entered Solaris in _start() cmdline is: unix -kvd -B
console=ttya,kbm_debug=true,prom_debug=true,map_debug=true
next_phys is 1813000
next_virt is 1813000
Initializing boot time memory management...done
Initializing boot properties:
Building boot properties
(uintptr_t)propbuf is 1814000
Parsing command line for boot properties
Boot properties:
0x1816280 boot-ncpus = len=2 1
0x1816240 cpu_apicid_array = len=1
0x1816200 impl-arch-name = len=6 i86pc
0x18161d0 mfg-name = len=6 i86pc
0x18161a0 stdout = len=4
0x1816170 bootargs = len=6 -kvd
0x1816140 boot-args = len=6 -kvd
0x1816110 map_debug = len=5 true
0x18160e0 prom_debug = len=5 true
0x18160b0 kbm_debug = len=5 true
0x1816080 console = len=5 ttya
0x1816050 whoami = len=5 unix
0x1816020 boot-file = len=5 unix
failed to get ramdisk from boot
==
==
I also noticed that the reported ramdisk length is much larger with gpxe than
with pxegrub, and close to the memory limit my VM has.
gpxe:
==
Finding Modules
next_avail_addr is 0xc12000
module #0: boot_archive at: 0x3d10c000, len 0x3fcd0534
==
pxegrub:
==
Finding Modules
next_avail_addr is 0xc12000
module #0: /platform/i86pc/amd64/boot_archive at: 0xde8000, len
0xb1b2000
==
Does gpxe uncompresses or otherwise alters the ramdisk?
And if so, is there an easy option to disable that behavior?
- Floris
More information about the gPXE
mailing list