[parisc-linux] Many experience done on 720, but `init' fails !!

Christoph Plattner christoph.plattner@dot.at
Sun, 08 Apr 2001 19:08:11 +0200


A week ago, I reported the problem booting PA-Linux 0.5 with the new
kernel and new selfmade cross tool chain.

The last week I used to experience with cross toolchain setup.
The aim was to find away having "one" glibc-2 for cross development
and for the target (to mount, NFS-ROOT). I also used tricks like
	--prefix=/usr and
	make install install_root=/usr/parisc/target....
but the result and discussion with other showed following:

	There must be TWO glibc trees, one for the cross toolchain,
	the other for the target. The second one is built with the 
	method defining prefix to /usr and install it in a target tree.

SO I build sash, a also build a bash (shared and static !), I build
fileutils, text-utils, shell-utils, etc, etc.....
The system boots with bash and I can mount, run programs, etc....

The I build "my own" startup stuff. A /sbin/init.d/xxx , etc/rc.d/xxx
and so on. I also build a sysvinit-2.78 (and 2.77 before), but the
`init'
has it's problems. The error message is:

VFS: Mounted root (nfs filesystem) readonly.
break 0,0: pid=9 command='init'
init[9]: Breakpoint 0

     YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
PSW: 00000000000001001111111100001111
r0-3     00000000 102de010 00000000 00000000
r4-7     00000000 00000000 00000000 00000000
r8-11    00000000 00000000 00000000 00000000
r12-15   00000000 00000000 00000040 1012544c
r16-19   13f085c0 13f08000 c804c804 00000001
r20-23   102efcc0 102efcc0 10022800 102efcc0
r24-27   0000002e 00001000 00000000 1024c010
r28-31   00000000 00000000 13f089c0 101312a0
sr0-3    00000000 00000000 00000000 00000001
sr4-7    00000000 00000000 00000000 00000000

IASQ: 00000000 00000000 IAOQ: 00000000 00000004
 IIR: 00000000    ISR: 00000000  IOR: 00000000
ORIG_R28: 00000000

How can I follow up the thing ?
Is the GDB of the CVS usable  (for example starting gdbserver init 
instead of init and `target remote' via the second serial interface ?)

By the way: I did a "super hack" in the kernel. In the serial interrupt 
routine, I catch the charcater `^\', filter it for `/dev/ttyS0' and 
do a machine_restart(). This is perfect for development !!

With friendly regards
	Christoph P.






-- 
-------------------------------------------------------------------------
private:	christoph.plattner@dot.at
company:	christoph.plattner@alcatel.at