From: "Martin K. Petersen" <martin.petersen@oracle.com>
To: Damien Le Moal <damien.lemoal@wdc.com>
Cc: linux-scsi@vger.kernel.org,
"Martin K . Petersen" <martin.petersen@oracle.com>,
linux-block@vger.kernel.org, Jens Axboe <axboe@kernel.dk>,
Christoph Hellwig <hch@lst.de>,
Bart Van Assche <Bart.VanAssche@wdc.com>
Subject: Re: [PATCH V7 5/8] block: deadline-iosched: Introduce zone locking support
Date: Wed, 08 Nov 2017 18:38:30 -0500 [thread overview]
Message-ID: <yq1a7zwxrwp.fsf@oracle.com> (raw)
In-Reply-To: <20171108081118.7632-6-damien.lemoal@wdc.com> (Damien Le Moal's message of "Wed, 8 Nov 2017 17:11:15 +0900")
Damien,
> Introduce zone write locking to avoid write request reordering with
> zoned block devices. This is achieved using a finer selection of the
> next request to dispatch:
> 1) Any non-write request is always allowed to proceed.
> 2) Any write to a conventional zone is always allowed to proceed.
> 3) For a write to a sequential zone, the zone lock is first checked.
> a) If the zone is not locked, the write is allowed to proceed after
> its target zone is locked.
> b) If the zone is locked, the write request is skipped and the next
> request in the dispatch queue tested (back to step 1).
>
> For a write request that has locked its target zone, the zone is
> unlocked either when the request completes and the method
> deadline_request_completed() is called, or when the request is requeued
> using the method deadline_add_request().
>
> Requests targeting a locked zone are always left in the scheduler queue
> to preserve the initial write order. If no write request can be
> dispatched, allow reads to be dispatched even if the write batch is not
> done.
>
> If the device used is not a zoned block device, or if zoned block device
> support is disabled, this patch does not modify deadline behavior.
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
--
Martin K. Petersen Oracle Linux Engineering
next prev parent reply other threads:[~2017-11-08 23:38 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-08 8:11 [PATCH V7 0/8] blk-mq support for ZBC disks Damien Le Moal
2017-11-08 8:11 ` [PATCH V7 1/8] block: introduce zoned block devices zone write locking Damien Le Moal
2017-11-08 23:33 ` Martin K. Petersen
2017-11-08 8:11 ` [PATCH V7 2/8] blokc: mq-deadline: Introduce dispatch helpers Damien Le Moal
2017-11-08 18:23 ` Christoph Hellwig
2017-11-08 23:34 ` Martin K. Petersen
2017-11-08 8:11 ` [PATCH V7 3/8] block: mq-deadline: Introduce zone locking support Damien Le Moal
2017-11-08 18:24 ` Christoph Hellwig
2017-11-08 23:36 ` Martin K. Petersen
2017-11-08 8:11 ` [PATCH V7 4/8] block: deadline-iosched: Introduce dispatch helpers Damien Le Moal
2017-11-08 18:24 ` Christoph Hellwig
2017-11-08 23:37 ` Martin K. Petersen
2017-11-08 8:11 ` [PATCH V7 5/8] block: deadline-iosched: Introduce zone locking support Damien Le Moal
2017-11-08 18:24 ` Christoph Hellwig
2017-11-08 23:38 ` Martin K. Petersen [this message]
2017-11-08 8:11 ` [PATCH V7 6/8] scsi: sd_zbc: Initialize device request queue zoned data Damien Le Moal
2017-11-08 18:25 ` Christoph Hellwig
2017-11-08 23:41 ` Martin K. Petersen
2017-11-08 23:54 ` Damien Le Moal
2017-11-08 8:11 ` [PATCH V7 7/8] scsi: sd: Remove zone write locking Damien Le Moal
2017-11-08 18:26 ` Christoph Hellwig
2017-11-08 23:44 ` Martin K. Petersen
2017-11-08 8:11 ` [PATCH V7 8/8] scsi: sd_zbc: Fix zone information initialization Damien Le Moal
2017-11-08 18:26 ` Christoph Hellwig
2017-11-08 23:46 ` Martin K. Petersen
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=yq1a7zwxrwp.fsf@oracle.com \
--to=martin.petersen@oracle.com \
--cc=Bart.VanAssche@wdc.com \
--cc=axboe@kernel.dk \
--cc=damien.lemoal@wdc.com \
--cc=hch@lst.de \
--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.