lkml.org 
[lkml]   [2012]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH-v2 0/3] target/iblock: Add WRITE_SAME w/ UNMAP=0 emulation
Date
From: Nicholas Bellinger <nab@linux-iscsi.org>

Hi folks,

This -v2 series for-3.8 adds support for proper WRITE_SAME w/ UNMAP=0 emulation
for IBLOCK device backends to follow MKP's WRITE_SAME client patches that have
been merged in v3.7-rc1.

Currently it uses a bio_add_page() call for each sector in order to allow
scatterlist w/ page offsets to work, as blkdev_issue_write_same() currently
assumes underlying hw support + zero page offset.

This -v2 includes the following changes requested by hch to v1:

- Drop the SCF_WRITE_SAME_DISCARD flag
- Add sbc_ops handler specific to WRITE_SAME w/ UNMAP=1
- Move max_write_same_len sanity check from IBLOCK into sbc code
- Add SGL check for single sector in iblock_execute_write_same()

I'm testing these changes now against iscsi-target + tcm_loop ports on
target-pending/for-next. Please review.

Thanks!

--nab

Nicholas Bellinger (3):
target/sbc: Seperate WRITE_SAME based on UNMAP flag in sbc_ops
target: Add/check max_write_same_len device attribute + update block
limits VPD
target/iblock: Add WRITE_SAME w/ UNMAP=0 emulation support

drivers/target/target_core_configfs.c | 4 ++
drivers/target/target_core_device.c | 11 ++++
drivers/target/target_core_iblock.c | 91 ++++++++++++++++++++++++++++++---
drivers/target/target_core_internal.h | 1 +
drivers/target/target_core_sbc.c | 59 +++++++++++----------
drivers/target/target_core_spc.c | 8 +++-
include/target/target_core_backend.h | 1 +
include/target/target_core_base.h | 3 +
8 files changed, 142 insertions(+), 36 deletions(-)

--
1.7.2.5



\
 
 \ /
  Last update: 2012-11-15 22:01    [W:1.436 / U:1.612 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site