Harald Fritzsche <harald.fritzsche(a)mpd.de> writes:
> i have applied Michaels patch and fortunatly the message
> <KERNEL: no page fault handler ...>
> does never occur.
>
> L4Linux boots now.
>
> Thanks so far and congratulation for such a system (Linux on Fiasco).
Congratulations for getting it running, and thanks for going through
all the hassles!
> startx or something else (xdm,kdm,X,...) scrambles the screen and blocks the
> keyboard. I assume that this is causes by the disabled serial interface and
> related IRQ's (i have configured out serial interface)?
It might as well be a bug in Fiasco. So far, we also haven't been
very successful in getting up X11 (I think I've seen it running once
or twice, but it must have been a lucky day).
Michael
--
hohmuth(a)innocent.com, hohmuth(a)sax.de
http://www.sax.de/~hohmuth/
"Sun-Mi You" <smyou(a)postech.ac.kr> writes:
> Our L4/Linux was hanged at follow code.
>
> in 'linux/arch/l4-i386/chead.c '
>
> /* create idt */
> {
> extern long idt_table;
> struct entry_t {unsigned short w0, w1,w2,w3;} ;
> struct entry_t *entries =
> (struct entry_t *)((unsigned long)emu_lib_text +
> ((unsigned long)&idt_table - EMULIB_CODE_ADDRESS));
> unsigned short int tmp;
> int i;
>
> => this point!
>
> for (i=0; i<20; i++, entries++)
> {
> tmp = entries->w1;
> entries->w1 = entries->w3;
> entries->w3 = tmp;
> }
>
> What problem is this?
>
> ( I think it may be some memory problem. )
I think this is a problem one other user also experienced: The system
call IPC library (called ``emulation library'' for hysterical reasons)
in linux/arch/l4-i386/emulib/ has been linked to a wrong virtual
address because the magic in this directory's Makefile failed. One
possible reason is that you don't have a `cpp' in your $PATH.
Does it help to replace "cpp" with "gcc -E" in this Makefile?
Michael
--
hohmuth(a)innocent.com, hohmuth(a)sax.de
http://www.sax.de/~hohmuth/
Our L4/Linux was hanged at follow code.
in 'linux/arch/l4-i386/chead.c '
/* create idt */
{
extern long idt_table;
struct entry_t {unsigned short w0, w1,w2,w3;} ;
struct entry_t *entries =
(struct entry_t *)((unsigned long)emu_lib_text +
((unsigned long)&idt_table - EMULIB_CODE_ADDRESS));
unsigned short int tmp;
int i;
=> this point!
for (i=0; i<20; i++, entries++)
{
tmp = entries->w1;
entries->w1 = entries->w3;
entries->w3 = tmp;
}
What problem is this?
( I think it may be some memory problem. )
Additionaly, our test platform is pentium/64Mb memory.
Thanks in advance. :)
----------------------------------------------------------
Sun-Mi You (smyou(a)postech.ac.kr)
System Software Laboratory
Dept. of Computer Science and Engineering
POSTECH, Pohang, KOREA
Phone: +82-562-279-5668
http://sslab.postech.ac.kr/~woodstok
----------------------------------------------------------
Harald Fritzsche <Harald.Fritzsche(a)mpd.de> writes:
> I found (i hope so) the reason for the kbd: sig_sched: invalid
> ext_preempter in
> L4-Linux, reported earlier.
>
> In file :
> linux/arch/l4-i386/lib/task.c
> in function:
> start_linux_server_thread()
> is used the variable
> l4_threadid_t foo_id
> uninitialized.
> I set foo_id to L4_INVALID_ID and the sig_sched disappears. But i don't
> if this is intended from the authors.
Your fix is correct.
The problem occurred because I forgot to commit some patches before
taking the snapshot. I've appended the patches (which include your
fix) below.
[ from a different message: ]
> The function rs_init() hangs during boot (the boot stops for ever). Or a
> function after this part of initialization. The last what i see is:
> tty0* ... is a 16550A.
>
> If i disable the serial interface the boot goes on up to VFS mount and stops
> than.
This might be because the kernel debugger stub grabs irq 3 (the
interrupt for COM2). Maybe Linux' serial driver waits for an
interrupt that never arrives because L4Linux cannot attach to irq3.
Configuring out the serial driver is the correct solution when using
a remote Gdb attached via a serial line. If you don't have a remote
Gdb, try booting with the "-nokdb" kernel option and see if the
problem goes away.
Michael
--
hohmuth(a)innocent.com, hohmuth(a)inf.tu-dresden.de
http://home.pages.de/~hohmuth/
Ludger Martin <lumartin(a)vlsi.informatik.tu-darmstadt.de> writes:
> I tryed to build a fiasco boot disk. I followed the instruction on the
> WWW-page
> http://os.inf.tu-dresden.de/fiasco/use.html
> and every thing was fine. So I tryed to boot fiasco but i got the
> folowing error:
> KERNEL: no page fault handler for region: 0xfffffffc, error 0x2
You forgot to load a sigma0 server (or forgot to specify the "-sigma0"
command line option). Please use a menu.lst containing the example
configuration from the web page you cite. (The configuration on the
web page had a bug for a few days which resulted in the problem you
observed -- maybe you've picked up an old cached copy of it?)
Michael
--
hohmuth(a)innocent.com, hohmuth(a)sax.de
http://www.sax.de/~hohmuth/
Robert Kaiser <rob(a)sysgo.de> writes:
> On Fri, 6 Nov 1998, OKUJI Yoshinori wrote:
> > kernel info page mappt to: 00001000KDB: sig_sched: invalid ext_preempter
> Same here. I'm not sure if I got the menu.lst and rmgr.cfg right.
>
> Would someone who has a working setup (there's got to be someone
> who has, right ?) please kindly post his menu.lst and rmgr.cfg to
> this forum ?
You don't need a rmgr.cfg, and your menu.lst should contain something
like:
title= Fiasco + Linux
kernel= (fd0)/hohmuth/rmgr -sigma0
module= (fd0)/hohmuth/main -nowait
module= (fd0)/hohmuth/sigma0
module= (fd0)/hohmuth/glinux.gz
That is equivalent to the configuration used to boot the "hello world"
server, just that we load "glinux.gz" instead of "hello".
Michael
--
hohmuth(a)innocent.com, hohmuth(a)inf.tu-dresden.de
http://home.pages.de/~hohmuth/
Erik Oliver Bla� <erik(a)ifib.uni-karlsruhe.de> writes:
> Booting Fiasco+Linux I get the following error message:
>
> Error: modname glinux doesn't match cmdline (hd0,0)/boot/grub/rmgr.cfg
>
> although rmgr.cfg is Dresdens original version.
You don't really need to use the rmgr.cfg you find on the boot floppy
(the example on <URL:http://os.inf.tu-dresden.de/fiasco/use.html#boot>
doesn't use it).
If you want to use a custom Rmgr configuration (rmgr.cfg):
- Add the "-configfile" option to the "rmgr" command line
<URL:http://os.inf.tu-dresden.de/L4/l4libman/rmgr.html>.
- Don't forget that you also need to load the Sigma0 server (the
old menu.lst file on the floppy image doesn't load it). If forget
this, you get a page fault at 0xfffffffc (because the stack pointer
for the [non-loaded] Sigma0 server is initialized to 0).
Also don't forget the "-sigma0" command line option for "rmgr".
- There might be a buglet in Rmgr which results in the error message
you quote. You can work around this by removing (or commenting out)
the "modname <something>" directives from rmgr.cfg.
I haven't yet had time to try to reproduce and fix this, but this is
still in the queue.
> After that the Linux kernel seems to load anyway, but stops at the error
> reported from Harald.
>
> Why ?
Please try the patches I posted a few minutes ago.
Michael
--
hohmuth(a)innocent.com, hohmuth(a)inf.tu-dresden.de
http://home.pages.de/~hohmuth/
I'm crossposting this to the OSKit mailing list because this is an
OSKit question.
"James Gibson" <jgibson62(a)hotmail.com> writes:
> I've been trying to build Fiasco on a 486 (running Linux 2.0.35 and egcs
> 1.1). The OS kit build fails with this message:
> make[2]: Entering directory `/usr/src/l4-981012/oskit/examples'
> ld -Ttext 100000 -L../lib \
> -o multiboot ../lib/multiboot.o multiboot.o \
> -lkern -lmc -llmm ../lib/crtn.o
> ld -Ttext 100000 -L../lib \
> -o multiboot-gdb ../lib/multiboot.o multiboot-gdb.o \
> -lkern -lmc -llmm ../lib/crtn.o
> ld -Ttext 100000 -L../lib \
> -o multiboot-smp ../lib/multiboot.o multiboot-smp.o \
> -lsmp -lkern -lmc -llmm ../lib/crtn.o
> ../lib/libsmp.a(boot.o): In function `_SMP_TRAMP_START_':
> boot.o(.text+0x29): relocation truncated to fit: R_386_16
> _SMP_TRAMP_32_ENTRY_
> make[2]: *** [multiboot-smp] Error 1
>
> Question: Since I don't need SMP, would it be possible (and if so, would
> it be worthwhile) to disable SMP support?
(This is an FAQ -- check out
<URL:http://os.inf.tu-dresden.de/fiasco/faq.html>.)
I cannot reproduce this problem. However, as this binary isn't
needed, you can work around this problem by "touch
oskit/examples/multiboot-smp".
My guess is that this problem is caused by some combination of
compiler and linker versions. Can anyone shed some light on this?
Michael
--
hohmuth(a)innocent.com, hohmuth(a)inf.tu-dresden.de
http://home.pages.de/~hohmuth/
Harald Fritzsche <Harald.Fritzsche(a)mpd.de> writes:
> Hello Hackers,
>
> as stated earlier my L4Linux boots up to VFS - mount.
>
> Than the execution of /sbin/init (linux/init/main.c) leads to
>
> wake_up_process: ipc_failed (7 or 8 times)
That's sort of normal -- we probably should remove this message from
L4Linux.
> and finally to
> KERNEL: no page fault handler for region: 0xeab2f800, error 0x0
This probably is a kernel bug. Fiasco does a read at an invalid
virtual address. If you boot with the "-nokdb" kernel option, you
should be able to get a register dump even even if you don't have
connected a remote Gdb. This, together with the output of
"nm main | sort", could give you a hint about the reason of the crash.
> This error seems to be caused by /sbin/init
>
> I am using Linux SuSe 5.3 with init v 2.65 f (i hope it is correct).
> Which init do TUD prefer?
I don't think the version of `init' makes a difference here. However,
I will send you the version details soon. Right now I can't check
because my test machine is busy this week doing benchmarks... :-( Is
anyone willing to donate another test machine?
Michael
--
hohmuth(a)innocent.com, hohmuth(a)sax.de
http://www.sax.de/~hohmuth/
Hello.
I manage a mirror site at duff.kuicr.kyoto-u.ac.jp, and for some
reasons, the directory has been changed to /mirrors/L4 from /pub/L4.
Please update the Fiasco page.
Thanks,
OKUJI
----------------------------------------------------------------------
~o o~ OKUJI Yoshinori <okuji(a)kuicr.kyoto-u.ac.jp>
s ) http://duff.kuicr.kyoto-u.ac.jp/~okuji (check "okuji.asc" !)