edmundo@rano.demon.co.uk writes:
The nearest I've got to running L4-Linux so far, apparently, was by dd-ing grub-ext2fs-floppy onto a floppy, adding "main" and "sigma0", which I compiled myself, then booting with the following menu.lst:
title = Linux kernel=(fd0)/rmgr -nopentium -sigma0 module=(fd0)/main -nokdb module=(fd0)/sigma0 module=(fd0)/glinux.gz root=/dev/hda2
The first error that I get is:
RMGR: ERROR: while parsing config file: syntax error at line 1, col 2
Does this matter? I don't know which config file it's talking about. There's a rmgr.cfg.linux on the floppy, but I'm not booting with it, because it made things worse when I tried using it.
When you don't use a config file, Rmgr parses its command line for configuration info. Usually it skips over options starting with "-", but maybe the boot floppy contains an old Rmgr binary which doesn't. Copying a new binary (which you should find at l4/server/rmgr/src/rmgr) to the floppy should fix this problem.
At "RMGR: WARNING: there were 1 boot errors - continue?" I press return ...
Then I get a mixture of kernel start-up messages and L4 errors which move too quickly for me to note them exactly. There are several screens full of "sigma0 denies mapping", and there's a "Hmm, strange, that shouldn't happen any more",
These messages have no meaning, and they will be removed. Ignore them. ;)
and the last kernel message, before the machine reboots by itself, is "INIT: version 2.75 booting". All quotations may be approximate.
Hmm... a little bit of debugging would maybe help. Do you have a second machine available which you could connect to the first one using a null-modem cable?
I just tried it again, for about the fifth time, and it didn't get as far this time. This time its last words were:
Partition check: hda: hda1 hda2 VFS: Mounted root (ext2 filesystem) readonly. wake_up_process: ipc failed wake_up_process: ipc failed wake_up_process: ipc failed ... wake_up_process: ipc failed
These messages are also mostly informational.
Can anyone suggest what I can try next? Does anyone have this working?
Well, we have...
I suggest that you copy an image of your floppy using `dd' and send it to me; maybe I have overlooked something in the distribution.
I'm using the files dated 981207 and it's a 486 machine that I'm using. (The other machines that I tried grind to a halt very early on with "space.cc:179: failed assertion `size == PAGE_SIZE'".)
This rings a familiar bell; I thought I had fixed this before -- I'll check tomorrow.
Does someone have working binaries of "main" and "sigma0" that I could try, to see if there's something strange about my hardware?
I don't think it's your hardware; it's just that we always test using Pentiums, and on i486s Fiasco cannot use 4-MB pages which may trigger a few bugs. We'll find them. ;)
Michael
Thanks for your reply.
I'm now using the rmgr which I compiled myself (which means I can insert printfs!) and I have tried running L4-Linux with and without the rmgr.cfg.linux.
Without that config file, or with an empty config file, it does what I described before:
Partition check: hda: hda1 hda2 VFS: Mounted root (ext2 filesystem) readonly. wake_up_process: ipc failed wake_up_process: ipc failed wake_up_process: ipc failed ... wake_up_process: ipc failed
Then reboots.
With the example config file supplied, or with a config file in which I only put the task lines and nothing else, the kernel complains about not being able to grab IRQs (for IDE and the floppy) and consequently fails to mount the root file system. (At least, by not rebooting, it gives me a chance to get a proper look at the kernel messages on the screen!)
Does the mere presence of a config file that lists the tasks cause some IRQ-related default value to be set differently from the default value it gets when there is no config file at all? That would be one way of explaining it.
Hmm... a little bit of debugging would maybe help. Do you have a second machine available which you could connect to the first one using a null-modem cable?
I have a second machine. It sounds like I should acquire a null-modem cable. (At present I also have a third Linux box, but that one's a SPARC.)
Edmund
I had it sort of running just now ...
In order to achieve this I had to:
- add "-nopentium" to rmgr's menu.lst line
- add this to rmgr.cfg.linux: task modname "rmgr.cfg"
- comment out the "boot_priority" lines in rmgr.cfg.linux
- switch the machine right off beforehand - rebooting isn't sufficient
- add init=/bin/sh as a boot argument to Linux
- be lucky - it doesn't seem to work every time I try! (because of this element of luck it's hard to know which of the other actions is really necessary ...)
I then had no cursor, but a shell, with which I could walk around the file system using pwd, cd and echo *. It reboots as soon as I do anything that involves a fork, such as ls, cat or sh. So I'll worry about configuring X later, right? :-)
My menu.lst contains:
title = Linux kernel=(fd0)/rmgr -nopentium -sigma0 -configfile module=(fd0)/main -nokdb module=(fd0)/sigma0 module=(fd0)/rmgr.cfg.linux module=(fd0)/glinux.gz root=/dev/hda2 init=/bin/sh
I built main and sigma0 myself under Debian 2.1, i.e. gcc 2.7.2.3 and binutils 2.9.1.0.19a, from the sources dated 981207. Everything else was already on grub-ext2fs-floppy from the ftp site. I compile on a 686 machine and run Fiasco on a 486 machine.
Any ideas?
Edmund
l4-hackers@os.inf.tu-dresden.de