From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: david@lang.hm
Cc: James Smart <James.Smart@Emulex.Com>,
Boaz Harrosh <bharrosh@panasas.com>,
linux-kernel <linux-kernel@vger.kernel.org>,
"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>
Subject: Re: deterministic scsi order with async scan
Date: Thu, 16 Jul 2009 14:56:10 -0500 [thread overview]
Message-ID: <1247774170.6606.305.camel@mulgrave.site> (raw)
In-Reply-To: <alpine.DEB.1.10.0907161245470.9159@asgard>
On Thu, 2009-07-16 at 12:48 -0700, david@lang.hm wrote:
> On Thu, 16 Jul 2009, James Bottomley wrote:
>
> > On Thu, 2009-07-16 at 11:43 -0700, david@lang.hm wrote:
> >> On Thu, 16 Jul 2009, James Smart wrote:
> >>
> >>> david@lang.hm wrote:
> >>>> On Thu, 16 Jul 2009, Boaz Harrosh wrote:
> >>>>
> >>>>
> >>>>> It is highly discouraged to setup any kind of system that depends
> >>>>> on device-names for block-devices. mounts have the mount by-label
> >>>>> or mount by-uuid. Any other subsystem should go by /dev/disk/by-id/*
> >>>>> slinks to find a persistent raw block-device. the id is generated
> >>>>> from characteristics inside the disk itself so it will be the same
> >>>>> no matter what host connection or bus it is connected too (almost).
> >>>>>
> >>>>> This is because even if the boot order is consistent, the device-name
> >>>>> is so volatile in the life-span of a system. Did I boot with a removable
> >>>>> USB inserted. that camera or printer was on or off, disk was connected
> >>>>> to the other port. Any such change will break things and give you a very
> >>>>> poor user experience.
> >>>>>
> >>>>
> >>>> for a laptop you areprobably correct, but for a server or embedded system
> >>>> that doesn't have it's hardware changing all the time you are not correct.
> >>>>
> >>>> especially on a system with lots of drives, why should I have to create an
> >>>> initrd that goes and searches dozens or hundreds of drives to find out
> >>>> which one to boot from?
> >>>>
> >>> Boaz is correct. Many enterprise SCSI subsystems (FC, SAS) do not have hard
> >>> transport addresses for each device like Parallel SCSI used to. Thus, any
> >>> difference in order of appearance of the devices (power-up ordering, FC ALPA
> >>> assignment based on who's loop master, order that switch reports them, is an
> >>> array in a failover mode with 1 controller non-existent), or if LUN
> >>> configuration on an array changes, or as a drive may fail (especially with
> >>> hundreds), there's no guarantee you will see the same thing in the same order
> >>> w/o name binding. Same thing is true if one of those adapters fails or is
> >>> swapped out.
> >>
> >> yes, but does your system change the order of your internal direct
> >> attached drives with your FC/SAN drives?
> >
> > Certainly, it can. The way BIOS booting gets around this is either to
> > use some type of physical indicator (like phy number for SAS) to find C:
> > or to use a persistent ID mapping scheme (which is pretty much
> > equivalent to our /dev/disk/by-id/ udev one).
>
> so if I don't use udev but do want the async detection my only option to
> have it boot from card 1 instead of card 2 is to just keep rebooting the
> machine until it guesses right?
Well, for multiple cards that's effectively true with or without async
scanning ... the kernel doesn't know how you've enabled the bios scans
on the cards, so it takes first bus discovery order, so your boot drive
can always end up as /dev/sdb etc.
In theory, async probing shouldn't be racy, but we've likely got a
problem between async SCSI scanning and async sd driver attachment, so
when those are sorted out it should be no worse with than without.
James
next prev parent reply other threads:[~2009-07-16 19:56 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-16 1:09 deterministic scsi order with async scan david
2009-07-16 11:33 ` Boaz Harrosh
2009-07-16 17:22 ` david
2009-07-16 18:32 ` James Smart
2009-07-16 18:43 ` david
2009-07-16 19:39 ` James Bottomley
2009-07-16 19:48 ` david
2009-07-16 19:56 ` James Bottomley [this message]
2009-07-16 20:59 ` david
2009-07-16 19:58 ` Boaz Harrosh
2009-07-16 20:05 ` Matthew Wilcox
2009-07-16 19:53 ` Boaz Harrosh
2009-07-16 11:57 ` Matthew Wilcox
2009-07-16 17:23 ` david
2009-07-16 18:15 ` Matthew Wilcox
2009-07-16 18:31 ` david
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1247774170.6606.305.camel@mulgrave.site \
--to=james.bottomley@hansenpartnership.com \
--cc=James.Smart@Emulex.Com \
--cc=bharrosh@panasas.com \
--cc=david@lang.hm \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox