2000-12-09 01:15:21

by Eddy

[permalink] [raw]
Subject: 2.2.16 and 2.2.17 nfsroot boot problem with D-Link DE-220PCT

This is a second posting, I just got back onto the kernel mailing list. The first was sent via dejanews. So If this looks familiar... It is. Ignore It.

Hi all, I seem to be having some problems configuring kernels 2.2.16 and 2.2.17 to nfsroot boot. I have two machines at a friends house I am trying to link up. The server is an A-Bit BP6 433 celeron with a rtl-8139 10/100-tx pci board which is working fine. I am trying to hook up a 486-66 with an unknown motherboard type using interface chips DX6900A-1 and DX6900A-2 to the ISA bus trying to talk to a brand new D-link DE-220-PCT.

What I have done is comiled kernels 2.2.16-patched with USB and NTP-PPS and K-NSF and a newer 2.2.17 vanilla kernel. The 2.2.16-patched has been running fine for many months now. Windows-95 on the 486 runs the D-Link card ok. I can talk to the BP6 running samba great. I can take the D-Link card out of the 486 stuff it into the BP6 ISA bus. I can modprobe eth1 with the ne.o module and up comes the link to the 486. Windows can talk to samba great.

I think that I have just about every networking option compiled into the 2.2.16 kernel except the experimental rarp module??? I've got kernel NFS patch from a while back for the 2.2.16 kernel.

I compile the kernel for 486. Strip down most of the stuff I wont need on the 486 and leave in the arp/rarp/bootp/dhcp nfs and root on nfs.

I do mknod /dev/nfs b 0 255 ...
I do rdev bzImage.216 /dev/nfs
I do mkdir /tftpboot/192.168.50.2
I do cd /tftpboot/192.168.50.2
I do tar -C /boot -cpsf - | tar -xpsf - ... to ... tar -C /var -cpsf - | tar -xpsf -
I do mkdir /usr /lib /mp3 ... structures to come in shared via nfs
I do cd etc
vi fstab
//celeron:/tftpboot/192.168.50.2 / nfs rsize=8192,wsize=8192 0 0
//celeron:/lib /lib nfs rsize=8192,wsize=8192 0 0
//celeron:/usr /usr nfs rsize=8192,wsize=8192 0 0
//celeron:/mp3 /mp3 nfs rsize=8192,wsize=8192 0 0
/dev/hda1 /cdrive vfat defaults 0 0
/cdrive/swapfile swap swap defaults 0 0
none /proc proc defaults 0 0
none /dev/pts pts defaults 0 0
...
wq

I cd /etc
vi exports
/tftpboot/192.168.50.2 486(rw,no_root_squash,no_all_squash)
/lib 486(rw,no_root_squash,no_all_squash)
/usr 486(rw,no_root_squash,no)all_squash)
...
a bunch of other stuff
wq
vi dhcpd.conf
shared-network 192.168.50.0;
{ allow bootp;
server-name "celeron";
server-identifier 192.168.50.1;
subnet 192.168.50.0 netmask 255.255.255.0;
{ range 192.168.50.15 192.168.50.99;
default-lease-time 600; max-lease-time 7200;
option subnet-mask 255.255.255.0;
option domain-name Sophie;
}
group
{ host 486
{ hardware 00:50:ba:05:7b:fb;
fixed-address 192.168.50.2;
}
}
}
:wq
vi /etc/rc.d/init.d/rarp
... a bunch of junk
start = /sbin/rarp -s 192.168.50.2 00:50:ba:05:7b:fb
stop = /sbin/rarp -d 192.168.50.2
status = /sbin/rarp -a
... a bunch more juck
:wq
vi /etc/rc.d/init.d/dhcpd
I add "eth0" to the "daemon dhcpd" start line.
:wq
cd /etc/rc.d
ln -s ../init.d/rarp rc5.d/S15rarp
ln -s ../init.d/rarp rc4.d/S15rarp
ln -s ../init.d/rarp rc3.d/s15rarp
ln -s ../init.d/dhcpd rc5.d/S65dhcpd
ln -s ../init.d/dhcpd rc4.d/S65dhcpd
ln -s ../init.d/dhcpd rc3.d/S65dhcpd

rarp -a reports 192.168.50.2 00:50:ba:05:7b:fb

tail /var/log/messages reports
"dhcpd sending and recieving on eth0 191.168.50.0... ready and waiting"

so know we do

cd /usr/src/linux/arch/i386/boot
ln -f bzImage-486.216 /tmp/
ln -f bzImage-486.217 /tmp/ ... after the rdev thingy

boot up windows on the 486.
open up the tmp samba share
copy bzImage* c:\

try
c:\loadlin.exe c:\bzImage-486.216 root=/dev/nfs ether=0,0,eth0
c:\loadlin.exe c:\bzImage-486.216 root=0:255 ether=0,0,eth0
c:\loadlin.exe c:\bzImage-486.216 root=/dev/nfs ip=autoconf ether=0,0,eth0
c:\loadlin.exe c:\bzImage-486.216 root=/dev/nfs ip=both nfsroot=192.168.50.1:/tftpboot/192.168.50.2,rsize=8192,wsize=8192 ether=0,0,eth0
c:\loadlin.exe c:\bzImage-486.216 root=/dev/nfs nfsaddrs=auto ether=0,0,eth0 ... "for compatibility reasons only"
c:\loadlin.exe c:\bzImage-486.216 root=/dev/nfs nfsaddrs=192.168.50.2:192.168.50.1::255.255.255.0:eth0:both ... "again only for compatibility reasons"
c:\loadlin.exe c:\bzImage-486.216 root=/dev/nfs ip=something:something:something:something:something:something:Idon'tknowhatelse nfsroot=192.168.50.1%s,rsize=8192,wsize=8192 nfsaddrs=myip:serv-ip:nogw:netmask:eth0 ether=9,0x280,eth0 lp=7,0x378 mem=8192k init=1
...
and every other combinations that I could possible try to think of after 3 days of continuous awakining.
...
Ditto for bzImage.217
...
OK
The result is always the same on the 486. Both kernels.
First.. the kernel would boot up until it got to "hda". It would then hang after reporting some stuff about ide-something assuming 50Mhz and I you have to do is add another kernel parameter=xx. So I tried 10,15,20,25 all with the same results... Hang.
So recompiled the kernels and put back the old mfm/rll/ide disc suppot. The help said something about the old 486's having problems sometimes with the newer fancy module. And W-A-A-L-A-A-H-H I now see Donald Becker. ne.c:v1.10 9/23/94 Donald Becker ([email protected])
NE*000 ethercard probe at 0x280: 00:40:05:3f:20:d6 ... yes I know... It's just a backup card. I'll put the other one back when it starts working.
eth0: NE2000 found at 0x280, using IRQ 9.
_


and thats as far as I've gotten. So far.

Do any of the the kernel hacker type folks got any ideas what I can do next?

I Think I'll try the doing the debug thing but I've never done it yet and really don't know where to start. But I'm getting a little sleeply know so I think I'm going to just rest my head for a while.

Thanks in Advance
Eddy Cornu