kernel_optimize_test/drivers/vhost
Nicholas Bellinger 09b13fa8c1 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 <mst@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
2015-02-04 10:55:37 -08:00
..
Kconfig
Makefile
net.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2014-12-11 14:27:06 -08:00
scsi.c vhost/scsi: Add ANY_LAYOUT support in vhost_scsi_handle_vq 2015-02-04 10:55:37 -08:00
test.c vhost: move memory pointer to VQs 2014-06-09 16:21:07 +03:00
test.h
vhost.c vhost: virtio 1.0 endian-ness support 2014-12-09 12:05:29 +02:00
vhost.h vhost: remove unnecessary forward declarations in vhost.h 2014-12-09 12:06:33 +02:00
vringh.c vringh: update for virtio 1.0 APIs 2014-12-15 23:49:28 +02:00