From: Nicholas Bellinger Date: Mon, 26 Jan 2015 05:14:58 +0000 (-0800) Subject: vhost/scsi: Add ANY_LAYOUT support in vhost_scsi_handle_vq X-Git-Tag: omap-for-v4.1/prcm-dts-mfd-syscon-fix~13^2~17 X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=09b13fa8c1a1093e9458549ac8bb203a7c65c62a;p=pandora-kernel.git vhost/scsi: Add ANY_LAYOUT support in vhost_scsi_handle_vq This patch adds ANY_LAYOUT compatible support within the existing vhost_scsi_handle_vq() ->handle_kick() callback. It calculates data_direction + exp_data_len for the new tcm_vhost_cmd descriptor by walking both outgoing + incoming iovecs using iov_iter, assuming the layout of outgoing request header + T10_PI + Data payload comes first. It also uses copy_from_iter() to copy leading virtio-scsi request header that may or may not include SCSI CDB, that returns a re-calculated iovec to start of T10_PI or Data SGL memory. Also, go ahead and drop the legacy pre virtio v1.0 !ANY_LAYOUT logic. Cc: Michael S. Tsirkin Cc: Paolo Bonzini Cc: Al Viro Signed-off-by: Nicholas Bellinger --- Reading git-diff-tree failed