From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33585) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c9wiL-0004tq-CE for qemu-devel@nongnu.org; Thu, 24 Nov 2016 11:17:34 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c9wiG-0002Fj-D8 for qemu-devel@nongnu.org; Thu, 24 Nov 2016 11:17:33 -0500 Received: from 11.mo3.mail-out.ovh.net ([87.98.184.158]:36206) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c9wiG-0002Eq-5u for qemu-devel@nongnu.org; Thu, 24 Nov 2016 11:17:28 -0500 Received: from player730.ha.ovh.net (b7.ovh.net [213.186.33.57]) by mo3.mail-out.ovh.net (Postfix) with ESMTP id 5149862189 for ; Thu, 24 Nov 2016 17:17:26 +0100 (CET) Date: Thu, 24 Nov 2016 17:17:17 +0100 From: Greg Kurz Message-ID: <20161124171717.3870e91b@bahia> In-Reply-To: <1479764372-29470-4-git-send-email-sstabellini@kernel.org> References: <1479764372-29470-1-git-send-email-sstabellini@kernel.org> <1479764372-29470-4-git-send-email-sstabellini@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 4/4] 9pfs: add a size parameter to init_iov_from_pdu List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefano Stabellini Cc: aneesh.kumar@linux.vnet.ibm.com, qemu-devel@nongnu.org, xen-devel@lists.xensource.com, anthony.perard@citrix.com, wei.liu2@citrix.com On Mon, 21 Nov 2016 13:39:32 -0800 Stefano Stabellini wrote: > Not all 9pfs transports share memory between request and response. For > those who don't, it is necessary to know how much memory is required in > the response. > > Signed-off-by: Stefano Stabellini > --- IIUC the transport used in Xen requires you pass the size when sending a P9_RREAD message back to the guest, i.e. only in the case when is_write is false, correct ? If so, for better clarity, what about having two distinct init_in_iov_from_pdu and init_out_iov_from_pdu ops, with an explicit comment in the virtio-9p implementation of init_in_iov_from_pdu so that someone isn't tempted to drop the apparently unused size argument ? Would this be ok for you on the Xen side ? Cheers. -- Greg > hw/9pfs/9p.c | 2 +- > hw/9pfs/9p.h | 2 +- > hw/9pfs/virtio-9p-device.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c > index b6ec042..b82212b 100644 > --- a/hw/9pfs/9p.c > +++ b/hw/9pfs/9p.c > @@ -1652,7 +1652,7 @@ static void v9fs_init_qiov_from_pdu(QEMUIOVector *qiov, V9fsPDU *pdu, > struct iovec *iov; > unsigned int niov; > > - pdu->s->transport->init_iov_from_pdu(pdu, &iov, &niov, is_write); > + pdu->s->transport->init_iov_from_pdu(pdu, &iov, &niov, is_write, skip + size); > > qemu_iovec_init_external(&elem, iov, niov); > qemu_iovec_init(qiov, niov); > diff --git a/hw/9pfs/9p.h b/hw/9pfs/9p.h > index ab398d0..c830188 100644 > --- a/hw/9pfs/9p.h > +++ b/hw/9pfs/9p.h > @@ -348,7 +348,7 @@ struct V9fsTransport { > ssize_t (*pdu_vmarshal)(V9fsPDU *pdu, size_t offset, const char *fmt, va_list ap); > ssize_t (*pdu_vunmarshal)(V9fsPDU *pdu, size_t offset, const char *fmt, va_list ap); > void (*init_iov_from_pdu)(V9fsPDU *pdu, struct iovec **piov, > - unsigned int *pniov, bool is_write); > + unsigned int *pniov, bool is_write, size_t size); > void (*push_and_notify)(V9fsPDU *pdu); > }; > > diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c > index e1a37a4..e2b27e8 100644 > --- a/hw/9pfs/virtio-9p-device.c > +++ b/hw/9pfs/virtio-9p-device.c > @@ -172,7 +172,7 @@ static ssize_t virtio_pdu_vunmarshal(V9fsPDU *pdu, size_t offset, > } > > static void virtio_init_iov_from_pdu(V9fsPDU *pdu, struct iovec **piov, > - unsigned int *pniov, bool is_write) > + unsigned int *pniov, bool is_write, size_t size) > { > V9fsState *s = pdu->s; > V9fsVirtioState *v = container_of(s, V9fsVirtioState, state); From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg Kurz Subject: Re: [PATCH 4/4] 9pfs: add a size parameter to init_iov_from_pdu Date: Thu, 24 Nov 2016 17:17:17 +0100 Message-ID: <20161124171717.3870e91b@bahia> References: <1479764372-29470-1-git-send-email-sstabellini@kernel.org> <1479764372-29470-4-git-send-email-sstabellini@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1479764372-29470-4-git-send-email-sstabellini@kernel.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Stefano Stabellini Cc: anthony.perard@citrix.com, xen-devel@lists.xensource.com, wei.liu2@citrix.com, aneesh.kumar@linux.vnet.ibm.com, qemu-devel@nongnu.org List-Id: xen-devel@lists.xenproject.org T24gTW9uLCAyMSBOb3YgMjAxNiAxMzozOTozMiAtMDgwMApTdGVmYW5vIFN0YWJlbGxpbmkgPHNz dGFiZWxsaW5pQGtlcm5lbC5vcmc+IHdyb3RlOgoKPiBOb3QgYWxsIDlwZnMgdHJhbnNwb3J0cyBz aGFyZSBtZW1vcnkgYmV0d2VlbiByZXF1ZXN0IGFuZCByZXNwb25zZS4gRm9yCj4gdGhvc2Ugd2hv IGRvbid0LCBpdCBpcyBuZWNlc3NhcnkgdG8ga25vdyBob3cgbXVjaCBtZW1vcnkgaXMgcmVxdWly ZWQgaW4KPiB0aGUgcmVzcG9uc2UuCj4gCj4gU2lnbmVkLW9mZi1ieTogU3RlZmFubyBTdGFiZWxs aW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgo+IC0tLQoKSUlVQyB0aGUgdHJhbnNwb3J0IHVz ZWQgaW4gWGVuIHJlcXVpcmVzIHlvdSBwYXNzIHRoZSBzaXplIHdoZW4gc2VuZGluZyBhClA5X1JS RUFEIG1lc3NhZ2UgYmFjayB0byB0aGUgZ3Vlc3QsIGkuZS4gb25seSBpbiB0aGUgY2FzZSB3aGVu IGlzX3dyaXRlIGlzCmZhbHNlLCBjb3JyZWN0ID8KCklmIHNvLCBmb3IgYmV0dGVyIGNsYXJpdHks IHdoYXQgYWJvdXQgaGF2aW5nIHR3byBkaXN0aW5jdCBpbml0X2luX2lvdl9mcm9tX3BkdQphbmQg aW5pdF9vdXRfaW92X2Zyb21fcGR1IG9wcywgd2l0aCBhbiBleHBsaWNpdCBjb21tZW50IGluIHRo ZSB2aXJ0aW8tOXAKaW1wbGVtZW50YXRpb24gb2YgaW5pdF9pbl9pb3ZfZnJvbV9wZHUgc28gdGhh dCBzb21lb25lIGlzbid0IHRlbXB0ZWQgdG8gZHJvcAp0aGUgYXBwYXJlbnRseSB1bnVzZWQgc2l6 ZSBhcmd1bWVudCA/IFdvdWxkIHRoaXMgYmUgb2sgZm9yIHlvdSBvbiB0aGUgWGVuCnNpZGUgPwoK Q2hlZXJzLgoKLS0KR3JlZwoKPiAgaHcvOXBmcy85cC5jICAgICAgICAgICAgICAgfCAyICstCj4g IGh3LzlwZnMvOXAuaCAgICAgICAgICAgICAgIHwgMiArLQo+ICBody85cGZzL3ZpcnRpby05cC1k ZXZpY2UuYyB8IDIgKy0KPiAgMyBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2h3LzlwZnMvOXAuYyBiL2h3LzlwZnMvOXAuYwo+ IGluZGV4IGI2ZWMwNDIuLmI4MjIxMmIgMTAwNjQ0Cj4gLS0tIGEvaHcvOXBmcy85cC5jCj4gKysr IGIvaHcvOXBmcy85cC5jCj4gQEAgLTE2NTIsNyArMTY1Miw3IEBAIHN0YXRpYyB2b2lkIHY5ZnNf aW5pdF9xaW92X2Zyb21fcGR1KFFFTVVJT1ZlY3RvciAqcWlvdiwgVjlmc1BEVSAqcGR1LAo+ICAg ICAgc3RydWN0IGlvdmVjICppb3Y7Cj4gICAgICB1bnNpZ25lZCBpbnQgbmlvdjsKPiAgCj4gLSAg ICBwZHUtPnMtPnRyYW5zcG9ydC0+aW5pdF9pb3ZfZnJvbV9wZHUocGR1LCAmaW92LCAmbmlvdiwg aXNfd3JpdGUpOwo+ICsgICAgcGR1LT5zLT50cmFuc3BvcnQtPmluaXRfaW92X2Zyb21fcGR1KHBk dSwgJmlvdiwgJm5pb3YsIGlzX3dyaXRlLCBza2lwICsgc2l6ZSk7Cj4gIAo+ICAgICAgcWVtdV9p b3ZlY19pbml0X2V4dGVybmFsKCZlbGVtLCBpb3YsIG5pb3YpOwo+ICAgICAgcWVtdV9pb3ZlY19p bml0KHFpb3YsIG5pb3YpOwo+IGRpZmYgLS1naXQgYS9ody85cGZzLzlwLmggYi9ody85cGZzLzlw LmgKPiBpbmRleCBhYjM5OGQwLi5jODMwMTg4IDEwMDY0NAo+IC0tLSBhL2h3LzlwZnMvOXAuaAo+ ICsrKyBiL2h3LzlwZnMvOXAuaAo+IEBAIC0zNDgsNyArMzQ4LDcgQEAgc3RydWN0IFY5ZnNUcmFu c3BvcnQgewo+ICAgICAgc3NpemVfdCAgICAgKCpwZHVfdm1hcnNoYWwpKFY5ZnNQRFUgKnBkdSwg c2l6ZV90IG9mZnNldCwgY29uc3QgY2hhciAqZm10LCB2YV9saXN0IGFwKTsKPiAgICAgIHNzaXpl X3QgICAgICgqcGR1X3Z1bm1hcnNoYWwpKFY5ZnNQRFUgKnBkdSwgc2l6ZV90IG9mZnNldCwgY29u c3QgY2hhciAqZm10LCB2YV9saXN0IGFwKTsKPiAgICAgIHZvaWQgICAgICAgICgqaW5pdF9pb3Zf ZnJvbV9wZHUpKFY5ZnNQRFUgKnBkdSwgc3RydWN0IGlvdmVjICoqcGlvdiwKPiAtICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICpwbmlvdiwgYm9vbCBpc193cml0ZSk7 Cj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqcG5pb3YsIGJv b2wgaXNfd3JpdGUsIHNpemVfdCBzaXplKTsKPiAgICAgIHZvaWQgICAgICAgICgqcHVzaF9hbmRf bm90aWZ5KShWOWZzUERVICpwZHUpOwo+ICB9Owo+ICAKPiBkaWZmIC0tZ2l0IGEvaHcvOXBmcy92 aXJ0aW8tOXAtZGV2aWNlLmMgYi9ody85cGZzL3ZpcnRpby05cC1kZXZpY2UuYwo+IGluZGV4IGUx YTM3YTQuLmUyYjI3ZTggMTAwNjQ0Cj4gLS0tIGEvaHcvOXBmcy92aXJ0aW8tOXAtZGV2aWNlLmMK PiArKysgYi9ody85cGZzL3ZpcnRpby05cC1kZXZpY2UuYwo+IEBAIC0xNzIsNyArMTcyLDcgQEAg c3RhdGljIHNzaXplX3QgdmlydGlvX3BkdV92dW5tYXJzaGFsKFY5ZnNQRFUgKnBkdSwgc2l6ZV90 IG9mZnNldCwKPiAgfQo+ICAKPiAgc3RhdGljIHZvaWQgdmlydGlvX2luaXRfaW92X2Zyb21fcGR1 KFY5ZnNQRFUgKnBkdSwgc3RydWN0IGlvdmVjICoqcGlvdiwKPiAtICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdW5zaWduZWQgaW50ICpwbmlvdiwgYm9vbCBpc193cml0ZSkKPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICpwbmlvdiwgYm9vbCBpc193cml0 ZSwgc2l6ZV90IHNpemUpCj4gIHsKPiAgICAgIFY5ZnNTdGF0ZSAqcyA9IHBkdS0+czsKPiAgICAg IFY5ZnNWaXJ0aW9TdGF0ZSAqdiA9IGNvbnRhaW5lcl9vZihzLCBWOWZzVmlydGlvU3RhdGUsIHN0 YXRlKTsKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlz dHMueGVuLm9yZy94ZW4tZGV2ZWwK