Results 1 to 8 of 8

Thread: Boot the Router over Network TFTP+NFS

  1. #1

    Question Boot the Router over Network TFTP+NFS

    I have try to boot my new wl500gx over the Network but it doesn't work.
    What have i do:
    1.Make a new kernel with NFS Client support and place the file vmlinux_nfs to TFTP Sever
    2.Set the kernel arguments:
    CFE> nvram set kernel_args "root=/dev/nfs nfsroot=192.168.1.6:/nfs_rootfs noinitrd init=/linuxrc console=ttyS0,115200"
    CFE> nvram commit
    I'm not sure it is valid for this kernel???
    3. Boot over TFTP Server
    CFE> boot -elf -tftp 192.168.1.6:vmlinux_nfs

    The Router load the kernel and the kernel panic :
    VFS: Cannot open root device "nfs" or 00:ff
    Please append a correct "root=" boot option
    Kernel panic: VFS: Unable to mount root fs on 00:ff


    I think that the kernel_args are wrong or my kernel have not the right device /dev/nfs for mount the nfs rootfs.But i don't now how to fix it?
    Have somebody try this on a Asus Router?
    Hope somebody can help me.
    Tomek
    Attached Files Attached Files

  2. #2
    I have found the line CONFIG_ROOT_NFS=y in /root/broadcom/src/linux/linux/.config
    and set to yes before it was not set.
    Now when i run make kernel & make vmlinux i got this messages:

    mipsel-linux-ld -G 0 -static -T arch/mips/ld.script arch/mips/kernel/head.o arch/mips/kernel/init_task.o init/main.o init/version.o init/do_mounts.o \
    --start-group \
    arch/mips/kernel/kernel.o arch/mips/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o arch/mips/math-emu/fpu_emulator.o \
    drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o drivers/media/media.o drivers/pci/driver.o drivers/mtd/mtdlink.o drivers/net/wireless/wireless_net.o \
    net/network.o \
    arch/mips/lib/lib.a /root/broadcom/src/linux/linux/lib/lib.a arch/mips/brcm-boards/generic/brcm.o arch/mips/brcm-boards/bcm947xx/bcm947xx.o \
    --end-group \
    -o vmlinux
    fs/fs.o: In function `root_nfs_name':
    fs/fs.o(.text.init+0x1780): undefined reference to `root_server_path'
    fs/fs.o(.text.init+0x1784): undefined reference to `root_server_path'
    fs/fs.o: In function `root_nfs_addr':
    fs/fs.o(.text.init+0x180c): undefined reference to `root_server_addr'
    fs/fs.o(.text.init+0x1810): undefined reference to `root_server_addr'
    fs/fs.o: In function `nfs_root_setup':
    fs/fs.o(.text.init+0x1958): undefined reference to `root_nfs_parse_addr'
    fs/fs.o(.text.init+0x196c): undefined reference to `root_server_addr'
    fs/fs.o(.text.init+0x1970): undefined reference to `root_server_addr'
    fs/fs.o: In function `root_nfs_getport':
    fs/fs.o(.text.init+0x1a34): undefined reference to `rpc_getport_external'
    make: *** [vmlinux] Error 1

    I think some patches are needed for the source but which one i don't know.
    Please Help

  3. #3
    Join Date
    Aug 2004
    Location
    Germany
    Posts
    377
    Hi

    I´ve not used nfs boot, bot for me this looks you have not selected all modules needet for nfs root, or you have to compile-in the server path what should be then again some setting in the config file ...

    You may look at the kernal config file of other nfs booting distributions on the net.

    greets
    My Stuff: WL-500g, Mapower H31x 10GB HD, Philips Webcam Vesta PRO, TerraTec Webcam PRO, USB Hub

  4. #4
    thanks for replay
    i have change some settings in the .config
    but now a get this error:

    mipsel-linux-ld -G 0 -static -T arch/mips/ld.script arch/mips/kernel/head.o arch/mips/kernel/init_task.o init/main.o init/version.o init/do_mounts.o \
    --start-group \
    arch/mips/kernel/kernel.o arch/mips/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o arch/mips/math-emu/fpu_emulator.o \
    drivers/char/char.o drivers/block/block.o drivers/misc/misc.o drivers/net/net.o drivers/media/media.o drivers/pci/driver.o drivers/mtd/mtdlink.o drivers/net/wireless/wireless_net.o drivers/usb/usbdrv.o \
    net/network.o \
    arch/mips/lib/lib.a /root/broadcom/src/linux/linux/lib/lib.a arch/mips/brcm-boards/generic/brcm.o arch/mips/brcm-boards/bcm947xx/bcm947xx.o \
    --end-group \
    -o vmlinux
    fs/fs.o: In function `root_nfs_getport':
    fs/fs.o(.text.init+0x1a34): undefined reference to `rpc_getport_external'
    make: *** [vmlinux] Error 1
    [root@xenon linux]#

    I have spend many hours and have no ideas more.
    Have somebody a idea what i have done wrong?
    Attached Files Attached Files

  5. #5
    HI,

    do you use "make menuconfig" ?
    If not, create a backup and try to configure it with "make menuconfig"!!!!
    Three month ago I had some errors with fat filesystems, too.
    (missing options in .config)

    Try it with:

    Code:
    #
    # Network File Systems
    #
    # CONFIG_CODA_FS is not set
    # CONFIG_INTERMEZZO_FS is not set
    CONFIG_NFS_FS=y
    CONFIG_NFS_V3=y
    CONFIG_ROOT_NFS=y
    CONFIG_SWAP_VIA_NFS=y
    CONFIG_NETSWAP=y
    # CONFIG_NFSD is not set
    # CONFIG_NFSD_V3 is not set
    # CONFIG_NFSD_TCP is not set
    CONFIG_SUNRPC=y
    CONFIG_LOCKD=y
    CONFIG_LOCKD_V4=y

  6. #6

    Thumbs up It works now

    thanks thanks respect
    the tip with "make menuconfig" was excellent it works now
    i have run make menuconfig but the mistake was that i have not run
    the make menuconfig after change the CONFIG_ROOT_NFS=y in .config

    here the solution:

    1. make menuconfig > enable under File systems > Network File Systems:
    <*> NFS file system support
    [*[ Provide NFSv3 client support
    save kernel configuration
    2. edit .config > change CONFIG_ROOT_NFS=y and CONFIG_IP_PNP=y
    3. make menuconfig check "File systems > Network File Systems >
    > Root file system on NFS" if is enabled then save kernel configuration
    4. make vmlinux
    and now setup the kernel parameter and boot kernel over network

    Code:
    CFE>nvram set kernel_args="root=/dev/nfs nfsroot=/nfs_rootfs nfsaddrs=192.168.1.31:192.168.1.4:192.168.1.4:255.255.255.0:asus3:eth0 noinitrd init=/linuxrc_my console=ttyS0,115200"
    CFE>nvram commit
    Code:
    CFE> boot -elf -tftp 192.168.1.4:vmlinux_asus_nfs_usb
    Loader:elf Filesys:tftp Dev:eth0 File:192.168.1.4:vmlinux_asus_nfs_usb Options:(null)
    Loading: TFTP Client.
    0x0/88 0x80001000/2326760 0x8023a000/368640 0x80294000/208912 Entry at 0x8023c040
    Closing network.
    Starting program at 0x8023c040
    cpu probe
    prom init
    cpu report
    CPU revision is: 00029007
    Primary instruction cache 8kb, linesize 16 bytes (2 ways)
    Primary data cache 4kb, linesize 16 bytes (2 ways)
    Linux version 2.4.20 (root@xenon) (gcc version 3.2.3 with Broadcom modifications) #63 Fri Jan 13 18:23:14 CET 2006
    Setting the PFC value as 0x15
    Determined physical RAM map:
     memory: 02000000 @ 00000000 (usable)
    On node 0 totalpages: 8192
    zone(0): 8192 pages.
    zone(1): 0 pages.
    zone(2): 0 pages.
    Kernel command line: root=/dev/nfs nfsroot=/nfs_rootfs nfsaddrs=192.168.1.31:192.168.1.4:192.168.1.4:255.255.255.0:asus3:et0CPU: BCM5365 rev 1 at 200 MHz
    Calibrating delay loop... 199.47 BogoMIPS
    Memory: 29560k/32768k available (2272k kernel code, 3208k reserved, 264k data, 80k init, 0k highmem)
    Dentry cache hash table entries: 4096 (order: 3, 32768 bytes)
    Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
    Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
    Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
    Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
    Checking for 'wait' instruction...  unavailable.
    POSIX conformance testing by UNIFIX
    PCI: Fixing up bus 0
    PCI: Fixing up bridge
    PCI: Fixing up bus 1
    Linux NET4.0 for Linux 2.4
    Based upon Swansea University Computer Society NET3.039
    Initializing RT netlink socket
    Starting kswapd
    Journalled Block Device driver loaded
    devfs: v1.12c (20020818) Richard Gooch (rgooch@atnf.csiro.au)
    devfs: boot_options: 0x1
    pty: 256 Unix98 ptys configured
    Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled
    ttyS00 at 0xb8000300 (irq = 3) is a 16550A
    ttyS01 at 0xb8000400 (irq = 0) is a 16550A
    eth0: Broadcom BCM47xx 10/100 Mbps Ethernet Controller 3.90.7.0
    SCSI subsystem driver Revision: 1.00
     Amd/Fujitsu Extended Query Table v1.1 at 0x0040
    number of CFI chips: 1
    Flash device: 0x400000 at 0x1c000000
    Physically mapped flash: Couldn't find valid ROM disk image
    Creating 4 MTD partitions on "Physically mapped flash":
    0x00000000-0x00040000 : "pmon"
    0x00040000-0x003f0000 : "linux"
    0x00000000-0x00400000 : "rootfs"
    0x003f0000-0x00400000 : "nvram"
    sflash: found no supported devices
    usb.c: registered new driver usbdevfs
    usb.c: registered new driver hub
    PCI: Enabling device 01:02.2 (0000 -> 0002)
    ehci_hcd 01:02.2: VIA Technologies, Inc. USB 2.0
    ehci_hcd 01:02.2: irq 2, pci mem c0000000
    usb.c: new USB bus registered, assigned bus number 1
    PCI: 01:02.2 PCI cache line size set incorrectly (0 bytes) by BIOS/FW, correcting to 32
    ehci_hcd 01:02.2: USB 2.0 enabled, EHCI 1.00, driver 2003-Dec-29/2.4
    hub.c: USB hub found
    hub.c: 4 ports detected
    host/uhci.c: USB Universal Host Controller Interface driver v1.1
    PCI: Enabling device 01:02.0 (0000 -> 0001)
    host/uhci.c: USB UHCI at I/O 0x100, IRQ 2
    usb.c: new USB bus registered, assigned bus number 2
    hub.c: USB hub found
    hub.c: 2 ports detected
    PCI: Enabling device 01:02.1 (0000 -> 0001)
    host/uhci.c: USB UHCI at I/O 0x120, IRQ 2
    usb.c: new USB bus registered, assigned bus number 3
    hub.c: USB hub found
    hub.c: 2 ports detected
    host/usb-ohci.c: USB OHCI at membase 0xb8003000, IRQ 6
    host/usb-ohci.c: usb-00:03.0, PCI device 14e4:4715 (Broadcom Corporation)
    usb.c: new USB bus registered, assigned bus number 4
    hub.c: USB hub found
    hub.c: 2 ports detected
    usb.c: registered new driver usblp
    printer.c: v0.13: USB Printer Device Class driver
    NET4: Linux TCP/IP 1.0 for NET4.0
    IP Protocols: ICMP, UDP, TCP
    IP: routing cache hash table of 512 buckets, 4Kbytes
    TCP: Hash tables configured (established 2048 bind 4096)
    IP-Config: Complete:
          device=eth0, addr=192.168.1.31, mask=255.255.255.0, gw=192.168.1.4,
         host=asus3, domain=, nis-domain=(none),
         bootserver=192.168.1.4, rootserver=192.168.1.4, rootpath=
    ip_conntrack version 2.1 (256 buckets, 2048 max) - 344 bytes per conntrack
    ip_tables: (C) 2000-2002 Netfilter core team
    ipt_time loading
    NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
    NET4: Ethernet Bridge 008 for NET4.0
    802.1Q VLAN Support v1.7 Ben Greear <greearb@candelatech.com>
    All bugs added by David S. Miller <davem@redhat.com>
    Looking up port of RPC 100003/2 on 192.168.1.4
    Looking up port of RPC 100005/1 on 192.168.1.4
    VFS: Mounted root (nfs filesystem).
    Mounted devfs on /dev
    Freeing unused kernel memory: 80k freed
    Algorithmics/MIPS FPU Emulator v1.5
    hub.c: new USB device 01:02.2-1, assigned address 2
    usb.c: USB device 2 (vend/prod 0xea0/0x2168) is not claimed by any active driver.
    PCI: Enabling device 01:03.0 (0004 -> 0006)
    eth1: Broadcom BCM4320 802.11 Wireless Controller 3.90.23.0
    vlan0: dev_set_promiscuity(master, 1)
    device eth0 entered promiscuous mode
    device vlan0 entered promiscuous mode
    eth2: No such device
    eth3: No such device
    device wds0.49153 entered promiscuous mode
    br0: port 2(wds0.49153) entering listening state
    br0: port 1(vlan0) entering listening state
    br0: port 2(wds0.49153) entering learning state
    br0: port 1(vlan0) entering learning state
    br0: port 2(wds0.49153) entering forwarding state
    br0: topology change detected, propagating
    br0: port 1(vlan0) entering forwarding state
    br0: topology change detected, propagating
    /etc/hosts: Read-only file system
    usb.c: unable to get major 180 for usb devices
    usb.c: registered new driver usbdevfs
    usb.c: deregistering driver usbdevfs
    usb.c: registered new driver hub
    usb-uhci.c: $Revision: 1.275 $ time 21:43:09 Apr 20 2005
    usb-uhci.c: High bandwidth mode enabled
    usb-uhci.c: v1.275:USB Universal Host Controller Interface driver
    usb.c: registered new driver usblp
    printer.c: v0.13: USB Printer Device Class driver
    usb.c: registered new driver audio
    audio.c: v1.0.0:USB Audio Class driver
    Linux video capture interface: v1.00
    SCSI subsystem driver Revision: 1.00
    devfs_mk_dir(scsi): using old entry in dir: 81073bc0 ""
    Initializing USB Mass Storage driver...
    usb.c: registered new driver usb-storage
    USB Mass Storage support registered.
    vlan1: Setting MAC address to  00 15 f2 6a e6 a0.
    VLAN (vlan1):  Underlying device (eth0) has same MAC, not checking promiscious mode.
    /proc/sys/net/ipv6/conf/all/forwarding: No such file or directory
    vlan1: add 01:00:5e:00:00:01 mcast address to master interface
    PCI devices found:
        FLASH memory: PCI device 14e4:0800 (Broadcom Corporation) (rev 1).
        Ethernet controller: PCI device 14e4:4713 (Broadcom Corporation) (rev 1).
        Network and computing encryption device: PCI device 14e4:4718 (Broadcom Corporation) (rev 1).
        USB Controller: PCI device 14e4:4715 (Broadcom Corporation) (rev 1).
        PCI bridge: PCI device 14e4:0804 (Broadcom Corporation) (rev 1).
        MIPS: PCI device 14e4:0816 (Broadcom Corporation) (rev 1).
        RAM memory: PCI device 14e4:080f (Broadcom Corporation) (rev 1).
        Host bridge: PCI device 14e4:5365 (Broadcom Corporation) (rev 0).
        Network controller: PCI device 14e4:4320 (Broadcom Corporation) (rev 3).
    echo for PaN ::: &&&PaN
    Code:
    / #
    / # df -k
    Filesystem           1k-blocks      Used Available Use% Mounted on
    /dev/root              5951776   3585516   2059044  64% /
    / # mount
    /dev/root on / type nfs (ro,v2,rsize=4096,wsize=4096,hard,udp,nolock,addr=192.168.1.4)
    none on /dev type devfs (rw)
    proc on /proc type proc (rw)
    ramfs on /tmp type ramfs (rw)
    usbfs on /proc/bus/usb type usbfs (rw)
    / #
    Last edited by Omega; 17-12-2011 at 14:23. Reason: fixed

  7. #7
    Yeah, thats great.

    Can you please post your working .config ?

  8. #8

    Thumbs up My config

    hi,
    my last test was with Olegs wl500g-1.9.2.7-6b Firmware
    Many thanks to Oleg for great work

    I also have change the Makefile in broadcom/src/wl500g-1.9.2.7-6b
    because the changed et driver from Oleg doesn't setup the interface up and the nfs mount hangs. I don't know why maybe Oleg knows
    I have use the kernel_my from the Makefile to make kernel.
    Attached Files Attached Files

Similar Threads

  1. Router met Modem router
    By arcostrop in forum Dutch Discussion - Nederlands
    Replies: 4
    Last Post: 29-03-2006, 08:54
  2. connecting to router administration
    By hejlemann in forum WL-500g Q&A
    Replies: 0
    Last Post: 21-12-2005, 21:16
  3. Darkstat network monitor possible?
    By Rob ter Veer in forum WL-500g Q&A
    Replies: 2
    Last Post: 21-10-2004, 19:34
  4. web interface loads only occasionally during boot
    By oferlaor in forum WL-500g Q&A
    Replies: 5
    Last Post: 18-10-2004, 10:48

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •