13 Jan 2007 (Sat)

21:47:13 # Life What works for qemu? I've been trying to see what really works with qemu. I have not been successful with ppc, I do not seem to be able to get the kernel booting. arm seems to work, but Debian does not distribute kernel for versatilepb. i386, x86_64 seem to be fine. mips and mipsel can't find the root file system for some reason. Apparently, you need the latest cvs version of qemu for mips. I followed aurelien's excellent procedures, but it doesn't seem to work. Looking at the logs, I have a bad feeling that this kernel may be ignoring my command-line options, or qemu may be failing to pass the command-line options to the kernel. Something tells me that powerpc kernel needs some preptool hacking, and thus needs modification for command-line handling, and I have a weird feeling that it might be similar for mips. Shrug. Hmm... so Debian ppc kernel has CONFIG_CMDLINE="console=ttyS0,9600 console=tty0", if I can change that, it would be more interesting. Debian mips qemu kernel has CONFIG_CMDLINE="" I wonder if anyone actually managed to use this kernel for qemu booting...

$ qemu-system-mips -kernel mips/boot/vmlinux-2.6.18-3-qemu  -hda /var/cache/pbuilder/base-mips.qemu -append "root=/dev/ram console=ttyS0"  -serial stdio
qemu: Warning, could not load MIPS bios '/usr/share/qemu/mips_bios.bin'
Linux version 2.6.18-3-qemu (Debian 2.6.18-8) (waldi@debian.org) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-20)) #1 Mon Dec 11 02:18:57 UTC 2006
	  .
	  .
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16450
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
ne.c:v1.10 9/23/94 Donald Becker (becker@scyld.com)
Last modified Nov 1, 2000 by Paul Gortmaker
NE*000 ethercard probe at 0x300: 52 54 00 12 34 56
eth0: NE2000 found at 0x300, using IRQ 9.
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 50MHz system bus speed for PIO modes; override with idebus=xx
pktgen v2.67: Packet Generator for packet performance testing.
TCP bic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
No filesystem could mount root, tried:  ext3 ext2 cramfs
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(1,0)

	

22:25:21 # Life Installing hurd for running with qemu. I just tried installing the hurd for qemu environment. the Debian official ports page seems to be up-to-date and good. Which is nice to know.

$ sudo qemu-img create /var/cache/pbuilder/hurd.img 1G
$ sudo mke2fs -o hurd  /var/cache/pbuilder/hurd.img
$ sudo mount   /var/cache/pbuilder/hurd.img  /mnt/ -o loop
$ sudo /usr/sbin/crosshurd
 .
 .
 .
$ sudo apt-get install grub2
$ sudo grub-mkimage --output=/boot/grub/core.img ext2 _chain pc
$ dd if=/usr/lib/grub/i386-pc/boot.img of=fd bs=512 count=1
$ dd if=/boot/grub/core.img of=fd bs=512 seek=1
$ kvm -boot a -fda fd -hda /var/cache/pbuilder/hurd.img (not quite gotten working yet...)
	

then I tried to install GNU/kFreeBSD.

Then I noticed that crosshurd package is supposed to do installs for hurd, kfreebsd and knetbsd systems. Heh.

I managed to find out that, grub requires partition tables to function, grub2 doesn't seem to boot up in qemu, and I can't get any further right now.

Junichi Uekawa

$Id: dancer-diary.el,v 1.91 2006/06/15 15:14:10 dancer Exp $