- if (ret)
> + if (ret) {
> + zone_blocks = 0;
> goto out;
> + }
>
> same = buf[4] & 0x0f;
> if (same > 0) {
> --
> 2.9.0
>
Reviewed-by: Shaun Tancheff <shaun.tanch...@seagate.com>
--
Shaun Tancheff
--
On Tue, Oct 18, 2016 at 11:58 AM, Jeff Moyer wrote:
> Damien Le Moal writes:
>
>> + if (!is_power_of_2(zone_blocks)) {
>> + if (sdkp->first_scan)
>> + sd_printk(KERN_NOTICE, sdkp,
>> +
On Thu, Oct 13, 2016 at 6:00 PM, Adam Manzanares
wrote:
> The request priority is now by default coming from the ioc. It was not
> clear what this code was trying to do based upon the iopriority class or
> data. The driver should check that a device supports priorities
t-processing based
on code from Shaun Tancheff <shaun.tanch...@seagate.com>
* Removed confusing use of 512B sector units in functions
interface]
Signed-off-by: Damien Le Moal <damien.lem...@hgst.com>
Reviewed-by: Christoph Hellwig <h...@lst.de>
Reviewed-b
n 512B sectors) of the zones of the device.
Signed-off-by: Hannes Reinecke <h...@suse.de>
[Damien: * Removed the zone cache
* Implement report zones operation based on earlier proposal
by Shaun Tancheff <shaun.tanch...@seagate.com>]
Signed-off-by: Damien Le Moal <d
. The zone information result is passed as an array
of struct blk_zone identical to the structure used internally for
processing the REQ_OP_ZONE_REPORT operation. The BLKRESETZONE ioctl
maps to a single call of the blkdev_reset_zones function.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.
From: Hannes Reinecke <h...@suse.de>
Signed-off-by: Hannes Reinecke <h...@suse.com>
Signed-off-by: Damien Le Moal <damien.lem...@hgst.com>
Reviewed-by: Christoph Hellwig <h...@lst.de>
Reviewed-by: Martin K. Petersen <martin.peter...@oracle.com>
Reviewed-b
lem...@hgst.com>
Reviewed-by: Christoph Hellwig <h...@lst.de>
Reviewed-by: Martin K. Petersen <martin.peter...@oracle.com>
Reviewed-by: Shaun Tancheff <shaun.tanch...@seagate.com>
Tested-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
Documentation/ABI/testing/sysfs-b
From: Shaun Tancheff <shaun.tanch...@seagate.com>
Define REQ_OP_ZONE_REPORT and REQ_OP_ZONE_RESET for handling zones of
host-managed and host-aware zoned block devices. With with these two
new operations, the total number of operations defined reaches 8 and
still fits with the 3 bits defi
as "host-managed".
Signed-off-by: Damien Le Moal <damien.lem...@hgst.com>
Reviewed-by: Christoph Hellwig <h...@lst.de>
Reviewed-by: Martin K. Petersen <martin.peter...@oracle.com>
Reviewed-by: Shaun Tancheff <shaun.tanch...@seagate.com>
Tested-by: Shaun Tancheff <s
This series introduces support for zoned block devices. It integrates
earlier submissions by Hannes Reinecke, Damien Le Moal and Shaun Tancheff.
Compared to the previous series version, the code was significantly
simplified by limiting support to zoned devices satisfying the following
conditions
Hello Bart,
I rebased this series on Jens for-4.9/block and will repost.
Thanks!
--Shaun
On Fri, Sep 30, 2016 at 12:18 PM, Bart Van Assche
<bart.vanass...@sandisk.com> wrote:
> On 09/30/2016 09:47 AM, Shaun Tancheff wrote:
>> On Fri, Sep 30, 2016 at 11:10 AM, Bart Van Assche
nebmJJ0Kp8A=Wg5NqlNlVTT7Ugl8V50qIHLe856QW0qfG3WVYGOrWzA=VY30muznazMHPib_ks7gWROq97LIrq37TtKOXyYliB0=s2DsgBOJACiLmv56Aw-uehcdexEfBe73hSnqZDfB0xY=
--
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
* Removed mapping of discard to reset write pointer command
> * Modified sd_zbc_read_zones to include checks that the
>device satisfies the kernel constraints
> * Implemeted REPORT ZONES setup and post-processing based
>on code from Shaun Tancheff
* Implement report zones operation based on earlier proposal
>by Shaun Tancheff <shaun.tanch...@seagate.com>]
> Signed-off-by: Damien Le Moal <damien.lem...@hgst.com>
> ---
> block/Kconfig | 8 ++
> block/Makefile| 1 +
&g
queue_limits *b,
> t->discard_granularity;
> }
>
> + if (b->chunk_sectors)
> + t->chunk_sectors = min_not_zero(t->chunk_sectors,
> + b->chunk_sectors);
> +
&g
> .attr = {.name = "minimum_io_size", .mode = S_IRUGO },
> .show = queue_io_min_show,
> @@ -555,6 +565,7 @@ static struct attribute *default_attrs[] = {
> _hw_sector_size_entry.attr,
> _logical_block_size_entry.attr,
> _physical_block_size_entry.attr,
> + _
ite
> */
> @@ -1354,6 +1381,26 @@ static inline unsigned int bdev_write_same(struct
> block_device *bdev)
> return 0;
> }
>
> +static inline enum blk_zoned_model bdev_zoned_model(struct block_device
> *bdev)
> +{
> + struct request_queue *q = bdev_g
queue_limits *b,
> t->discard_granularity;
> }
>
> + if (b->chunk_sectors)
> + t->chunk_sectors = min_not_zero(t->chunk_sectors,
> + b->chunk_sectors);
> +
&g
w_sector_size_entry.attr,
> _logical_block_size_entry.attr,
> _physical_block_size_entry.attr,
> + _chunk_sectors_entry.attr,
> _io_min_entry.attr,
> _io_opt_entry.attr,
> _discard_granularity_entry.attr,
> --
> 2.7.4
Reviewed-by: Shaun Tancheff
uct
> block_device *bdev)
> return 0;
> }
>
> +static inline enum blk_zoned_model bdev_zoned_model(struct block_device
> *bdev)
> +{
> + struct request_queue *q = bdev_get_queue(bdev);
> +
> + if (q)
> + return
tisfies the kernel constraints
> * Implemeted REPORT ZONES setup and post-processing based
>on code from Shaun Tancheff <shaun.tanch...@seagate.com>]
> Signed-off-by: Damien Le Moal <damien.lem...@hgst.com>
> ---
> drivers/scsi/Makefile |
. The zone information result is passed as an array
of struct blk_zone identical to the structure used internally for
processing the REQ_OP_ZONE_REPORT operation. The BLKRESETZONE ioctl
maps to a single call of the blkdev_reset_zones function.
Signed-off-by: Shaun Tancheff <shaun.tanch...@seagate.
n 512B sectors) of the zones of the device.
Signed-off-by: Hannes Reinecke <h...@suse.de>
[Damien: * Removed the zone cache
* Implement report zones operation based on earlier proposal
by Shaun Tancheff <shaun.tanch...@seagate.com>]
Signed-off-by: Damien Le Moal <d
e addressed.
> If you are not the intended recipient, any disclosure, copying, distribution
> or any action taken or omitted to be taken in reliance on it, is prohibited.
> If you have received this e-mail in error, please notify the sender
> immediately and delete the e-mail in it
BLK_ZONE_TYPE_SEQWRITE_REQ,
>> - BLK_ZONE_TYPE_SEQWRITE_PREF,
>> -};
>
> Please don't move this code around after it was added just two
> patches earlier. I'd say just split adding the new blkzoned.h
> uapi header into a patch of it's own and add that before the
> cor
-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 <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, 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 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
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 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
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:
(RESENDING to include f2fs, fs-devel and dm-devel)
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 fo
-off-by: Shaun Tancheff <shaun.tanch...@seagate.com>
---
v8:
- Added Finish Zone op
- Fixed report zones copy to user to work when HARDENED_USERCOPY is enabled
v6:
- Added GFP_DMA to gfp mask.
v5:
- In sd_setup_zone_action_cmnd, remove unused vars and fix switch indent
- In blk-l
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 Tancheff (2):
Add bio/request flags
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
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 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
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,
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 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 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 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
.
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
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
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
-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
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
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
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.
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
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:
>>>>
>>>>
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 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
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
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 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
>
; 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
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..
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:
>
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
= 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
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
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
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
; + }
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
:
- 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
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
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
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>
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
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/
...@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
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
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
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
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
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..
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
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 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
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...@seagate.co
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
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
-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
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
1 - 100 of 129 matches
Mail list logo