Helle, I'm facing a strange issue with memdisk The context : syslinux 3.75 gpxelinux.0 the gpxe stript called from a menu executed through menu.c32 : #!gpxe kernel /modules/memdisk initrd=/freedos initrd /freedos The output before the freeze : /boot.gpxe. ok /modules/memdisk. ok /freedos...... ok MEMDISK 3.75 3.75 Copyright 2001-2009 H. Peter Anvin et al e820: 0000000000000000 000000000009f400 1 [1] e820: 000000000009f400 0000000000000c00 2 [1] e820: 00000000000f0000 0000000000010000 2 [1] e820: 0000000000100000 00000000dfef3000 1 [1] e820: 00000000dfff3000 0000000000008000 3 [1] e820: 00000000dfffb000 0000000000005000 2 [1] e820: 00000000fec00000 0000000000100000 2 [1] e820: 00000000fee00000 0000000000010000 2 [1] e820: 00000000ffc00000 0000000000400000 2 [1] e820: 0000000100000000 000000009bfff000 1 [1] Ramdisk at 0xdfb00000, length 0x0016bd50 command line: initrd=/freedos MEMDISK: Image has fractional end sector Disk is fd0, 1455 K, C/H/S = 97/2/15 (fd/fd), EDD off, rw Using safe INT 15h access to high memory Total size needed = 2176 bytes, allocating 3K Old dos memory at 0x88800 (map says 0x9f400), loading at 0x87c00 1588: 0xffff 15E801: 0x3c00 0xdeb0 INT 13 08: Success, count = 2, BPT = f000:a13c old: int13 = e80005f3 int15 = f000f859 int1e = f000efbb new: int13 = 87c0000a int15 = 87c002d9 int1e = f000efbb Loading boot sector... FR<p>Dbooting... After that the server is frozen. The floppy image is correct and its size is 1440 K (1474560 bytes) not 1455 K as indicated above I have the same results on 2 servers whith different architectures Can someone tell me about the exceedings 15696 bytes (and what mistake I have made) ? Thank you Regards Pierre
Pierre wrote:> Ramdisk at 0xdfb00000, length 0x0016bd50 > > The floppy image is correct and its size is 1440 K (1474560 bytes) not > 1455 K as indicated above > > I have the same results on 2 servers whith different architectures > > Can someone tell me about the exceedings 15696 bytes (and what mistake > I have made) ? >This sounds like a gPXE issue; clearly it is reporting the wrong length to MEMDISK (length 0x0016bd50 = 1490256 rather than 1474560). Since the length is wrong, MEMDISK gets the geometry wrong, too. -hpa -- H. Peter Anvin, Intel Open Source Technology Center I work for Intel. I don't speak on their behalf.
Pierre wrote:> > the gpxe stript called from a menu executed through menu.c32 : > > #!gpxe > kernel /modules/memdisk initrd=/freedos > initrd /freedos >I have to say that invoking a gPXE script from a comboot menu when you're running on top of gpxelinux.0 seems a bit overly complex, no? -hpa -- H. Peter Anvin, Intel Open Source Technology Center I work for Intel. I don't speak on their behalf.
pierre.gentile at mpsa.com
2009-Apr-27 09:01 UTC
[syslinux] memdisk issue with gpxelinux.0
> I have to say that invoking a gPXE script from a comboot menu when > you're running on top of gpxelinux.0 seems a bit overly complex, no?Thank you for your answers, I have tried to call memdisk directly from menu.c32 with the same result ... My config is a bit complex because we're trying to create an alternative to Rembo (Tivoli Provisionning Manager) already in production and provisioning a lot of servers (windows included). And that without removing Rembo for now To do that we're using the redirection capability of Rembo to redirect to out pxe server which launch gpxelinux with an embeded script able to initiate a gpxe script on a web server. This script then execute menu.c32 with a php generated configuration :-) Here is my embeded script for gpxelinux : #!gpxe imgload pxelinux.0 dhcp net0 set dns:ipv4 10.68.161.3 (needed but I don't know why because the dhcp already gives us the dns information !) chain http://reference-linux.inetpsa.com/init.gpxe My init.gpxe: #!gpxe set 210:string http://reference-linux.inetpsa.com/ kernel -n menu modules/menu.c32 http://reference-linux.inetpsa.com/init.php?mac=${net0/mac}&manu=${manufacturer:uristring}&product=${smbios/1.5.0:uristring} boot menu The relevant part of init.php: label Rembo menu label Redirection rembo kernel /rembo.gpxe append "" The rembo.gpxe file: #!gpxe kernel /modules/memdisk /freedos initrd /freedos boot memdisk As soon as I have a working configuration I'll add an entry in the wiki hoping it will be useful to others Sorry for my poor english Regards Pierre