[Clfs-support] Problem with NFS-root on new kernel

Ron McDowell rcm at fuzzwad.org
Wed Aug 8 12:25:49 PDT 2012


SOLVED.  On 8/7/12 8:00 PM, Ron McDowell wrote:
> Getting real close to calling "success" on this one...
>
> I have my new World [NFS-mounted root filesystem] built, up and 
> running with an old 2.6.32 kernel that came with my board.  Built a 
> new 2.6.39.4 kernel and installed it, but it hangs when it gets to the 
> point where it wants to mount the root fs...see the end of the 
> attached boot text.  I'm sure something in my .config isn't right, but 
> can't put my finger on it.  Has anyone had this issue before?  
> Thanks.  --rcm
[snip]
> IP-Config: Guessing netmask 255.255.255.0
> IP-Config: Complete:
>      device=eth0, addr=192.168.1.1, mask=255.255.255.0, 
> gw=255.255.255.255,
>      host=192.168.1.1, domain=, nis-domain=(none),
>      bootserver=255.255.255.255, rootserver=192.168.1.254, rootpath=
> dm9000 dm9000: eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
> VFS: Mounted root (nfs filesystem) on device 0:12.
> Freeing init memory: 128K
> nfs: server 192.168.1.254 not responding, still trying
> nfs: server 192.168.1.254 not responding, still trying
>

Answering my own post in the hope it can help others at a later time.

This is caused by the dm9000 ethernet on this board not liking the UDP 
rsize/wsize change that was made in kernel 2.6.38.  As is often if not 
always the case in Unix, there's more than one solution. :)

1. Change the boot params.  "nfsroot=192.168.1.254:/NFSRoot,proto=tcp" 
worked fine, but this change would need to be made on every box/board.

2. Hack the kernel. :)  In file fs/nfs/nfsroot.c, find

     #define NFS_DEF_OPTIONS    "udp"

and change it to

     #define NFS_DEF_OPTIONS    "vers=2,udp,rsize=4096,wsize=4096"

-- 
Ron McDowell
San Antonio TX




More information about the Clfs-support mailing list