From: "Martin K. Petersen" <martin.petersen@oracle.com>
To: Brian Bunker <brian@purestorage.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>,
linux-scsi@vger.kernel.org
Subject: Re: The PQ=1 saga
Date: Tue, 24 Jan 2023 23:04:10 -0500 [thread overview]
Message-ID: <yq1a627l4gn.fsf@ca-mkp.ca.oracle.com> (raw)
In-Reply-To: <CB441742-2C22-41A4-95A3-10D251C31F5B@purestorage.com> (Brian Bunker's message of "Tue, 24 Jan 2023 17:02:16 -0800")
Brian,
> For a completely separate reason I would like to see PQ=1 expose the
> sd device.
The host RAID controller case we could probably cover without relying on
PQ=1 at all (we kind-of already do). But there are also storage arrays
out there that rely on PQ=1 to inhibit devices being claimed.
Historically they did this because some other operating systems couldn't
handle a processor device type. So I suspect that keying off of TPGS
alone is probably not sufficient to determine whether PQ=1 should cause
us to attach a ULD or not in your scenario.
> ALUA state transitions from unavailable back to another state does not
> work depending on what state devices are in when they are initially
> discovered. In the ALUA unavailable state the peripheral qualifier of
> the device should also be set to 001b.
Yep, an unfortunate wrinkle in the spec (although it makes sense).
> This hole makes the unavailable ALUA state unattractive. Allowing the
> peripheral qualifier set to 001b to still create an sd device on
> discovery corrects this hole.
Does your implementation actually support READ CAPACITY etc. in
unavailable state? Otherwise we'd end up with zero-length, read-only
block devices with no logical block size. And we've been down that path
before and that is no fun.
I suspect it would be better to trigger a re-probe of the device when
transitioning out of unavailable state. Most of the logic is already in
place and we reread VPD pages, etc. I believe there are only a few
pieces missing from being able to do a full in-place update.
--
Martin K. Petersen Oracle Linux Engineering
next prev parent reply other threads:[~2023-01-25 4:05 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-25 0:01 The PQ=1 saga Martin K. Petersen
2023-01-25 1:02 ` Brian Bunker
2023-01-25 4:04 ` Martin K. Petersen [this message]
2023-01-25 19:56 ` Brian Bunker
2023-01-25 20:36 ` Bart Van Assche
2023-01-25 1:41 ` Bart Van Assche
2023-01-25 8:33 ` Martin Wilck
2023-01-26 9:01 ` Hannes Reinecke
2023-01-27 19:57 ` Brian Bunker
2023-01-27 20:43 ` Bart Van Assche
2023-01-27 21:33 ` Brian Bunker
2023-01-30 13:35 ` Hannes Reinecke
2023-01-31 21:00 ` Brian Bunker
2025-11-20 16:46 ` Brian Bunker
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=yq1a627l4gn.fsf@ca-mkp.ca.oracle.com \
--to=martin.petersen@oracle.com \
--cc=brian@purestorage.com \
--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