Subject: Re: Illegal f_magic number while install-procedure

From: Tom Woelfel <[email-masked]>
Date: Mon, 8 Mar 1999 13:47:03 +0100

Hi,

on the last weekend I've started to install linux on my good ol' Indy
(System: IP22; Processor: 100MHz R4000, with FPU). After setting up
bootp/tftp and creating a file-system I was finally ready to boot linux 
over the network. After loading the kernel the system is giving me
these messages:

============================================================
>> boot bootp()/vmlinux
73264+592+11520+331680+27848d+3628+5792 entry: 0x8df9a960
Setting $netaddres to 192.168.1.5 (from server deadmoon)
Obtaining /vmlinux from server deadmoon

Cannot load bootp()/vmlinux
Illegal f_magic number 0x7f45, expected MIPSELMAGIC or MIPSEBMAGIC.

Exception: <vector=UTLB MISS>
....<More Information>.....
============================================================

Then a message that <return> is rebooting the system appears at the
bottom of the screen.

On server deadmoon I can see:

============================================================
bootp():found 192.168.1.5(sgi)
bootp():bootfile=/export/mipseb/vmlinux
bootp():vendor magic field is 0.0.0.0
bootp():sending reply..

============================================================

I have tried this with the vmlinuv that comes with hardhat, and with
several newer (prebuild) kernels (2.1.131, 990212). The result was
always the same. I guess that this has something todo with magic
numbers ? Is there anyone out there who has seen this before?

(System Configuration: Server running kernel 2.2.2 - connected with
internal net via 10Mbit-Hub).

Any hints welcome,
Tom

---

From: Thomas Bogendoerfer <[email-masked]>
Date: Tue, 9 Mar 1999 00:02:34 +0100

> Illegal f_magic number 0x7f45, expected MIPSELMAGIC or MIPSEBMAGIC.

your prom is too old to understand ELF files. To solve this problem you
need either a newer prom or an Indy kernel in ECOFF format.

I've successful booted a converted kernel a few minutes ago and will upload
this kernel to

ftp://ftp.linux.sgi.com/pub/linux/mips/test/vmlinux-indy-2.2.1-990226.ecoff.gz

Please try it.

I've created it with a modified elf2ecoff tool from the kernel sources
on the Indy itself (it works only when used on a machine with the same
endian as the kernel). I look into fixing byte ordering problems in elf2ecoff
to allow even cross compiling of kernels on opposite endian machines.

Thomas.

-- 
   This device has completely bogus header. Compaq scores again :-|
It's a host bridge, but it should be called ghost bridge instead ;^)
                                        [Martin `MJ' Mares on linux-kernel]

---

From: Tom Woelfel <[email-masked]>
Date: Wed, 10 Mar 1999 10:20:19 +0100

> ftp://ftp.linux.sgi.com/pub/linux/mips/test/vmlinux-indy-2.2.1-990226.ecoff.gz

My Indy has seen the light ;-). The kernel boots and goes it's way
through the device checking. All disk's are recognized and the
mount-request for the root-file-system is send to the server. The
(root)-dir is mounted from the Indy. (I can see this in the server-log)
Then the prom-memory is freed and the last thing I see is: 
freeing unused kernel memory 52k

Then nothing happens anymore. I think the next thing to come should be 
the 'init' process (init doesn't need to be an ECOFF - exec ?).

Or do I nedd a modified init to jump into setup?
                              
partial sucess,
Tom

---

From: [email-masked]
Date: Wed, 10 Mar 1999 17:53:51 +0100

> Or do I nedd a modified init to jump into setup?

No, you definately don't need any other changes than the kernel since the
kernel image is the only file that is ever being touched by the PROM.

  Ralf

---

From: Thomas Bogendoerfer <[email-masked]>
Date: Thu, 11 Mar 1999 00:27:13 +0100

> the 'init' process (init doesn't need to be an ECOFF - exec ?).

no elf is perfect. Could you please send a hinv output ? I suspect this
another SC processor. 

Thomas.

---

From: Tom Woelfel <[email-masked]>
Date: Fri, 12 Mar 1999 08:44:06 +0100

> no elf is perfect. Could you please send a hinv output ? I suspect this

$ hinv
1 100 MHZ IP22 Processor
FPU: MIPS R4010 Floating Point Chip Revision: 0.0
CPU: MIPS R4000 Processor Chip Revision: 3.0
On-board serial ports: 2
On-board bi-directional parallel port
Data cache size: 8 Kbytes
Instruction cache size: 8 Kbytes
Main memory size: 96 Mbytes
Integral Ethernet: ec0, version 1
Disk drive: unit 1 on SCSI controller 0
Integral SCSI controller 0: Version WD33C93B, revision D
Iris Audio Processor: version A2 revision 4.1.0
Graphics board: Indy 8-bit
Vino video: unit 0, revision 0, Indycam connected

Does this help youu ?

//Tom