Export to GitHub

grub4dos-chenall - issue #74

kexec --initrd and "map (rd) (fd0)" problem Error 65


Posted on Feb 7, 2012 by Quick Monkey

What steps will reproduce the problem? From the section "Direct transition to DOS/Win9x from within Linux" of the README 1.a running Linux 2. execute kexec -l grub4dos.exe --initrd=Disk.IMG 3. kexec -e

in Grub commandline execute:

4a. map (rd) (fd0) or 4b. map (rd)+1 (fd0) or both of them with (hd0)

What is the expected output? Add the rd to a map and be able to access the files from the ramdisk (after map --hook).

What do you see instead? In case of 4a: Error 65: RD_BASE must be sector-aligned and non-zero for mapping at a fixed location

In case of 4b: Error 28: Selected item cannot fit into memory

What version of the product are you using? On what operating system? Linux kernel 3.0.8 Kexec-Tools 2.0.1 grub4dos-0.4.5c-2012-02-01.7z

Please provide any additional information below.

I don't really know, if the way I try to use this feature is a good one but I think actually it should work if the stuff from the readme does work. However I never get to the point where I can actually see the content of the Initramdisk that was loaded by kexec. I tried several different Images. One simply a file containing a filesystem(fat32) and the files (without any compression) another being a cpio initramdisk like the linux-kernel uses and last I downloaded a file similar to the DOS.IMG but neither of them showed any desired result.

One thing to remark though if I use 4b. map (rd)+2 (fd0) I only get warnings but I can hook the rd in with map --hook. I cannot access any files though (Error 17: Cannot mount selected partition)

The Thing I actually want to do is: I have a setting which can manage and boot kernels using kexec but I want to use exactly this setting to boot arbitrary systems. I have given up to make it work on any System wich is why I do all the stuff in a virtual machine. In this setting kernels and initrds are provided via network. My goal is that you can use grub4dos as kernel and put a payload into a ramdisk and load this payload using grub4dos. An example of such a payload would be memtestx86+.

I tried to get all the relevant info myself but somehow I'm not really able to find the requirements for such a ramdisk.

enaut

Comment #1

Posted on Feb 13, 2012 by Quick Monkey

Diskussion at http://reboot.pro/16309/page__pid__148204

Patched version at http://bbs.znpc.net/viewthread.php?tid=6197

Comment #2

Posted on Feb 14, 2012 by Happy Hippo

(No comment was entered for this change.)

Status: Verified

Labels:
Type-Defect Priority-Medium