From: Damien Le Moal <Damien.LeMoal@wdc.com>
To: Jens Axboe <axboe@kernel.dk>,
"linux-block@vger.kernel.org" <linux-block@vger.kernel.org>,
"Martin K . Petersen" <martin.petersen@oracle.com>,
"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>
Subject: Re: [PATCH v5 0/5] Initial support for multi-actuator HDDs
Date: Thu, 26 Aug 2021 02:07:09 +0000 [thread overview]
Message-ID: <DM6PR04MB7081E6B85744B1F86AC5E7CBE7C79@DM6PR04MB7081.namprd04.prod.outlook.com> (raw)
In-Reply-To: 20210812075015.1090959-1-damien.lemoal@wdc.com
On 2021/08/12 16:50, Damien Le Moal wrote:
> Single LUN multi-actuator hard-disks are cappable to seek and execute
> multiple commands in parallel. This capability is exposed to the host
> using the Concurrent Positioning Ranges VPD page (SCSI) and Log (ATA).
> Each positioning range describes the contiguous set of LBAs that an
> actuator serves.
>
> This series adds support the scsi disk driver to retreive this
> information and advertize it to user space through sysfs. libata is also
> modified to handle ATA drives.
>
> The first patch adds the block layer plumbing to expose concurrent
> sector ranges of the device through sysfs as a sub-directory of the
> device sysfs queue directory. Patch 2 and 3 add support to sd and
> libata. Finally patch 4 documents the sysfs queue attributed changes.
> Patch 5 fixes a typo in the document file (strictly speaking, not
> related to this series).
>
> This series does not attempt in any way to optimize accesses to
> multi-actuator devices (e.g. block IO scheduler or filesystems). This
> initial support only exposes the actuators information to user space
> through sysfs.
Jens,
Re-ping ? Anything against this series ? Can we get it queued for 5.15 ?
>
> Changes from v4:
> * Fixed kdoc comment function name mismatch for disk_register_cranges()
> in patch 1
>
> Changes from v3:
> * Modified patch 1:
> - Prefix functions that take a struct gendisk as argument with
> "disk_". Modified patch 2 accordingly.
> - Added a functional release operation for struct blk_cranges kobj to
> ensure that this structure is freed only after all references to it
> are released, including kobject_del() execution for all crange sysfs
> entries.
> * Added patch 5 to separate the typo fix from the crange documentation
> addition.
> * Added reviewed-by tags
>
> Changes from v2:
> * Update patch 1 to fix a compilation warning for a potential NULL
> pointer dereference of the cr argument of blk_queue_set_cranges().
> Warning reported by the kernel test robot <lkp@intel.com>).
>
> Changes from v1:
> * Moved libata-scsi hunk from patch 1 to patch 3 where it belongs
> * Fixed unintialized variable in patch 2
> Reported-by: kernel test robot <lkp@intel.com>
> Reported-by: Dan Carpenter <dan.carpenter@oracle.com
> * Changed patch 3 adding struct ata_cpr_log to contain both the number
> of concurrent ranges and the array of concurrent ranges.
> * Added a note in the documentation (patch 4) about the unit used for
> the concurrent ranges attributes.
>
> Damien Le Moal (5):
> block: Add concurrent positioning ranges support
> scsi: sd: add concurrent positioning ranges support
> libata: support concurrent positioning ranges log
> doc: document sysfs queue/cranges attributes
> doc: Fix typo in request queue sysfs documentation
>
> Documentation/block/queue-sysfs.rst | 30 ++-
> block/Makefile | 2 +-
> block/blk-cranges.c | 310 ++++++++++++++++++++++++++++
> block/blk-sysfs.c | 26 ++-
> block/blk.h | 4 +
> drivers/ata/libata-core.c | 52 +++++
> drivers/ata/libata-scsi.c | 48 ++++-
> drivers/scsi/sd.c | 81 ++++++++
> drivers/scsi/sd.h | 1 +
> include/linux/ata.h | 1 +
> include/linux/blkdev.h | 29 +++
> include/linux/libata.h | 15 ++
> 12 files changed, 580 insertions(+), 19 deletions(-)
> create mode 100644 block/blk-cranges.c
>
--
Damien Le Moal
Western Digital Research
next prev parent reply other threads:[~2021-08-26 2:07 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-12 7:50 [PATCH v5 0/5] Initial support for multi-actuator HDDs Damien Le Moal
2021-08-12 7:50 ` [PATCH v5 1/5] block: Add concurrent positioning ranges support Damien Le Moal
2021-08-12 7:50 ` [PATCH v5 2/5] scsi: sd: add " Damien Le Moal
2021-08-12 7:50 ` [PATCH v5 3/5] libata: support concurrent positioning ranges log Damien Le Moal
2021-08-12 7:50 ` [PATCH v5 4/5] doc: document sysfs queue/cranges attributes Damien Le Moal
2021-08-12 7:50 ` [PATCH v5 5/5] doc: Fix typo in request queue sysfs documentation Damien Le Moal
2021-08-12 17:10 ` [PATCH v5 0/5] Initial support for multi-actuator HDDs Jens Axboe
2021-08-12 17:21 ` Martin K. Petersen
2021-08-12 17:25 ` Jens Axboe
2021-08-13 0:30 ` Damien Le Moal
2021-08-16 17:12 ` Martin K. Petersen
2021-08-17 4:06 ` Damien Le Moal
2021-08-16 17:10 ` Martin K. Petersen
2021-08-17 4:06 ` Damien Le Moal
2021-08-18 2:24 ` Martin K. Petersen
2021-08-18 2:45 ` Damien Le Moal
2021-08-23 1:27 ` Damien Le Moal
2021-08-26 2:07 ` Damien Le Moal [this message]
2021-08-26 2:41 ` Martin K. Petersen
2021-08-26 3:09 ` Damien Le Moal
2021-08-26 3:43 ` Martin K. Petersen
2021-08-26 3:50 ` Damien Le Moal
2021-08-26 6:28 ` Hannes Reinecke
2021-08-27 3:03 ` Martin K. Petersen
2021-08-27 3:11 ` Damien Le Moal
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=DM6PR04MB7081E6B85744B1F86AC5E7CBE7C79@DM6PR04MB7081.namprd04.prod.outlook.com \
--to=damien.lemoal@wdc.com \
--cc=axboe@kernel.dk \
--cc=linux-block@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).