Hello DECstation hackers,
yes, you are reading right. After two weeks of hard work (have i
mentioned that i am a kernel hacker newbie?) the timer tick code for
kmin is running. This is what i got so far:
Linux/MIPS DECStation Boot
Copyright (C) Paul M. Antoine 1995, 1996 and others, 1994, 1995, 1996
Linux version 2.1.1 (harry@irgendwo) (gcc version 2.7.2)
#1 Mon Mar 17 22:21:03 MET 1997
Page size is: 1000
Bitmap size is: 1536 bytes
Main memory size is: 49152 KB
System id is: 82030230
System has an R3000 CPU
I-Cache size: 64K, D-Cache size: 128K
System has firmware type: TCF0
This DECStation is a: DS5000/1x0
Setup complete, launching kernel...
Calibrating delay loop.. ok - 32.96 BogoMIPS
Memory: 47600k/49148k available (696k kernel code, 852k data)
Bad pmd in pte_alloc_kernel: 8003f5bf
free_area_pte: bad pmd (000365bf)
I commented out console_init(...) in init/main.c and used a
register_console(pmax_prinf) instead in arch/mips/dec/decstation.c
(thanks for the hint, Ralf).
If anybody is interested in my patches, please drop me a mail. I've
tried to put them on the web, but my ISP is having problems with
uploading, maybe this week... or should i just send them to Paul?
A further investigation revealed:
- the kernel is dying (silently!) in buffer_init() in fs/buffer.c
because the vmalloc(...) for the hash_table fails.
- if buffer_init() in init/main.c is commented out, the kernel
even prints the (real(tm)) linux banner and dies somewhere in
kernel_thread(init, NULL, 0) (CONFIG_PROC_FS not set!).
I'd appreciate, if someone with more insight than me could point me into the
direction in fixing this vmalloc stuff.
Oh... i nearly forgot to mention: the cache_size() stuff in
arch/mips/mips1/cache.S also seems to work.