From: Damien Le Moal <dlemoal@kernel.org>
To: Bart Van Assche <bvanassche@acm.org>, Jens Axboe <axboe@kernel.dk>
Cc: linux-block@vger.kernel.org, linux-scsi@vger.kernel.org,
"Martin K . Petersen" <martin.petersen@oracle.com>,
Christoph Hellwig <hch@lst.de>, Ming Lei <ming.lei@redhat.com>,
"James E.J. Bottomley" <jejb@linux.ibm.com>
Subject: Re: [PATCH v13 10/18] scsi: sd_zbc: Only require an I/O scheduler if needed
Date: Thu, 19 Oct 2023 09:26:25 +0900 [thread overview]
Message-ID: <88133920-cb0c-43ea-a735-dee63267ffc8@kernel.org> (raw)
In-Reply-To: <20231018175602.2148415-11-bvanassche@acm.org>
On 10/19/23 02:54, Bart Van Assche wrote:
> An I/O scheduler that serializes zoned writes is only needed if the SCSI
> LLD does not preserve the write order. Hence only set
> ELEVATOR_F_ZBD_SEQ_WRITE if the LLD does not preserve the write order.
>
> Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
> Cc: Martin K. Petersen <martin.petersen@oracle.com>
> Cc: Christoph Hellwig <hch@lst.de>
> Cc: Ming Lei <ming.lei@redhat.com>
> Signed-off-by: Bart Van Assche <bvanassche@acm.org>
> ---
> drivers/scsi/sd_zbc.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/sd_zbc.c b/drivers/scsi/sd_zbc.c
> index a25215507668..718b31bed878 100644
> --- a/drivers/scsi/sd_zbc.c
> +++ b/drivers/scsi/sd_zbc.c
> @@ -955,7 +955,9 @@ int sd_zbc_read_zones(struct scsi_disk *sdkp, u8 buf[SD_BUF_SIZE])
>
> /* The drive satisfies the kernel restrictions: set it up */
> blk_queue_flag_set(QUEUE_FLAG_ZONE_RESETALL, q);
> - blk_queue_required_elevator_features(q, ELEVATOR_F_ZBD_SEQ_WRITE);
> + if (!q->limits.driver_preserves_write_order)
Where is this limit introduced ? I do not see it anywhere in your patches. Did I
miss something ?
> + blk_queue_required_elevator_features(q,
> + ELEVATOR_F_ZBD_SEQ_WRITE);
> if (sdkp->zones_max_open == U32_MAX)
> disk_set_max_open_zones(disk, 0);
> else
--
Damien Le Moal
Western Digital Research
next prev parent reply other threads:[~2023-10-19 0:26 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-18 17:54 [PATCH v13 00/18] Improve write performance for zoned UFS devices Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 01/18] block: Introduce more member variables related to zone write locking Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 02/18] block: Only use write locking if necessary Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 03/18] block: Preserve the order of requeued zoned writes Bart Van Assche
2023-10-19 0:15 ` Damien Le Moal
2023-10-20 19:17 ` Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 04/18] block/mq-deadline: Only use zone locking if necessary Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 05/18] scsi: core: Introduce a mechanism for reordering requests in the error handler Bart Van Assche
2023-10-19 0:24 ` Damien Le Moal
2023-10-19 17:53 ` Bart Van Assche
2023-10-19 19:50 ` Bart Van Assche
2023-10-19 22:49 ` Damien Le Moal
2023-10-18 17:54 ` [PATCH v13 06/18] scsi: core: Add unit tests for scsi_call_prepare_resubmit() Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 07/18] scsi: sd: Sort commands by LBA before resubmitting Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 08/18] scsi: sd: Add a unit test for sd_cmp_sector() Bart Van Assche
2023-10-21 13:31 ` kernel test robot
2023-10-22 13:17 ` kernel test robot
2023-10-18 17:54 ` [PATCH v13 09/18] scsi: core: Retry unaligned zoned writes Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 10/18] scsi: sd_zbc: Only require an I/O scheduler if needed Bart Van Assche
2023-10-19 0:26 ` Damien Le Moal [this message]
2023-10-19 16:54 ` Bart Van Assche
2023-10-19 22:43 ` Damien Le Moal
2023-10-18 17:54 ` [PATCH v13 11/18] scsi: scsi_debug: Add the preserves_write_order module parameter Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 12/18] scsi: scsi_debug: Support injecting unaligned write errors Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 13/18] scsi: ufs: hisi: Rework the code that disables auto-hibernation Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 14/18] scsi: ufs: Rename ufshcd_auto_hibern8_enable() and make it static Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 15/18] scsi: ufs: Change the return type of ufshcd_auto_hibern8_update() Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 16/18] scsi: ufs: Simplify ufshcd_auto_hibern8_update() Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 17/18] scsi: ufs: Forbid auto-hibernation without I/O scheduler Bart Van Assche
2023-10-18 17:54 ` [PATCH v13 18/18] scsi: ufs: Inform the block layer about write ordering Bart Van Assche
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=88133920-cb0c-43ea-a735-dee63267ffc8@kernel.org \
--to=dlemoal@kernel.org \
--cc=axboe@kernel.dk \
--cc=bvanassche@acm.org \
--cc=hch@lst.de \
--cc=jejb@linux.ibm.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
--cc=ming.lei@redhat.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.