From: Christoph Hellwig <hch@infradead.org>
To: Damien Le Moal <dlemoal@kernel.org>
Cc: Christoph Hellwig <hch@infradead.org>,
Bart Van Assche <bvanassche@acm.org>,
Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>,
linux-block@vger.kernel.org
Subject: Re: [blktests] zbd/012: Test requeuing of zoned writes and queue freezing
Date: Wed, 27 Nov 2024 21:16:40 -0800 [thread overview]
Message-ID: <Z0f8uAFz5C60fung@infradead.org> (raw)
In-Reply-To: <a9ad27f7-b799-4322-ba05-944abfc0fa88@kernel.org>
On Thu, Nov 28, 2024 at 02:07:58PM +0900, Damien Le Moal wrote:
> A bad sector that gets remapped when overwritten is probably the most common,
> and maybe the only one. I need to check again, but I think that for this case,
> the scsi stack retries the reminder of a torn write so we probably do not even
> see it in practice, unless the sector/zone is really dead and cannot be
> recovered. But in that case, no matter what we do, that zone would not be
> writable anymore.
Yes, all retryable errors should be handled by the drivers. NVMe makes
this very clear with the DNR bit, while SCSI deals with this on a more
ad-hoc basis by looking at the sense codes. So by the time a write error
bubbles up to the file systems I do not expect the device to ever
recover from it. Maybe with some kind of dynamic depop in the future
where we drop just that zone, but otherwise we're very much done.
> Still trying to see if I can have some sort of synchronization between incoming
> writes and zone wp update to avoid relying on the user doing a report zones.
> That would ensure that emulated zone append always work like the real command.
I think we're much better off leaving that to the submitter, because
it better have a really good reason to resubmit a write to the zone.
We'll just need to properly document the assumptions.
next prev parent reply other threads:[~2024-11-28 5:16 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-25 21:10 [blktests] zbd/012: Test requeuing of zoned writes and queue freezing Bart Van Assche
2024-11-26 8:34 ` Damien Le Moal
2024-11-26 13:44 ` Bart Van Assche
2024-11-27 5:18 ` Damien Le Moal
2024-11-27 6:16 ` Christoph Hellwig
2024-11-27 6:21 ` Christoph Hellwig
2024-11-27 6:32 ` Damien Le Moal
2024-11-27 6:33 ` Christoph Hellwig
2024-11-27 6:43 ` Damien Le Moal
2024-11-27 6:45 ` Christoph Hellwig
2024-11-27 7:02 ` Damien Le Moal
2024-11-27 7:19 ` Christoph Hellwig
2024-11-27 8:17 ` Damien Le Moal
2024-11-27 8:58 ` Christoph Hellwig
2024-11-27 11:31 ` Damien Le Moal
2024-11-27 16:58 ` Christoph Hellwig
2024-11-27 23:18 ` Damien Le Moal
2024-11-27 23:36 ` Bart Van Assche
2024-11-27 23:43 ` Damien Le Moal
2024-11-28 3:20 ` Christoph Hellwig
2024-11-28 4:37 ` Damien Le Moal
2024-11-28 4:39 ` Christoph Hellwig
2024-11-28 4:52 ` Damien Le Moal
2024-11-28 5:00 ` Christoph Hellwig
2024-11-28 5:07 ` Damien Le Moal
2024-11-28 5:16 ` Christoph Hellwig [this message]
2024-11-28 5:19 ` Damien Le Moal
2024-11-28 5:21 ` Christoph Hellwig
2024-11-28 5:27 ` Damien Le Moal
2024-11-27 17:10 ` Bart Van Assche
2024-11-27 23:11 ` Damien Le Moal
2024-11-26 11:26 ` Damien Le Moal
2024-11-26 12:49 ` Christoph Hellwig
2024-11-27 2:28 ` Damien Le Moal
2024-11-28 4:35 ` Shinichiro Kawasaki
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=Z0f8uAFz5C60fung@infradead.org \
--to=hch@infradead.org \
--cc=bvanassche@acm.org \
--cc=dlemoal@kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=shinichiro.kawasaki@wdc.com \
/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.