How to shorten the reboot time (71 lost packets) of a NanoBSD-2.1-amd64 install?



  • I have not very old hardware, a 2013 Intel Nuc with i3-3217U processor, two Apple USB fast ethernet interface, and two Intel PRO/1000 nics. pfSense-2.1-RELEASE-4g-amd64-nanobsd_vga.img was installed on to a 4GB class 10 Kingston microSDHC device (USB interface) using Mac OS X. The dd command write speed with 1m buffer size on OSX was: 12,024,321 bytes/sec. Only 2 out of 4 interfaces are assigned (1x ALIX USB V4/dhcp4, 1x Intel PRO/1000 v4: fixed ip).

    The reboot time is long: using a 1 second interval ping command loses 71 second when rebooting.

    BIOS is changed to only display the F2 prompt to enter BIOS for only 2 seconds. Beastie is already disabled.

    What can be done to further shorten the pfSense 2.1 (re)boot time?

    dmesg output:

    Copyright (c) 1992-2012 The FreeBSD Project.
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
    	The Regents of the University of California. All rights reserved.
    FreeBSD is a registered trademark of The FreeBSD Foundation.
    FreeBSD 8.3-RELEASE-p11 #0: Wed Sep 11 20:12:27 EDT 2013
        root@snapshots-8_3-amd64.builders.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense_wrap_vga.8.amd64 amd64
    Timecounter "i8254" frequency 1193182 Hz quality 0
    CPU: Intel(R) Core(TM) i3-3217U CPU @ 1.80GHz (1797.69-MHz K8-class CPU)
      Origin = "GenuineIntel"  Id = 0x306a9  Family = 6  Model = 3a  Stepping = 9
      Features=0xbfebfbff <fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,htt,tm,pbe>Features2=0x35bae3bf <sse3,pclmulqdq,dtes64,mon,ds_cpl,vmx,est,tm2,ssse3,cx16,xtpr,pdcm,pcid,sse4.1,sse4.2,x2apic,popcnt,tscdlt,xsave,avx,f16c>AMD Features=0x28100800 <syscall,nx,rdtscp,lm>AMD Features2=0x1 <lahf>TSC: P-state invariant
    real memory  = 2147483648 (2048 MB)
    avail memory = 1915498496 (1826 MB)
    ACPI APIC Table: <intel d33217ck="">
    FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
    FreeBSD/SMP: 1 package(s) x 2 core(s) x 2 SMT threads
     cpu0 (BSP): APIC ID:  0
     cpu1 (AP): APIC ID:  1
     cpu2 (AP): APIC ID:  2
     cpu3 (AP): APIC ID:  3
    ACPI Warning: FADT (revision 5) is longer than ACPI 2.0 version, truncating length 268 to 244 (20101013/tbfadt-392)
    ioapic0 <version 2.0=""> irqs 0-23 on motherboard
    wlan: mac acl policy registered
    kbd1 at kbdmux0
    cryptosoft0: <software crypto=""> on motherboard
    padlock0: No ACE support.
    acpi0: <intel> on motherboard
    acpi0: [ITHREAD]
    acpi0: Power Button (fixed)
    Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
    acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
    cpu0: <acpi cpu=""> on acpi0
    cpu1: <acpi cpu=""> on acpi0
    cpu2: <acpi cpu=""> on acpi0
    cpu3: <acpi cpu=""> on acpi0
    pcib0: <acpi host-pci="" bridge=""> port 0xcf8-0xcff on acpi0
    pci0: <acpi pci="" bus=""> on pcib0
    vgapci0: <vga-compatible display=""> port 0xf000-0xf03f mem 0xf7800000-0xf7bfffff,0xe0000000-0xefffffff irq 16 at device 2.0 on pci0
    pci0: <simple comms=""> at device 22.0 (no driver attached)
    ehci0: <ehci (generic)="" usb="" 2.0="" controller=""> mem 0xf7f08000-0xf7f083ff irq 16 at device 26.0 on pci0
    ehci0: [ITHREAD]
    usbus0: EHCI version 1.0
    usbus0: <ehci (generic)="" usb="" 2.0="" controller=""> on ehci0
    pci0: <multimedia, hda=""> at device 27.0 (no driver attached)
    pcib1: <acpi pci-pci="" bridge=""> irq 16 at device 28.0 on pci0
    pci1: <acpi pci="" bus=""> on pcib1
    pcib2: <acpi pci-pci="" bridge=""> irq 17 at device 28.1 on pci0
    pci2: <acpi pci="" bus=""> on pcib2
    igb0: <intel(r) 1000="" pro="" network="" connection="" version="" -="" 2.3.1=""> port 0xe020-0xe03f mem 0xf7d80000-0xf7dfffff,0xf7e04000-0xf7e07fff irq 17 at device 0.0 on pci2
    igb0: Using MSIX interrupts with 5 vectors
    igb0: [ITHREAD]
    igb0: Bound queue 0 to cpu 0
    igb0: [ITHREAD]
    igb0: Bound queue 1 to cpu 1
    igb0: [ITHREAD]
    igb0: Bound queue 2 to cpu 2
    igb0: [ITHREAD]
    igb0: Bound queue 3 to cpu 3
    igb0: [ITHREAD]
    igb1: <intel(r) 1000="" pro="" network="" connection="" version="" -="" 2.3.1=""> port 0xe000-0xe01f mem 0xf7c80000-0xf7cfffff,0xf7e00000-0xf7e03fff irq 18 at device 0.1 on pci2
    igb1: Using MSIX interrupts with 5 vectors
    igb1: [ITHREAD]
    igb1: Bound queue 0 to cpu 0
    igb1: [ITHREAD]
    igb1: Bound queue 1 to cpu 1
    igb1: [ITHREAD]
    igb1: Bound queue 2 to cpu 2
    igb1: [ITHREAD]
    igb1: Bound queue 3 to cpu 3
    igb1: [ITHREAD]
    pcib3: <acpi pci-pci="" bridge=""> irq 16 at device 28.4 on pci0
    pci3: <acpi pci="" bus=""> on pcib3
    ehci1: <ehci (generic)="" usb="" 2.0="" controller=""> mem 0xf7f07000-0xf7f073ff irq 23 at device 29.0 on pci0
    ehci1: [ITHREAD]
    usbus1: EHCI version 1.0
    usbus1: <ehci (generic)="" usb="" 2.0="" controller=""> on ehci1
    isab0: <pci-isa bridge=""> at device 31.0 on pci0
    isa0: <isa bus=""> on isab0
    atapci0: <intel panther="" point="" sata300="" controller=""> port 0xf0b0-0xf0b7,0xf0a0-0xf0a3,0xf090-0xf097,0xf080-0xf083,0xf060-0xf07f mem 0xf7f06000-0xf7f067ff irq 19 at device 31.2 on pci0
    atapci0: [ITHREAD]
    atapci0: AHCI called from vendor specific driver
    atapci0: AHCI v1.30 controller with 6 6Gbps ports, PM not supported
    pci0: <serial bus,="" smbus=""> at device 31.3 (no driver attached)
    acpi_button0: <power button=""> on acpi0
    acpi_tz0: <thermal zone=""> on acpi0
    acpi_tz1: <thermal zone=""> on acpi0
    acpi_hpet0: <high precision="" event="" timer=""> iomem 0xfed00000-0xfed003ff on acpi0
    Timecounter "HPET" frequency 14318180 Hz quality 900
    atrtc0: <at realtime="" clock=""> port 0x70-0x77 irq 8 on acpi0
    atrtc0: Warning: Couldn't map I/O.
    orm0: <isa option="" roms=""> at iomem 0xc0000-0xcefff,0xcf000-0xcffff,0xd0000-0xd0fff on isa0
    atkbd: unable to set the command byte.
    sc0: <system console=""> at flags 0x100 on isa0
    sc0: VGA <16 virtual consoles, flags=0x300>
    vga0: <generic isa="" vga=""> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
    atkbdc0: <keyboard controller="" (i8042)=""> at port 0x60,0x64 on isa0
    atkbd0: <at keyboard=""> irq 1 on atkbdc0
    kbd0 at atkbd0
    atkbd0: [GIANT-LOCKED]
    atkbd0: [ITHREAD]
    ppc0: cannot reserve I/O port range
    acpi_perf0: <acpi cpu="" frequency="" control=""> on cpu0
    Timecounters tick every 10.000 msec
    IPsec: Initialized Security Association Processing.
    usbus0: 480Mbps High Speed USB v2.0
    usbus1: 480Mbps High Speed USB v2.0
    SMP: AP CPU #1 Launched!
    SMP: AP CPU #2 Launched!
    SMP: AP CPU #3 Launched!
    Ruogoetn 1m.o1u:n t< Iwnatietli>n ga tf ours:bu su1sb
    us1 usbus0
    uhub0: <intel 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr=""> on usbus1
    ugen0.1: <intel> at usbus0
    uhub1: <intel 1="" 9="" ehci="" root="" hub,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr=""> on usbus0
    uhub1: 2 ports with 2 removable, self powered
    uhub0: 2 ports with 2 removable, self powered
    Root mount waiting for: usbus1 usbus0
    ugen0.2: <vendor 0x8087=""> at usbus0
    uhub2: <vendor 2="" 9="" 0x8087="" product="" 0x0024,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr=""> on usbus0
    ugen1.2: <vendor 0x8087=""> at usbus1
    uhub3: <vendor 2="" 9="" 0x8087="" product="" 0x0024,="" class="" 0,="" rev="" 2.00="" 0.00,="" addr=""> on usbus1
    Root mount waiting for: usbus1 usbus0
    uhub2: 6 ports with 6 removable, self powered
    uhub3: 8 ports with 8 removable, self powered
    ugen1.3: <vendor 0x05ac=""> at usbus1
    axe0: <vendor 3="" 0x05ac="" product="" 0x1402,="" rev="" 2.00="" 0.01,="" addr=""> on usbus1
    Root mount waiting for: usbus1
    miibus0: <mii bus=""> on axe0
    ukphy0: <generic ieee="" 802.3u="" media="" interface=""> PHY 16 on miibus0
    ukphy0:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    ue0: <usb ethernet=""> on axe0
    ugen1.4: <vendor 0x05ac=""> at usbus1
    axe1: <vendor 4="" 0x05ac="" product="" 0x1402,="" rev="" 2.00="" 0.01,="" addr=""> on usbus1
    Root mount waiting for: usbus1
    miibus1: <mii bus=""> on axe1
    ukphy1: <generic ieee="" 802.3u="" media="" interface=""> PHY 16 on miibus1
    ukphy1:  none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    ue1: <usb ethernet=""> on axe1
    ugen1.5: <generic> at usbus1
    umass0: <generic 0="" 5="" flash="" card="" readerwriter,="" class="" 0,="" rev="" 2.00="" 1.00,="" addr=""> on usbus1
    da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
    da0: <generic sd="" mmc="" ms="" xd="" 1.07=""> Removable Direct Access SCSI-0 device 
    da0: 40.000MB/s transfers
    da0: 3796MB (7774208 512 byte sectors: 255H 63S/T 483C)
    da1 at umass-sim0 bus 0 scbus0 target 0 lun 1
    da1: <generic microsd="" m2="" 1.08=""> Removable Direct Access SCSI-0 device 
    da1: 40.000MB/s transfers
    da1: Attempt to query device size failed: NOT READY, Medium not present
    GEOM_PART: integrity check failed (da0, MBR)
    GEOM: da0s1: geometry does not match label (16h,63s != 255h,63s).
    GEOM: da0s2: geometry does not match label (16h,63s != 255h,63s).
    Trying to mount root from ufs:/dev/ufs/pfsense0
    ue0: link state changed to DOWN
    ue0: link state changed to UP
    pflog0: promiscuous mode enabled
    igb1: link state changed to UP
    pid 82884 (ntpd), uid 0: exited on signal 11</generic></generic></generic></generic></usb></generic></mii></vendor></vendor></usb></generic></mii></vendor></vendor></vendor></vendor></vendor></vendor></intel></intel></intel></acpi></at></keyboard></generic></system></isa></at></high></thermal></thermal></power></serial></intel></isa></pci-isa></ehci></ehci></acpi></acpi></intel(r)></intel(r)></acpi></acpi></acpi></acpi></multimedia,></ehci></ehci></simple></vga-compatible></acpi></acpi></acpi></acpi></acpi></acpi></intel></software></version></intel></lahf></syscall,nx,rdtscp,lm></sse3,pclmulqdq,dtes64,mon,ds_cpl,vmx,est,tm2,ssse3,cx16,xtpr,pdcm,pcid,sse4.1,sse4.2,x2apic,popcnt,tscdlt,xsave,avx,f16c></fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,dts,acpi,mmx,fxsr,sse,sse2,ss,htt,tm,pbe>
    

  • Netgate Administrator

    Reading from flash via USB is slow. You could boot from a small SSD instead, should speed things up.

    Steve



  • There is not SATA interface in this hardware, and the mSATA slot is filled with the NIC.

    Not waiting 12 seconds for F1 or F2 already saves 17%.



  • Finally found a half size mSATA SSD drive: SanDisk SSD U100 8GB mSATA mini 2.5'' SATA III MLC (450MB/s; 350MB/s), TRIM

    Article number/Product code/SKU: SDSA5FK-008G.

    This is still double the capacity (8GB) as the largest NanoBSD image (4GB).


  • Rebel Alliance Developer Netgate


  • Netgate Administrator

    In this case I believe the OP is using Nano-vga which already has DMA enabled (or did last time I checked). Worth checking though, it may be disabled in the bios for example.

    Steve


  • Rebel Alliance Developer Netgate

    Yeah, it does appear to have it enabled. Still worth checking. It would help for an mSATA but USB might actually be hurt by them.


Log in to reply