NFS Root with Raspberry Pi (nfs_diskless: no interface)

Daniel Braniss danny at cs.huji.ac.il
Thu Sep 24 11:29:01 UTC 2015


> On 23 Sep 2015, at 20:44, Randy Westlund <rwestlun at gmail.com> wrote:
> 
> On Wed, Sep 23, 2015 at 11:54:43AM +0300, Daniel Braniss wrote:
>> ok, thought it was too easy. Can you send me more info so that i can reproduce it here?
>> specially the ubldr stuff?
>> 
>> ah! try if_smsc_load=YES
>> 
>> danny
> 
> Okay, that's definitely the correct driver.  Looks like the pi uses a
> SMSC LAN9514 ethernet module.  But I see the same output regardless of
> whether that's in loader.conf or not.  The kernel seems to be finding
> smsc0 just fine.  It just hasn't created the interface yet.

i’ll try this here tomorrow, but in the meantime some ideas:
did you compile the kernel with option BOOTP_NFSV3?


> 
>> ugen0.1: <DWCOTG> at usbus0
>> uhub0: <DWCOTG OTG Root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
>> mmcsd0: 4GB <SDHC SU04G 8.0 SN 001FC92A MFG 12/2011 by 3 SD> at mmc0 41.6MHz/4bit/65535-block
>> nfs_diskless: no interface
>> Root mount waiting for: usbus0
>> uhub0: 1 port with 1 removable, self powered
>> ugen0.2: <vendor 0x0424> at usbus0
>> uhub1: <vendor 0x0424 product 0x9512, class 9/0, rev 2.00/2.00, addr 2> on usbus0
>> uhub1: MTT enabled
>> Root mount waiting for: usbus0
>> uhub1: 3 ports with 2 removable, self powered
>> Root mount waiting for: usbus0
>> ugen0.3: <vendor 0x0424> at usbus0
>> smsc0: <vendor 0x0424 product 0xec00, rev 2.00/2.00, addr 3> on usbus0
>> Trying to mount root from nfs:192.168.1.254:/usr/raspi_root [rw]...
>> nfs_diskless: no interface
>> Mounting from nfs:192.168.1.254:/usr/raspi_root failed with error -1.
>> 
>> Loader variables:
>>  vfs.root.mountfrom=nfs:192.168.1.254:/usr/raspi_root
>>  vfs.root.mountfrom.options=rw
> 

> Here's the fstab that the pi is using:
> 
>> cat /usr/raspi_root/etc/fstab
>> 192.168.1.254:/usr/raspi_root / nfs rw 0 0
> 
> Here's dhcp.conf on my router:
> 
>> $ cat /etc/dhcpd.conf
>> authoritative;
>> option domain-name-servers 192.168.1.1;
>> 
>> subnet 192.168.1.0 netmask 255.255.255.0 {
>>    option routers 192.168.1.1;
>>    range 192.168.1.2 192.168.1.150;
>>    next-server 192.168.1.254;
>>    option root-path "/usr/raspi_root";
>> }
> 
> Here's what ubldr sees before it loads the kernel over NFS:
> 
>> loader> show
>> LINES=24
>> autoboot_delay=10
>> boot.netif.gateway=0.0.0.0
>> boot.netif.hwaddr=b8:27:eb:28:a4:f8
>> boot.netif.ip=192.168.1.33
>> boot.netif.netmask=255.255.255.0
>> boot.nfsroot.nfshandle=X298684cadeaf78ee0a000400000000006ed938000000000000000000X
>> boot.nfsroot.nfshandlelen=28
>> boot.nfsroot.path=/usr/raspi_root
>> boot.nfsroot.server=192.168.1.254
>> bootfile=kernel
>> console=uboot
>> currdev=net0:
>> interpret=OK
>> kernel=kernel
>> kernelname=/boot/kernel/kernel
>> loaddev=net0:
>> loader_conf_files=/boot/loader.conf /boot/loader.conf.local
>> module_path=/boot/kernel;/boot/kernel;/boot/modules;/boot/dtb
>> prompt=loader>
>> twiddle_divisor=1
> 
> The files I'm using are all taken from one of these two images (same
> result with both):
> 
> FreeBSD-11.0-CURRENT-arm-armv6-RPI-B-20150826-r287169.img
> FreeBSD-10.2-STABLE-arm-armv6-RPI-B-20150917-r287929.img
> 
> Let me know if you need any other info, and thanks for spending time on
> this.
> 
> Randy



More information about the freebsd-arm mailing list