leak in blkdev_issue_zone_report failing to put_bio().
- Documented opt in blkdev_issue_zone_report.
- Moved include/uapi/linux/fs.h changes to patch 3
- Fixed commit message for first patch in series.
Shaun Tancheff (4):
Losing bits on request.cmd_flags
Add bio/request flags for using ZBC
the number of
zones in each report, but not critical.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
V2:
- Changed bi_rw to op_flags clarify sepeartion of bio op from flags.
- Fixed memory leak in blkdev_issue_zone_report failing to put_bio().
- Document
rloads the meaning of REQ_META to direct ZBC commands
to construct ZAC equivalent ATA pass through commands.
Note also that this approach expects the initiator to deal with the
little endian result due to bypassing the normal translation layers.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.co
-send-email-mchri...@redhat.com
Once Mike's patches are stablized this patch can be dropped.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
v2:
- Fixed commit message
block/blk-core.c | 17 ++---
block/blk-merge.c| 2 +-
block/bl
Add New ioctl types
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue an Zone Action: Open Zone command.
BLKCLOSEZONE - Issue an Zone Action: Close Zone command.
BLKRESETZONE - Issue an Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
the number of
zones in each report, but not critical.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
MAINTAINERS | 9 ++
block/blk-lib.c | 96 +
drivers/scsi/sd.c | 99 +-
drivers/scs
Add New ioctl types
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue an Zone Action: Open Zone command.
BLKCLOSEZONE - Issue an Zone Action: Close Zone command.
BLKRESETZONE - Issue an Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
"James E.J. Bottomley" <j...@linux.vnet.ibm.com>
Cc: "Martin K. Petersen" <martin.peter...@oracle.com>
Cc: Jeff Layton <jlay...@poochiereds.net>
Cc: "J. Bruce Fields" <bfie...@fieldses.org>
Shaun Tancheff (4):
Losing bits on request.cmd_f
SATA drives may support write same via SCT. This is useful
for setting the drive contents to a specific pattern (0's).
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
block/blk-core.c | 17 ++---
block/blk-merge.c| 2 +-
block/blk-mq.c
rloads the meaning of REQ_META to direct ZBC commands
to construct ZAC equivalent ATA pass through commands.
Note also that this approach expects the initiator to deal with the
little endian result due to bypassing the normal translation layers.
Signed-off-by: Shaun Tancheff <shaun.tanch...@se
On Mon, Jun 6, 2016 at 10:39 AM, Shaun Tancheff <sh...@tancheff.com> wrote:
>
> T10 ZBC and T13 ZAC specify operations for Zoned devices.
>
> To be able to access the zone information and open and close zones
> adding flags for the report zones command (REQ_REPORT_ZONES) and
SATA drives may support write same via SCT. This is useful
for setting the drive contents to a specific pattern (0's).
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
drivers/ata/libata-scsi.c | 31 +
drivers/scsi/sd.c
tersen" <martin.peter...@oracle.com>
Cc: Tejun Heo <t...@kernel.org>
Shaun Tancheff (1):
Add support for SCT Write Same
drivers/ata/libata-scsi.c | 32
drivers/scsi/sd.c | 21 +---
lable follow the SCT path
else fail with the current error (unmap is not set).
In this way if you device supports both TRIM and SCT then you can WRITE SAME
or TRIM.
> - Shouldn't we still translate discard command to TRIM? Maybe we
>need a check of the operation in the request structure..
the number of
zones in each report, but not critical.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
V3:
- Rebase on Mike Cristie's separate bio operations
- Update blkzoned_api.h to include report zones PARTIAL bit.
V2:
- Changed bi_rw to op_flags clarify sepeartion of
Add New ioctl types
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue an Zone Action: Open Zone command.
BLKCLOSEZONE - Issue an Zone Action: Close Zone command.
BLKRESETZONE - Issue an Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
of bio op from flags.
- Fixed memory leak in blkdev_issue_zone_report failing to put_bio().
- Documented opt in blkdev_issue_zone_report.
- Moved include/uapi/linux/fs.h changes to patch 3
- Fixed commit message for first patch in series.
Shaun Tancheff (3):
Add bio/request flags for using ZBC
rloads the meaning of REQ_META to direct ZBC commands
to construct ZAC equivalent ATA pass through commands.
Note also that this approach expects the initiator to deal with the
little endian result due to bypassing the normal translation layers.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.co
On Fri, Jun 10, 2016 at 2:19 AM, Hannes Reinecke <h...@suse.de> wrote:
> On 06/10/2016 09:10 AM, Shaun Tancheff wrote:
>> The current generation of HBA SAS adapters support connecting SATA
>> drives and perform SCSI<->ATA translations in hardware.
>> Unfortunate
the number of
zones in each report, but not critical.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
V3:
- Rebase on Mike Cristie's separate bio operations
- Update blkzoned_api.h to include report zones PARTIAL bit.
V2:
- Changed bi_rw to op_flags clarify sepeartion of
SATA drives may support write same via SCT. This is useful
for setting the drive contents to a specific pattern (0's).
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
v2:
- Remove fugly ata hacking from sd.c
---
drivers/ata/libata-scsi.c
On Wed, Jun 8, 2016 at 10:39 PM, Martin K. Petersen
<martin.peter...@oracle.com> wrote:
>
> >>>>> "Shaun" == Shaun Tancheff <sh...@tancheff.com> writes:
>
> Shaun,
>
> Shaun> SATA drives may support write same via SCT. This is useful for
&g
data by mapping discard operations to
reset write pointer operations. Conventional zones that do not support
reset write pointer can still honor the discard zeroes data by issuing
a write same over the zone.
v2:
- Remove fugly ata hacking from sd.c
Shaun Tancheff (1):
Add support for SCT Write
On Tue, Jun 21, 2016 at 9:43 PM, Martin K. Petersen
<martin.peter...@oracle.com> wrote:
>>>>>> "Shaun" == Shaun Tancheff <sh...@tancheff.com> writes:
>
> Shaun> SATA drives may support write same via SCT. This is useful for
> Shaun>
...@github.com:stancheff/linux.git
branch: v4.7-rc2+sct-write-same.v3
v3:
- Demux UNMAP/TRIM from WRITE SAME
- Add offset from scatterlist to page address.
v2:
- Remove fugly ata hacking from sd.c
Shaun Tancheff (1):
Add support for SCT Write Same
drivers/ata/libata-scsi.c | 80
but fail to zero blocks reliably. For example a
file-system or DM target could issue a write same w/o unmap followed
by an trim.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
v3:
- Demux UNMAP/TRIM from WRITE SAME
v2:
- Remove fugly ata hacking from sd.c
---
drivers/ata/
Add New ioctl types
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue an Zone Action: Open Zone command.
BLKCLOSEZONE - Issue an Zone Action: Close Zone command.
BLKRESETZONE - Issue an Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
for that operation.
Report zones currently defaults to reporting on all zones. It expected
that support for the zone option flag will piggy back on streamid
support. The report option flag is useful as it can reduce the number
of zones in each report, but not critical.
Signed-off-by: Shaun Tancheff
Add New ioctl types
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue an Zone Action: Open Zone command.
BLKCLOSEZONE - Issue an Zone Action: Close Zone command.
BLKRESETZONE - Issue an Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
().
- Documented opt in blkdev_issue_zone_report.
- Moved include/uapi/linux/fs.h changes to patch 3
- Fixed commit message for first patch in series.
Shaun Tancheff (2):
Add bio/request flags for using ZBC/ZAC commands
Add ioctl to issue ZBC/ZAC commands via block layer
MAINTAINERS
not implimented as there is no
current use case for that operation.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
MAINTAINERS | 9 ++
block/blk-lib.c | 125 ++
drivers/scsi/sd.c | 107 +++
d
Add New ioctl types
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue an Zone Action: Open Zone command.
BLKCLOSEZONE - Issue an Zone Action: Close Zone command.
BLKRESETZONE - Issue an Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
Add SCSI <-> ATA translation layer for ZBC commands:
- Open, Close, and Finish zones
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
drivers/ata/libata-scsi.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/ata/libata-scsi.c b/driver
XT pages */
> ATA_LOG_DIRECTORY = 0x0,
> ATA_LOG_SATA_NCQ= 0x10,
> diff --git a/include/trace/events/libata.h b/include/trace/events/libata.h
> index b966417..3032edc 100644
> --- a/include/trace/events/libata.h
> +++ b/include/trace/events/libata.h
&g
+++
> include/linux/blk-mq.h | 1 +
> include/linux/blkdev.h | 48 ++
> 15 files changed, 933 insertions(+), 20 deletions(-)
> create mode 100644 block/blk-zoned.c
> create mode 100644 drivers/scsi/sd_zbc.c
>
> --
> 1.8.5.6
>
--
Shaun Tancheff
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
In a few places a temporary value smaller than a cmd_flags
is used to test for bits and or build up a new cmd_flags.
Change to use explicit u64 values where appropriate.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
block/blk-core.c | 17 ++---
blo
.com/Seagate/ZDM-Device-Mapper
And a fork of Linus kernel with ZDM branches is available here:
https://github.com/stancheff/linux
Shaun Tancheff (12):
Add ZBC <-> ZAC xlat support for report, open, close, reset, finish
ata-scsi: Translate ReportZones result to big endian
BUG: Losing b
Provide SCSI <-> ATA translation layer for ZBC commands:
- Report Zones
- Open, Close, Reset and Finish zones
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
drivers/ata/libata-scsi.c | 167 ++
include/linux/ata.h
be translated from T13 to T10 format.
Add this T13->T10 translation on the result from Report Zones.
Code originially from: Hannes Reinecke <h...@suse.de> with minor
changes.
http://kernel.opensuse.org/cgit/kernel-source/commit/?id=6e219225108bf49c59aa69d14f3cbc74708777ae
Signed-off-
Add New ioctl types
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue an Zone Action: Open Zone command.
BLKCLOSEZONE - Issue an Zone Action: Close Zone command.
BLKRESETZONE - Issue an Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
rloads the meaning of REQ_META to direct ZBC commands
to construct ZAC equivalent ATA pass through commands.
Note also that this approach expects the initiator to deal with the
little endian result due to bypassing the normal translation layers.
Signed-off-by: Shaun Tancheff <shaun.tanch...@se
to
communicate to MD-RAID that enabling discard is safe.
This method is also more targeted. Devices are not expected
to set this parameter directly. And the kernel module parameter
which assumes devices are unsafe remains intact.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
blo
as there is no
current use case for that operation.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
MAINTAINERS | 9 ++
block/blk-lib.c | 120 +
drivers/scsi/sd.c | 109 ++-
drivers/scs
.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
drivers/md/dm-zoned.c | 12 +++-
fs/ext4/file.c| 1 +
fs/xfs/xfs_aops.c | 2 +-
fs/xfs/xfs_file.c | 1 +
include/linux/fs.h| 10 --
5 files changed, 22 insertions(+), 4 deletions(-)
diff
https://lkml.org/lkml/2008/6/24/18
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
block/bio.c | 57 ++---
1 file changed, 54 insertions(+), 3 deletions(-)
diff --git a/block/bio.c b/block/bio.c
index d42e69c..4ac19f6 100644
From: Shaun Tancheff <shaun.tanch...@seagate.com>
It is useful for ZDM to know that a block is part of a parity stripe
as parity stripes are deemed to be hotter and more prone to becoming
stale. ZDM will co-locate META bios to alternate streams.
Signed-off-by: Shaun Ta
ECV = 0x13,
> diff --git a/include/trace/events/libata.h b/include/trace/events/libata.h
> index 02ec4e5..24dcd43 100644
> --- a/include/trace/events/libata.h
> +++ b/include/trace/events/libata.h
> @@ -98,6 +98,7 @@
> ata_opcode_name(ATA_CMD_REQ_SENSE_DATA), \
> ata_opcode_name(ATA_CMD_SANITIZE_DEVICE), \
> ata_opcode_name(ATA_CMD_ZAC_MGMT_IN), \
> +ata_opcode_name(ATA_CMD_ZAC_MGMT_OUT), \
> ata_opcode_name(ATA_CMD_RESTORE), \
> ata_opcode_name(ATA_CMD_READ_LONG),\
> ata_opcode_name(ATA_CMD_READ_LONG_ONCE), \
> --
> 1.8.5.6
>
--
Shaun Tancheff
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Apr 5, 2016 at 9:08 AM, Martin K. Petersen
<martin.peter...@oracle.com> wrote:
>>>>>> "Shaun" == Shaun Tancheff <shaun.tanch...@seagate.com> writes:
>
> Shaun> Oh, okay. It became an issue in the next patch where some
> Shaun> inter
MA_EXT = 0x02,
>
> + /* Subcmds for ATA_CMD_ZAC_MGMT_IN */
> + ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES = 0x00,
> +
> /* READ_LOG_EXT pages */
> ATA_LOG_SATA_NCQ= 0x10,
> ATA_LOG_NCQ_SEND_RECV = 0x13,
> diff --git a/include/trace/events/libata.h b/include/trace/events/libata.h
> index 8b0fbd9..02ec4e5 100644
> --- a/include/trace/events/libata.h
> +++ b/include/trace/events/libata.h
> @@ -97,6 +97,7 @@
> ata_opcode_name(ATA_CMD_CFA_WRITE_MULT_NE),\
> ata_opcode_name(ATA_CMD_REQ_SENSE_DATA), \
> ata_opcode_name(ATA_CMD_SANITIZE_DEVICE), \
> +ata_opcode_name(ATA_CMD_ZAC_MGMT_IN), \
> ata_opcode_name(ATA_CMD_RESTORE), \
> ata_opcode_name(ATA_CMD_READ_LONG),\
> ata_opcode_name(ATA_CMD_READ_LONG_ONCE), \
> --
> 1.8.5.6
>
The zone report looks good.
Tested-by: Shaun Tancheff <shaun.tanch...@seagate.com>
--
Shaun Tancheff
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Apr 4, 2016 at 10:56 PM, Jeff Moyer <jmo...@redhat.com> wrote:
> Shaun Tancheff <sh...@tancheff.com> writes:
>
>> In a few places a temporary value smaller than a cmd_flags
>> is used to test for bits and or build up a new cmd_flags.
>>
>&g
It looks like some minor changes slipped through on the RAID.
A couple of checks for REQ_PREFLUSH flag should also check for
bi_op matching REQ_OP_FLUSH.
Wrappers for sync_page_io() are passed READ/WRITE but need to
be passed REQ_OP_READ and REQ_OP_WRITE.
Signed-off-by: Shaun Tancheff
t a/include/linux/ata.h b/include/linux/ata.h
> index 3fb2d7d..439be2a 100644
> --- a/include/linux/ata.h
> +++ b/include/linux/ata.h
> @@ -932,6 +932,11 @@ static inline bool ata_id_is_ssd(const u16 *id)
> return id[ATA_ID_ROT_SPEED] == 0x01;
> }
>
> +static inline u8 ata
Add support for ZBC ioctl's
BLKREPORT- Issue Report Zones to device.
BLKOPENZONE - Issue Zone Action: Open Zone command.
BLKCLOSEZONE - Issue Zone Action: Close Zone command.
BLKRESETZONE - Issue Zone Action: Reset Zone command.
Signed-off-by: Shaun Tancheff <shaun.ta
of zones in each report, but not critical.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
v5:
- In sd_setup_zone_action_cmnd, remove unused vars and fix switch indent
- In blk-lib fix documentation
v4:
- Rebase on linux-next tag next-20160617.
- Change bio flags to bio o
:
- Changed bi_rw to op_flags clarify sepeartion of bio op from flags.
- Fixed memory leak in blkdev_issue_zone_report failing to put_bio().
- Documented opt in blkdev_issue_zone_report.
- Moved include/uapi/linux/fs.h changes to patch 3
- Fixed commit message for first patch in series.
Shaun
; + }
It's a bit unfortunate that you abort here. The current Seagate Host
Aware drives
must report a same code of 0 here due to the final 'runt' zone and are therefore
not supported by your RB-Tree in the following patches.
> + /* Read the zone length from the first zone descriptor */
> + d
gt; https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_majordomo-2Dinfo.html=CwIBAg=IGDlg0lD0b-nebmJJ0Kp8A=Wg5NqlNlVTT7Ugl8V50qIHLe856QW0qfG3WVYGOrWzA=0ZPyN4vfYZXSmuCmIm3wpExF1K28PYO9KmgcqDsfQBg=aiguzw5_op7woZCZ5Qi7c36b16SxiWTJXshN0dG3Xyo=
--
Shaun Tancheff
--
To unsubscribe fr
On Thu, Aug 11, 2016 at 3:26 AM, wrote:
> From: Tom Yan
>
> Currently we advertise Maximum Write Same Length based on the
> maximum number of sectors that one-block TRIM payload can cover.
> The field are used to derived discard_max_bytes and
>
In sd_setup_discard_cmnd() there are a some discard
methods that fall back to using WRITE_SAME. It
appears that those paths using WRITE_SAME should
also use the SD_WRITE_SAME_TIMEOUT instead of the
default SD_TIMEOUT.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
I don'
On Tue, Aug 9, 2016 at 1:47 AM, Hannes Reinecke <h...@suse.de> wrote:
> On 08/05/2016 10:35 PM, Shaun Tancheff wrote:
>> On Tue, Aug 2, 2016 at 8:29 PM, Damien Le Moal <damien.lem...@hgst.com>
>> wrote:
>>>> On Aug 2, 2016, at 23:35, Hannes Reinecke <h..
; 1 kirihara-cho, Fujisawa,
> Kanagawa, 252-0888 Japan
> www.hgst.com
>
> Western Digital Corporation (and its subsidiaries) E-mail Confidentiality
> Notice & Disclaimer:
>
> This e-mail and any files transmitted with it may contain confidential or
> legally privileged information of
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
Cc: Hannes Reinecke <h...@suse.de>
Cc: Damien Le Moal <damien.lem...@hgst.com>
Cc: Dan Williams <dan.j.willi...@intel.com>
Cc: Sagi Grimberg <sa...@mellanox.com>
Cc: Mike Christie <mchri...@redhat.com>
Cc
Seagate drives report a SAME code of 0 due to having:
- Zones of different types (CMR zones at the low LBA space).
- Zones of different size (A terminating 'runt' zone in the high lba space).
Support loading the zone topology into the sd_zbc zone cache.
Signed-off-by: Shaun Tancheff
On Thu, Aug 4, 2016 at 10:46 AM, Christoph Hellwig <h...@infradead.org> wrote:
> On Wed, Aug 03, 2016 at 07:30:29PM -0500, Shaun Tancheff wrote:
>> I think the translation in loop.c is suspicious here:
>>
>> "if use DIO && not (a flush_fl
line\n",
> + zone->start);
> + goto out;
> + }
> +
> + if (rq->cmd_flags & (REQ_WRITE | REQ_WRITE_SAME)) {
> + if (zone->type != BLK_ZONE_TYPE_SEQWRITE_REQ)
> + goto out;
> + if (zone->state == BLK_ZONE_READONLY)
> + goto out;
> + if (blk_zone_is_full(zone)) {
> + sd_zbc_debug(sdkp,
> +"Write to full zone %zu/%zu\n",
> +sector, zone->wp);
> + ret = BLKPREP_KILL;
> + goto out;
> + }
> + if (zone->wp != sector) {
> + sd_zbc_debug(sdkp,
> +"Misaligned write %zu/%zu\n",
> +sector, zone->wp);
> + ret = BLKPREP_KILL;
> + goto out;
> + }
> + zone->wp += num_sectors;
> + } else if (blk_zone_is_smr(zone) && (zone->wp <= sector)) {
> + sd_zbc_debug(sdkp,
> +"Read beyond wp %zu/%zu\n",
> +sector, zone->wp);
> + ret = BLKPREP_DONE;
> + }
> +
> +out:
> + spin_unlock_irqrestore(>lock, flags);
> +
> + return ret;
> +}
> +
> +int sd_zbc_setup(struct scsi_disk *sdkp, char *buf, int buf_len)
> +{
> + sector_t capacity = logical_to_sectors(sdkp->device, sdkp->capacity);
> + sector_t last_sector;
> +
> + if (test_and_set_bit(SD_ZBC_ZONE_INIT, >zone_flags)) {
> + sdev_printk(KERN_WARNING, sdkp->device,
> + "zone initialisation already running\n");
> + return 0;
> + }
> +
> + if (!sdkp->zone_work_q) {
> + char wq_name[32];
> +
> + sprintf(wq_name, "zbc_wq_%s", sdkp->disk->disk_name);
> + sdkp->zone_work_q = create_singlethread_workqueue(wq_name);
> + if (!sdkp->zone_work_q) {
> + sdev_printk(KERN_WARNING, sdkp->device,
> + "create zoned disk workqueue failed\n");
> + return -ENOMEM;
> + }
> + } else if (!test_and_set_bit(SD_ZBC_ZONE_RESET, >zone_flags)) {
> + drain_workqueue(sdkp->zone_work_q);
> + clear_bit(SD_ZBC_ZONE_RESET, >zone_flags);
> + }
> +
> + last_sector = zbc_parse_zones(sdkp, buf, buf_len);
> + if (last_sector != -1 && last_sector < capacity) {
> + sd_zbc_update_zones(sdkp, last_sector, SD_ZBC_BUF_SIZE,
> false);
> + } else
> + clear_bit(SD_ZBC_ZONE_INIT, >zone_flags);
> +
> + return 0;
> +}
> +
> +void sd_zbc_remove(struct scsi_disk *sdkp)
> +{
> + if (sdkp->zone_work_q) {
> + if (!test_and_set_bit(SD_ZBC_ZONE_RESET, >zone_flags))
> + drain_workqueue(sdkp->zone_work_q);
> + clear_bit(SD_ZBC_ZONE_INIT, >zone_flags);
> + destroy_workqueue(sdkp->zone_work_q);
> + }
> +}
> --
> 1.8.5.6
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at
> https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_majordomo-2Dinfo.html=CwIBAg=IGDlg0lD0b-nebmJJ0Kp8A=Wg5NqlNlVTT7Ugl8V50qIHLe856QW0qfG3WVYGOrWzA=TECAPpeng5OMyCHPt1hU8vo6KAxzybSw2on8YvGxkFA=FuZ8S92fAROISBQ96aUzY73nDV4L0J8ME36u9FCTWK8=
--
Shaun Tancheff
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Aug 9, 2016 at 1:47 AM, Hannes Reinecke <h...@suse.de> wrote:
> On 08/05/2016 10:35 PM, Shaun Tancheff wrote:
>> On Tue, Aug 2, 2016 at 8:29 PM, Damien Le Moal <damien.lem...@hgst.com>
>> wrote:
>>> Hannes, Shaun,
>>>
>>> Let me add
r sector as the largest
guaranteed amount of data in the associated sg pages.
Keying off of sector_size should be straight forward there...
--
Shaun Tancheff
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Aug 2, 2016 at 8:29 PM, Damien Le Moal <damien.lem...@hgst.com> wrote:
> Hannes, Shaun,
>
> Let me add some more comments.
>
>> On Aug 2, 2016, at 23:35, Hannes Reinecke <h...@suse.de> wrote:
>>
>> On 08/01/2016 07:07 PM, Shaun Tancheff wrote:
>
= Lo_bound)
return -EIO;
- if (lo->use_dio && (!(cmd->rq->cmd_flags & REQ_FLUSH) ||
- req_op(cmd->rq) == REQ_OP_DISCARD))
+ if (lo->use_dio && !(
+ (cmd->rq->cmd_flags & REQ_FLUSH) ||
+req_op(cmd->rq) == REQ_OP_DISCARD))
cmd->use_aio = true;
else
cmd->use_aio = false;
--
Shaun Tancheff
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
for that operation.
Report zones currently defaults to reporting on all zones. It expected
that support for the zone option flag will piggy back on streamid
support. The report option flag is useful as it can reduce the number
of zones in each report, but not critical.
Signed-off-by: Shaun Tancheff
in blkdev_issue_zone_report failing to put_bio().
- Documented opt in blkdev_issue_zone_report.
- Moved include/uapi/linux/fs.h changes to patch 3
- Fixed commit message for first patch in series.
Shaun Tancheff (2):
Add bio/request flags for using ZBC/ZAC commands
Add ioctl to issue ZBC/ZAC
On Mon, Aug 15, 2016 at 11:00 PM, Damien Le Moal <damien.lem...@hgst.com> wrote:
>
> Shaun,
>
>> On Aug 14, 2016, at 09:09, Shaun Tancheff <shaun.tanch...@seagate.com> wrote:
> […]
>>>>
>>> No, surely not.
>>> But one of the _big_ advant
On Tue, Aug 9, 2016 at 11:38 PM, Damien Le Moal <damien.lem...@hgst.com> wrote:
> Shaun,
>
> On 8/10/16 12:58, Shaun Tancheff wrote:
>>
>> On Tue, Aug 9, 2016 at 3:09 AM, Damien Le Moal <damien.lem...@hgst.com>
>> wrote:
>>>>
>>>>
in blkdev_issue_zone_report failing to put_bio().
- Documented opt in blkdev_issue_zone_report.
- Moved include/uapi/linux/fs.h changes to patch 3
- Fixed commit message for first patch in series.
Shaun Tancheff (2):
Add bio/request flags to issue ZBC/ZAC commands
Add ioctl to issue ZBC/ZAC
zones currently defaults to reporting on all zones. It expected
that support for the zone option flag will piggy back on streamid
support. The report option flag is useful as it can reduce the number
of zones in each report, but not critical.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.
Add support for ZBC ioctl's
BLKREPORT - Issue Report Zones to device.
BLKZONEACTION - Issue a Zone Action (Close, Finish, Open, or Reset)
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
v8:
- Changed ioctl for zone actions to a single ioctl that takes
a str
Seagate drives report a SAME code of 0 due to having:
- Zones of different types (CMR zones at the low LBA space).
- Zones of different size (A terminating 'runt' zone in the high
lba space).
Support loading the zone topology into the zone cache.
Signed-off-by: Shaun Tancheff
-rc2%2Bbiof.v9
g...@github.com:stancheff/linux.git v4.8-rc2+biof.v9
v2:
- Fully integrated bio <-> zone cache [<-> device]
- Added discard -> write same for conventional zones.
- Merged disparate constants into a canonical set.
Shaun Tancheff (4):
Enable support for Se
Dedupe ZBC/ZAC constants used for reporting options, same code,
zone condition and zone type.
These are all useful to programs consuming zone information from
user space as well so include them in a uapi header.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
block/blk
and Finish zones having no other analog are sent directly
to the device.
On successful completion each zone action will update the zone cache
as appropriate.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
block/blk-lib.c | 16 --
drivers/scsi/sd.c | 42 +++-
driver
Move the remaining ZBC specific code to sd_zbc.c
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
drivers/scsi/sd.c | 65 +--
drivers/scsi/sd.h | 20 ++
drivers/scsi/sd_zbc.c | 170 +++---
3 files c
.
Shaun Tancheff (2):
Move ZBC core setup to sd_zbc
Migrate zone cache from RB-Tree to arrays of descriptors
block/blk-core.c |2 +-
block/blk-sysfs.c | 31 +-
block/blk-zoned.c | 103 +++--
drivers/scsi/sd.c | 66 +--
drivers/scsi/sd.h | 20 +-
drivers
.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
block/blk-core.c |2 +-
block/blk-sysfs.c | 31 +-
block/blk-zoned.c | 103 +++--
drivers/scsi/sd.c |5 +-
drivers/scsi/sd.h |4 +-
drivers/scsi/sd_zbc.c
On Sun, Aug 21, 2016 at 11:34 PM, Shaun Tancheff <sh...@tancheff.com> wrote:
> Currently the RB-Tree zone cache is fast and flexible. It does
> use a rather largish amount of ram. This model reduces the ram
> required from 120 bytes per zone to 16 bytes per zone with a
> moder
On Mon, Aug 22, 2016 at 2:11 AM, Hannes Reinecke <h...@suse.de> wrote:
> On 08/22/2016 06:34 AM, Shaun Tancheff wrote:
>> Currently the RB-Tree zone cache is fast and flexible. It does
>> use a rather largish amount of ram. This model reduces the ram
>> required from 120
On Mon, Aug 22, 2016 at 1:55 PM, wrote:
> From: Tom Yan
>
> In commit 5c79097a28c2 ("libata-scsi: reject WRITE SAME (16) with
> n_block that exceeds limit"), it is made sure that
> ata_set_lba_range_entries() will never be called with a request
> size
On Mon, Aug 22, 2016 at 3:07 PM, Tom Yan wrote:
> I don't see how that's possible. count / n_block will always be
> smaller than 65535 * ATA_MAX_TRIM_RNUM(64) = 4194240. Not to mention
> that isn't even a "buffer limit" anyway. By SG_IO do you mean like
> SCSI Write Same
On Mon, Aug 22, 2016 at 6:57 PM, Damien Le Moal <damien.lem...@hgst.com> wrote:
>
> Shaun,
>
> On 8/22/16 13:31, Shaun Tancheff wrote:
> [...]
>> -int sd_zbc_setup_discard(struct scsi_disk *sdkp, struct request *rq,
>> - sector_t sector,
Tom,
In my opinion this patch you submitted is simply making the code less
safe against a buffer overflow without a sufficiently good reason.
In future please comment on other patches as replies to those patches.
Mixing them together is just confusing.
--Shaun
--
To unsubscribe from this list:
Restrict support SCT Write Same to devices which also support ZAC where
support is required.
Reported-by: Mike Krinkin <krinkin@gmail.com>
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
drivers/ata/libata-scsi.c | 6 +++---
1 file changed, 3 insertions(+),
On Fri, Sep 9, 2016 at 10:36 AM, Tejun Heo <t...@kernel.org> wrote:
> Hello, Shaun.
>
> On Fri, Sep 09, 2016 at 10:26:44AM -0500, Shaun Tancheff wrote:
>> I'm looking into it now. Let me see if I can reproduce this on any of my
>> hardware.
>>
>> If no
On Fri, Sep 9, 2016 at 10:36 AM, Tejun Heo <t...@kernel.org> wrote:
> Hello, Shaun.
>
> On Fri, Sep 09, 2016 at 10:26:44AM -0500, Shaun Tancheff wrote:
>> I'm looking into it now. Let me see if I can reproduce this on any of my
>> hardware.
>>
>> If no
-nebmJJ0Kp8A=Wg5NqlNlVTT7Ugl8V50qIHLe856QW0qfG3WVYGOrWzA=vJFB6pCywWtdvkgHz9Vc0jQz0xzeyZlr-7eCWYu88nM=yiQLPFpqmMrbqLZz1Jb3aNqOje2dRMLJHEzUDobwcXc=
--
Shaun Tancheff
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Sep 19, 2016 at 4:27 PM, Damien Le Moal wrote:
> From: Hannes Reinecke
>
> Implement ZBC support functions to setup zoned disks and fill the
> block device zone information tree during the device scan. The
> zone information tree is also always
On Mon, Sep 19, 2016 at 4:27 PM, Damien Le Moal <damien.lem...@hgst.com> wrote:
> From: Shaun Tancheff <shaun.tanch...@seagate.com>
>
> Adds the new BLKUPDATEZONES, BLKREPORTZONE, BLKRESETZONE,
> BLKOPENZONE, BLKCLOSEZONE and BLKFINISHZONE ioctls.
>
> BLKREPORTZONE
On Mon, Aug 22, 2016 at 8:25 PM, Damien Le Moal <damien.lem...@hgst.com> wrote:
>
> Shaun,
>
> On 8/23/16 09:22, Shaun Tancheff wrote:
>> On Mon, Aug 22, 2016 at 6:57 PM, Damien Le Moal <damien.lem...@hgst.com>
>> wrote:
>> Also you may note
On Tue, Aug 23, 2016 at 3:37 AM, Tom Yan <tom.t...@gmail.com> wrote:
> On 23 August 2016 at 07:30, Shaun Tancheff <sh...@tancheff.com> wrote:
> If we really want/need to avoid hitting some real buffer limit (e.g.
> maximum length of scatter/gather list?), then we shoul
On Mon, Aug 22, 2016 at 3:53 PM, Tom Yan <tom.t...@gmail.com> wrote:
> On 22 August 2016 at 20:32, Shaun Tancheff <shaun.tanch...@seagate.com> wrote:
>> On Mon, Aug 22, 2016 at 3:07 PM, Tom Yan <tom.t...@gmail.com> wrote:
>>> I don't see how that's p
prevent this patch from entering the repo first.
> On 23 August 2016 at 09:36, Tom Yan <tom.t...@gmail.com> wrote:
>> On 23 August 2016 at 09:18, Shaun Tancheff <shaun.tanch...@seagate.com>
>> wrote:
>>> On Tue, Aug 23, 2016 at 3:37 AM, Tom Yan <tom.t...@gmail.com>
On Thu, Aug 25, 2016 at 9:31 PM, Damien Le Moal <damien.lem...@hgst.com> wrote:
>
> Shaun,
>
> On 8/25/16 05:24, Shaun Tancheff wrote:
>>
>> (RESENDING to include f2fs, fs-devel and dm-devel)
>>
>> Add op flags to access to zone information
1 - 100 of 129 matches
Mail list logo