Hello all,
Let me preface this by saying that I can mount the NFS directory just fine
after booting off a local partition. What doesn't work is booting the root
off NFS...
Here are the kernel messages (yes it's an embedded PPC, but I don't think
it's relevant to my case). 192.168.1.185 is the host PC, 200 is the target
board.
Linux/PPC load: console=ttyUL0,115200 root=/dev/nfs rw ip=dhcp
nfsroot=192.168.1.185:/home/guinevere/Min_UartLite_NetLite_Ace/buildroot/project_build_powerpc/genepy/root
Uncompressing Linux...done.
Now booting the kernel
s
[ 0.219171] NET: Registered protocol family 2
[ 0.257000] IP route cache hash table entries: 1024 (order: 0, 4096
bytes)
[ 0.260503] TCP established hash table entries: 4096 (order: 3, 32768
bytes)
[ 0.261260] TCP bind hash table entries: 4096 (order: 4, 81920 bytes)
[ 0.262759] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.262796] TCP reno registered
[ 0.272777] sysctl table check failed: /kernel/l2cr .1.31 Missing
strategy
[ 0.272876] Call Trace:
[ 0.272900] [c7c1deb0] [c0008774] show_stack+0x50/0x184 (unreliable)
[ 0.273006] [c7c1ded0] [c003250c] set_fail+0x50/0x68
[ 0.273082] [c7c1def0] [c0032b74] sysctl_check_table+0x650/0x698
[ 0.273133] [c7c1df20] [c0032b84] sysctl_check_table+0x660/0x698
[ 0.273182] [c7c1df50] [c001f928] register_sysctl_table+0x64/0xc4
[ 0.273255] [c7c1df70] [c02545a4] register_ppc_htab_sysctl+0x18/0x2c
[ 0.273331] [c7c1df80] [c02531e4] kernel_init+0xc8/0x284
[ 0.273379] [c7c1dff0] [c0004b78] kernel_thread+0x44/0x60
[ 0.283789] io scheduler noop registered
[ 0.283850] io scheduler anticipatory registered (default)
[ 0.283879] io scheduler deadline registered
[ 0.284332] io scheduler cfq registered
[ 0.391347] uartlite.0: ttyUL0 at MMIO 0x84000003 (irq = 6) is a uartlite
[ 0.391432] console [ttyUL0] enabled
[ 0.523666] loop: module loaded
[ 0.528869] xsysace xsa: Xilinx SystemACE revision 1.0.12
[ 0.534896] xsysace xsa: capacity: 1014048 sectors
[ 0.539385] xsa: xsa1 xsa2
[ 0.548363] Xilinx SystemACE device driver, major=254
[ 0.560188] xilinx_emaclite xilinx_emaclite.0: MAC address is now 2: 0:
0: 0: 0: 0
[ 0.566632] xilinx_emaclite xilinx_emaclite.0: using fifo mode.
[ 0.576917] xilinx_emaclite xilinx_emaclite.0: Xilinx EMACLite at
0x81000000 mapped to 0xC9020000, ir
q=0
[ 0.586985] mice: PS/2 mouse device common for all mice
[ 0.591030] i2c /dev entries driver
[ 0.601733] xilinx_iic.0 #0 at 0x81600000 mapped to 0xC9040000, irq=2
[ 0.607217] TCP cubic registered
[ 0.610429] NET: Registered protocol family 1
[ 0.614695] NET: Registered protocol family 17
[ 0.620327] RPC: Registered udp transport module.
[ 0.623758] RPC: Registered tcp transport module.
[ 2.135882] Sending DHCP requests ., OK
[ 2.155904] IP-Config: Got DHCP answer from 0.0.0.0, my address is
192.168.1.200
[ 2.162729] IP-Config: Complete:
[ 2.165102] device=eth0, addr=192.168.1.200, mask=255.255.255.0,
gw=192.168.1.185,
[ 2.173026] host=genepy, domain=lpsc.in2p3.fr, nis-domain=(none),
[ 2.179507] bootserver=0.0.0.0, rootserver=192.168.1.185,
rootpath=/home/guinevere/Min_UartLite_
NetLite_Ace/buildroot/project_build_powerpc/genepy/root
[ 2.195005] Looking up port of RPC 100003/2 on 192.168.1.185
[ 2.204878] Looking up port of RPC 100005/1 on 192.168.1.185
[ 11.019072] nfs: server 192.168.1.185 not responding, still trying
And then it hangs.
In the meanwhile I see this in the host log:
Apr 18 16:32:08 lpsc6185x dhcpd: DHCPDISCOVER from 02:00:00:00:00:00 via
eth1
Apr 18 16:32:08 lpsc6185x dhcpd: DHCPOFFER on 192.168.1.200 to
02:00:00:00:00:00 via eth1
Apr 18 16:32:08 lpsc6185x dhcpd: DHCPREQUEST for 192.168.1.200
(192.168.1.185) from 02:00:00:00:00:00 via eth1
Apr 18 16:32:08 lpsc6185x dhcpd: DHCPACK on 192.168.1.200 to
02:00:00:00:00:00 via eth1
Apr 18 16:32:08 lpsc6185x mountd[18263]: authenticated mount request from
192.168.1.200:793 for
/home/guinevere/Min_UartLite_NetLite_Ace/buildroot/project_build_powerpc/genepy/root
(/home/guinevere/Min_UartLite_NetLite_Ace/buildroot/project_build_powerpc/genepy/root)
The host /etc/exports:
/home/guinevere/Min_UartLite_NetLite_Ace/buildroot/project_build_powerpc/genepy/root
*(rw,async,no_all_squash,no_root_squash)
The host /etc/dhcpd.conf (I've seen plenty of different samples on the web):
allow bootp;
allow booting;
ddns-update-style ad-hoc;
# ddns-update-style interim;
subnet 192.168.1.0 netmask 255.255.255.0 {
default-lease-time 21600;
option routers 192.168.1.185;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.1.185;
option domain-name "lpsc.in2p3.fr";
option ntp-servers 192.168.1.185;
# range dynamic-bootp 192.168.1.128 192.168.1.254;
}
host genepy_l {
# We'll probably want to use different MACs for different boards...
hardware ethernet 2:0:0:0:0:0; # EMAC_LITE
fixed-address 192.168.1.200;
server-name "192.168.1.185";
option host-name "genepy";
# server-name 192.168.1.185;
filename "/tftpboot/zImage.elf"; # Maybe this needs to be a
uImage for u-boot
#option root-path "192.168.1.185:/opt/rootfs";
option root-path
"/home/guinevere/Min_UartLite_NetLite_Ace/buildroot/project_build_powerpc/genepy/root";
}
And the relevant kernel options:
$ egrep "NFS|BOOT|NET" .config | egrep -v "^#|^$"
CONFIG_EMBEDDEDBOOT=y
CONFIG_BOOT_LOAD=0x00400000
CONFIG_NET=y
CONFIG_INET=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_ROOT_NFS=y
CONFIG_NFS_COMMON=y
Any hint ?
In particular, why does the DHCP client says it's getting its (valid)
address from 0.0.0.0 ?!?
Thanks
--
Guillaume Dargaud
http://www.gdargaud.net/Antarctica/Penguins.html