1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

What is CAM_BOOT_DELAY in RELENG_9?

Discussion in 'Embedded' started by rusma, Mar 30, 2012.

  1. rusma

    rusma New Member

    Messages:
    87
    Likes Received:
    0
    I am in the process of doing a source upgrade from RELENG_8 to RELENG_9 on my Sheevaplug. I have to have some kind of delay in the kernel for the root filesystem to be recognized because of the USB SATA enclosure being slow, up to now I have used
    Code:
    option CAM_BOOT_DELAY=4000
    but this option does not seem enough in RELENG_9 (kernel booting drops me into a mountroot shell, which is the same happening in RELENG_8 without CAM_BOOT_DELAY). I can post the kernel config if needed. There is already one other person on this forum experiencing this.

    I should mention that the option is not standard and is enabled by patching sys/conf/options and sys/cam/cam_xpt.c. I can supply the hyperlink to the FreeBSD mailing list thread if needed.

    I have tried addressing this in both freebsd-stable and freebsd-usb mailing lists this week since someone on the #bsdusb channel on the EFnet IRC network suggested I did.
     
  2. Sebulon

    Sebulon Member

    Messages:
    662
    Likes Received:
    2
    @rusma

    I can't give you a straight solution, but I can say that I have installed and running countless systems like this (boot/root on USB) on server HW varying high and low (HP, Dell, Fujitsu Supermicro etc) as well as desktop systems, home computers, just about anything short of the kitchen sink;) Versions used have been 8.0-RELEASE, 8-STABLE, 9.0-RELEASE, 9-STABLE, with varying results.

    Especially HP servers have been the most difficult, where some models just haven't worked at all. Also some not working at first and then changed to another USB-stick worked great, it's a little hit and miss in my opinion. But the times it hasn't worked it has been earlier just after BIOS POST, when BTX is supposed to kick in. But after initial boot, when it has reached mountroot, with:

    /boot/loader.conf
    Code:
    kern.cam.boot_delay=10000
    It has always been able to continue. One thing you can try is just to change USB-port to an "earlier" one, if possible? The ones directly on the MB .e.g.

    /Sebulon