On Tue, Oct 02, 2012 at 07:15:43AM +0000, Nicholas A. Bellinger wrote: > From: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx> > > Hi hch & Co, > > This series adds a new target_submit_cmd_map_mem() caller to accept > pre-allocated SGL memory within the core generic I/O submission path. > Patch #1 contains the core I/O changes, patch #2 + #4 includes the > conversion of tcm_loop+tcm_vhost to use this new caller -> drop their > internal open-coded equivalents using transport_generic_map_mem_to_cmd(). > > Patch #3 carries forward a work-around for tcm_loop w/ scsi-generic with > user-space code that does not zero out it's READ payload buffer + ends > up passing a payload filled with random data into target core's control CDB > emulation. Since we're not using bounce buffers any more for control > CDB emulation in modern v3.x code, AFAICT tcm_loop still requires this > extra bit to function properly with some legacy user-space code. > > Regardless, the main I/O path changes end up being very mechnical in > nature for existing core and fabric code, and has been running as expected > with fio small-block workloads last hours. > > Please review. > > Thanks Christoph! > > --nab For the vhost part: ACK series. > Nicholas Bellinger (4): > target: Add target_submit_cmd_map_mem for SGL fabric memory > passthrough > tcm_loop: Convert I/O path to use target_submit_cmd_map_mem > target: Add TARGET_SCF_MAP_CLEAR_MEM work-around for tcm_loop > tcm_vhost: Convert I/O path to use target_submit_cmd_map_mem > > drivers/target/loopback/tcm_loop.c | 62 ++------------- > drivers/target/target_core_transport.c | 129 ++++++++++++++++++++++++++------ > drivers/vhost/tcm_vhost.c | 68 ++++------------- > drivers/vhost/tcm_vhost.h | 8 ++ > include/target/target_core_base.h | 2 + > include/target/target_core_fabric.h | 3 + > 6 files changed, 141 insertions(+), 131 deletions(-) > > -- > 1.7.2.5 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html