Re: Booting from usb hard disk

From: Paul B. Mahol <onemda_at_gmail.com>
Date: Mon, 30 Mar 2009 19:34:29 +0100
On 3/30/09, Andrew Thompson <thompsa_at_freebsd.org> wrote:
> On Mon, Mar 30, 2009 at 06:03:33PM +0100, Paul B. Mahol wrote:
>> On 3/30/09, Andrew Thompson <thompsa_at_freebsd.org> wrote:
>> > On Mon, Mar 30, 2009 at 04:04:17PM +0100, Paul B. Mahol wrote:
>> >> On 3/30/09, Andrew Thompson <thompsa_at_freebsd.org> wrote:
>> >> > On Tue, Mar 24, 2009 at 03:49:32AM -0500, Robert Noland wrote:
>> >> >> On Mon, 2009-03-23 at 19:40 -0300, Nenhum_de_Nos wrote:
>> >> >> >
>> >> >> > I had problem a while ago with via mini itx hardware, that was
>> >> >> > quite
>> >> >> > close. If I try boot from usb (installed in usb hdd), I get to the
>> >> >> > point
>> >> >> > of loader not finding my disk.
>> >> >> >
>> >> >> > I then used a small flash disk attached to the ata (44 pin ide)
>> >> >> > channel
>> >> >> > and formatted /boot in there. this way I get to the point of mount
>> >> >> > root
>> >> >> > you said, and da0 not being alive soon enough to mount root. list
>> >> >> > disks
>> >> >> > also couldn't find da0 though.
>> >> >> >
>> >> >> > I tried current from that time, and no good.
>> >> >> >
>> >> >> > if this is solved, I'll be happy to try whatever patch to current.
>> >> >> > (as
>> >> >> > long as I can install it from another box/or its ata channel, as
>> >> >> > it
>> >> >> > can't
>> >> >> > boot vanilla 7.1R)
>> >> >>
>> >> >> So, my solution was to set kern.cam.scsi_delay=10000
>> >> >> in /boot/loader.conf
>> >> >
>> >> > The following patch should work. It creates interleaving root hold
>> >> > tokens from the CAM probe to disk_create and geom providor tasting.
>> >> > I had to add a malloc type flag as sleeping isnt allowed at the point
>> >> > I
>> >> > added the token alloc in CAM.
>> >> >
>> >> > http://people.freebsd.org/~thompsa/root_wait.diff
>> >>
>> >> Hmm, this is supposed to fix issue when trying to boot from usb disk
>> >> with UP kernel?
>> >
>> > This is to address the issue where the usb disk hasnt been attached by
>> > the time the root filesystem is mounted. ie, you are booting from usb.
>> >
>> > If your problem is different then please say.
>>
>> On SMP booting from usb works (kern.cam.scsi_delay=2000), da0 will appear
>> after user is asked to enter root mount point, and pressing ? will show
>> ufs:da0s1a. On UP it doesnt work, ufs:da0s1a is not available.
>> I thought it may be related to scsi_delay but increasing it was not
>> solution.
>
> Well the patch should (hopefully) fix this and you will no longer need
> to set the scsi delay. Please test! :)

With 2000 it works for both UP & SMP but setting scsi_delay to 50000 caused
text to scroll forever, waiting for CAM.

Could scsi_delay get removed?

-- 
Paul
Received on Mon Mar 30 2009 - 16:34:32 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:45 UTC