All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Kirby <sim@hostway.ca>
To: Bart Van Assche <bvanassche@acm.org>
Cc: Damien Le Moal <damien.lemoal@opensource.wdc.com>,
	linux-scsi@vger.kernel.org, linux-block@vger.kernel.org
Subject: Re: Unreliable disk detection order in 5.x
Date: Wed, 10 Nov 2021 17:01:06 -0800	[thread overview]
Message-ID: <20211111010106.GA27431@hostway.ca> (raw)
In-Reply-To: <ce4f925f-cbf9-9bbb-4bde-dd57059e3c84@acm.org>

On Sun, Nov 07, 2021 at 11:51:45AM -0800, Bart Van Assche wrote:

> On 11/6/21 19:24, Simon Kirby wrote:
> > This occurs regardless of the CONFIG_SCSI_SCAN_ASYNC setting, and
> > also with scsi_mod.scan=sync on vendor kernels. All of these disks
> > are coming from the same driver and card.
> > 
> > I understand that using UUIDs, by-id, etc., is an option to work
> > around this, but then we would have to push IDs for disks in every
> > server to our configuration management. It does not seem that this
> > change is really intentional.
> 
> SCSI disk detection is asynchronous on purpose since a long time. The most
> recent commit I know of that changed SCSI disk scanning
> behavior is commit f049cf1a7b67 ("scsi: sd: Rely on the driver core for
> asynchronous probing").
> 
> Please use one of the /dev/disk/by-*/* identifiers as Damien requested.

Hi Bart,

So, we're using DRBD on top of these, which means by-uuid is not
available; we can use only by-id and by-path. by-id is dependent on disk
models and serial numbers, and by-path is dependent on PCI bus details.
Both are going to be a good deal more work to maintain, since they're
both not just a simple enumeration.

I did try 5.14.17 with f049cf1a7b67 (and a065c0faacb1) reverted, and it
does indeed restore the behaviour where sd* order appears to be reliable.
Scan time (time until systemd starts) is within 4ms across 3 boots with
and without the revert, but this is just our particular case.

I don't fully understand the scan process here, but I can understand the
challenges in trying to parallelize it and still end up with a consistent
enumerated list.

I guess you would agree that removing sd* entirely would not be an option
because they've existed forever historically, but at the same time, the
only time they really "work" now are as symlink targets for by-*, and in
the case where only one disk exists at boot time. Do I have this right?

Simon-

  reply	other threads:[~2021-11-11  1:01 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-05  6:46 Unreliable disk detection order in 5.x Simon Kirby
2021-11-05  7:45 ` Damien Le Moal
2021-11-07  2:24   ` Simon Kirby
2021-11-07 19:51     ` Bart Van Assche
2021-11-11  1:01       ` Simon Kirby [this message]
2021-11-11  1:16         ` Damien Le Moal
2021-11-11  6:57         ` Hannes Reinecke
2021-11-12  0:11           ` Phillip Susi
2021-11-12  6:38             ` Hannes Reinecke

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=20211111010106.GA27431@hostway.ca \
    --to=sim@hostway.ca \
    --cc=bvanassche@acm.org \
    --cc=damien.lemoal@opensource.wdc.com \
    --cc=linux-block@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.