linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: "Nicholas A. Bellinger" <nab@daterainc.com>,
	target-devel <target-devel@vger.kernel.org>,
	linux-scsi <linux-scsi@vger.kernel.org>,
	"Martin K. Petersen" <martin.petersen@oracle.com>,
	Sagi Grimberg <sagig@mellanox.com>,
	Christoph Hellwig <hch@lst.de>, Hannes Reinecke <hare@suse.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Nicholas Bellinger <nab@linux-iscsi.org>,
	Sagi Grimberg <sagig@dev.mellanox.co.il>
Subject: Re: [PATCH 1/6] virtio-scsi.h: Add virtio_scsi_cmd_req_pi + VIRTIO_SCSI_F_T10_PI bits
Date: Wed, 9 Apr 2014 16:22:39 +0300	[thread overview]
Message-ID: <20140409132239.GE10874@redhat.com> (raw)
In-Reply-To: <53445C9E.2040003@redhat.com>

On Tue, Apr 08, 2014 at 04:31:26PM -0400, Paolo Bonzini wrote:
> Il 07/04/2014 05:55, Michael S. Tsirkin ha scritto:
> >>> +	u16 do_pi_niov;		/* DataOUT PI Number of iovecs */
> >>> +	u16 di_pi_niov;		/* DataIN PI Number of iovecs */
> >So this looks like a somewhat problematic interface to me in that
> >it talks in terms of iovecs not bytes.
> >So this perpetuates the assumption that header is in a separate
> >iov from data (and protection is separate from data).
> >Arguably virtio doesn't work in terms of iovecs on the guest side so
> >this naming looks strange.
> >Further host side, get_vq_descs can in theory split a buffer to multiple
> >iovecs if it crosses the boundary of a memory region.
> >
> >One solution is to use byte lengths here, but this does require
> >that vhost scsi gets rid of layout assumptions generally.
> >Not sure that's practical for -rc1.
> 
> Why does that require that vhost scsi gets rid of layout assumptions?
> 
> The interface uses bytes instead of iovecs as the unit, and
> vhost-scsi can add the (temporary...) requirement that do_pi_nbytes
> and di_pi_nbytes comprise an integer number of iovecs.
> 
> Paolo

That would be a reasonable intermediate step, but I'm worried there
are more assumptions lurking in tere.

In particular is it legal for PI to be in the same iov
entry as data? If not they really need to use a
separate buf entry.

-- 
MST

  reply	other threads:[~2014-04-09 13:22 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-06 21:32 [PATCH 0/6] vhost/scsi: Add T10 PI SGL passthrough support Nicholas A. Bellinger
2014-04-06 21:32 ` [PATCH 1/6] virtio-scsi.h: Add virtio_scsi_cmd_req_pi + VIRTIO_SCSI_F_T10_PI bits Nicholas A. Bellinger
2014-04-07  9:55   ` Michael S. Tsirkin
2014-04-08 20:31     ` Paolo Bonzini
2014-04-09 13:22       ` Michael S. Tsirkin [this message]
2014-04-13  1:18         ` Paolo Bonzini
2014-04-06 21:32 ` [PATCH 2/6] vhost/scsi: Move sanity check into vhost_scsi_map_iov_to_sgl Nicholas A. Bellinger
2014-04-06 21:32 ` [PATCH 3/6] vhost/scsi: Add preallocation of protection SGLs Nicholas A. Bellinger
2014-04-06 21:32 ` [PATCH 4/6] vhost/scsi: Add T10 PI IOV -> SGL memory mapping logic Nicholas A. Bellinger
2014-04-06 21:32 ` [PATCH 5/6] vhost/scsi: Enable T10 PI IOV -> SGL memory mapping Nicholas A. Bellinger
2014-04-07  9:16   ` Michael S. Tsirkin
2014-04-08 20:36     ` Paolo Bonzini
2014-04-06 21:32 ` [PATCH 6/6] virtio-scsi: Enable DIF/DIX modes in SCSI host LLD Nicholas A. Bellinger
2014-04-07  8:03   ` Sagi Grimberg
2014-04-07  8:40     ` Nicholas A. Bellinger
2014-04-07  8:45   ` Michael S. Tsirkin
2014-04-07  8:56     ` Nicholas A. Bellinger
2014-04-07  9:02       ` Michael S. Tsirkin
2014-04-07  9:13         ` Nicholas A. Bellinger
2014-04-08 20:35           ` Paolo Bonzini
2014-05-07  9:13       ` Michael S. Tsirkin
2014-05-19 19:07         ` Nicholas A. Bellinger
2014-05-19 19:15           ` Michael S. Tsirkin
2014-05-19 20:54             ` Nicholas A. Bellinger
2014-05-19 22:43               ` Michael S. Tsirkin
2014-05-20  8:35           ` Paolo Bonzini
2014-05-20 18:24             ` Nicholas A. Bellinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140409132239.GE10874@redhat.com \
    --to=mst@redhat.com \
    --cc=hare@suse.de \
    --cc=hch@lst.de \
    --cc=hpa@zytor.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=nab@daterainc.com \
    --cc=nab@linux-iscsi.org \
    --cc=pbonzini@redhat.com \
    --cc=sagig@dev.mellanox.co.il \
    --cc=sagig@mellanox.com \
    --cc=target-devel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).