From: Paolo Bonzini <pbonzini@redhat.com> To: Stefan Hajnoczi <stefanha@redhat.com> Cc: linux-kernel@vger.kernel.org, kvm@vger.kernel.org, gaowanlong@cn.fujitsu.com, hutao@cn.fujitsu.com, linux-scsi@vger.kernel.org, virtualization@lists.linux-foundation.org, mst@redhat.com, rusty@rustcorp.com.au, asias@redhat.com, nab@linux-iscsi.org Subject: Re: [PATCH v2 1/5] virtio: add functions for piecewise addition of buffers Date: Wed, 19 Dec 2012 13:04:08 +0100 [thread overview] Message-ID: <50D1AD38.7070606@redhat.com> (raw) In-Reply-To: <20121219104722.GA5832@stefanha-thinkpad.redhat.com> Il 19/12/2012 11:47, Stefan Hajnoczi ha scritto: > On Tue, Dec 18, 2012 at 01:32:48PM +0100, Paolo Bonzini wrote: >> +/** >> + * virtqueue_start_buf - start building buffer for the other end >> + * @vq: the struct virtqueue we're talking about. >> + * @buf: a struct keeping the state of the buffer >> + * @data: the token identifying the buffer. >> + * @count: the number of buffers that will be added > > Perhaps count should be named count_bufs or num_bufs. Ok. >> + * @count_sg: the number of sg lists that will be added > > What is the purpose of count_sg? It is needed to decide whether to use an indirect or a direct buffer. The idea is to avoid a memory allocation if the driver is providing us with separate sg elements (under the assumption that they will be few). Originally I wanted to use a mix of direct and indirect buffer (direct if add_buf received a one-element scatterlist, otherwise indirect). It would have had the same effect, without having to specify count_sg in advance. The spec is not clear if that is allowed or not, but in the end they do not work with either QEMU or vhost, so I chose this alternative instead. Paolo > Stefan >
WARNING: multiple messages have this Message-ID (diff)
From: Paolo Bonzini <pbonzini@redhat.com> To: Stefan Hajnoczi <stefanha@redhat.com> Cc: linux-scsi@vger.kernel.org, kvm@vger.kernel.org, mst@redhat.com, hutao@cn.fujitsu.com, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org Subject: Re: [PATCH v2 1/5] virtio: add functions for piecewise addition of buffers Date: Wed, 19 Dec 2012 13:04:08 +0100 [thread overview] Message-ID: <50D1AD38.7070606@redhat.com> (raw) In-Reply-To: <20121219104722.GA5832@stefanha-thinkpad.redhat.com> Il 19/12/2012 11:47, Stefan Hajnoczi ha scritto: > On Tue, Dec 18, 2012 at 01:32:48PM +0100, Paolo Bonzini wrote: >> +/** >> + * virtqueue_start_buf - start building buffer for the other end >> + * @vq: the struct virtqueue we're talking about. >> + * @buf: a struct keeping the state of the buffer >> + * @data: the token identifying the buffer. >> + * @count: the number of buffers that will be added > > Perhaps count should be named count_bufs or num_bufs. Ok. >> + * @count_sg: the number of sg lists that will be added > > What is the purpose of count_sg? It is needed to decide whether to use an indirect or a direct buffer. The idea is to avoid a memory allocation if the driver is providing us with separate sg elements (under the assumption that they will be few). Originally I wanted to use a mix of direct and indirect buffer (direct if add_buf received a one-element scatterlist, otherwise indirect). It would have had the same effect, without having to specify count_sg in advance. The spec is not clear if that is allowed or not, but in the end they do not work with either QEMU or vhost, so I chose this alternative instead. Paolo > Stefan >
next prev parent reply other threads:[~2012-12-19 12:04 UTC|newest] Thread overview: 86+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-12-18 12:32 [PATCH v2 0/5] Multiqueue virtio-scsi, and API for piecewise buffer submission Paolo Bonzini 2012-12-18 12:32 ` Paolo Bonzini 2012-12-18 12:32 ` [PATCH v2 1/5] virtio: add functions for piecewise addition of buffers Paolo Bonzini 2012-12-18 12:32 ` Paolo Bonzini 2012-12-18 13:36 ` Michael S. Tsirkin 2012-12-18 13:36 ` Michael S. Tsirkin 2012-12-18 13:43 ` Paolo Bonzini 2012-12-18 13:43 ` Paolo Bonzini 2012-12-18 13:59 ` Michael S. Tsirkin 2012-12-18 13:59 ` Michael S. Tsirkin 2012-12-18 14:32 ` Paolo Bonzini 2012-12-18 14:32 ` Paolo Bonzini 2012-12-18 15:06 ` Michael S. Tsirkin 2012-12-18 15:06 ` Michael S. Tsirkin 2012-12-19 10:47 ` Stefan Hajnoczi 2012-12-19 10:47 ` Stefan Hajnoczi 2012-12-19 12:04 ` Paolo Bonzini [this message] 2012-12-19 12:04 ` Paolo Bonzini 2012-12-19 12:40 ` Stefan Hajnoczi 2012-12-19 12:40 ` Stefan Hajnoczi 2012-12-19 16:51 ` Michael S. Tsirkin 2012-12-19 16:51 ` Michael S. Tsirkin 2012-12-19 16:52 ` Michael S. Tsirkin 2012-12-19 16:52 ` Michael S. Tsirkin 2013-01-02 5:03 ` Rusty Russell 2013-01-02 5:03 ` Rusty Russell 2013-01-03 8:58 ` Wanlong Gao 2013-01-03 8:58 ` Wanlong Gao 2013-01-03 8:58 ` Wanlong Gao 2013-01-06 23:32 ` Rusty Russell 2013-01-06 23:32 ` Rusty Russell 2013-01-06 23:32 ` Rusty Russell 2013-01-03 9:22 ` Paolo Bonzini 2013-01-03 9:22 ` Paolo Bonzini 2013-01-07 0:02 ` Rusty Russell 2013-01-07 0:02 ` Rusty Russell 2013-01-07 14:27 ` Paolo Bonzini 2013-01-08 0:12 ` Rusty Russell 2013-01-08 0:12 ` Rusty Russell 2013-01-10 8:44 ` Paolo Bonzini 2012-12-18 12:32 ` [PATCH v2 2/5] virtio-scsi: use functions for piecewise composition " Paolo Bonzini 2012-12-18 12:32 ` Paolo Bonzini 2012-12-18 13:37 ` Michael S. Tsirkin 2012-12-18 13:37 ` Michael S. Tsirkin 2012-12-18 13:35 ` Paolo Bonzini 2012-12-18 13:35 ` Paolo Bonzini 2012-12-18 12:32 ` [PATCH v2 3/5] virtio-scsi: redo allocation of target data Paolo Bonzini 2012-12-18 12:32 ` Paolo Bonzini 2012-12-18 12:32 ` [PATCH v2 4/5] virtio-scsi: pass struct virtio_scsi to virtqueue completion function Paolo Bonzini 2012-12-18 12:32 ` Paolo Bonzini 2012-12-18 12:32 ` [PATCH v2 5/5] virtio-scsi: introduce multiqueue support Paolo Bonzini 2012-12-18 13:57 ` Michael S. Tsirkin 2012-12-18 13:57 ` Michael S. Tsirkin 2012-12-18 14:08 ` Paolo Bonzini 2012-12-18 14:08 ` Paolo Bonzini 2012-12-18 15:03 ` Michael S. Tsirkin 2012-12-18 15:03 ` Michael S. Tsirkin 2012-12-18 15:51 ` Paolo Bonzini 2012-12-18 15:51 ` Paolo Bonzini 2012-12-18 16:02 ` Michael S. Tsirkin 2012-12-18 16:02 ` Michael S. Tsirkin 2012-12-25 12:41 ` Wanlong Gao 2012-12-25 12:41 ` Wanlong Gao 2012-12-19 11:27 ` Stefan Hajnoczi 2012-12-19 11:27 ` Stefan Hajnoczi 2012-12-18 12:32 ` Paolo Bonzini 2012-12-18 13:42 ` [PATCH v2 0/5] Multiqueue virtio-scsi, and API for piecewise buffer submission Michael S. Tsirkin 2012-12-18 13:42 ` Michael S. Tsirkin 2012-12-24 6:44 ` Wanlong Gao 2012-12-24 6:44 ` Wanlong Gao 2012-12-18 22:18 ` Rolf Eike Beer 2012-12-19 8:52 ` Paolo Bonzini 2012-12-19 8:52 ` Paolo Bonzini 2012-12-19 11:32 ` Michael S. Tsirkin 2012-12-19 11:32 ` Michael S. Tsirkin 2012-12-18 22:18 ` Rolf Eike Beer 2013-01-15 9:48 ` [PATCH 1/2] virtio-scsi: split out request queue set affinity function Wanlong Gao 2013-01-15 9:48 ` Wanlong Gao 2013-01-15 9:50 ` [PATCH 2/2] virtio-scsi: reset virtqueue affinity when doing cpu hotplug Wanlong Gao 2013-01-15 9:50 ` Wanlong Gao 2013-01-16 3:31 ` Rusty Russell 2013-01-16 3:31 ` Rusty Russell 2013-01-16 3:55 ` Wanlong Gao 2013-01-16 3:55 ` Wanlong Gao 2013-02-06 17:27 ` Paolo Bonzini 2013-02-06 17:27 ` Paolo Bonzini
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=50D1AD38.7070606@redhat.com \ --to=pbonzini@redhat.com \ --cc=asias@redhat.com \ --cc=gaowanlong@cn.fujitsu.com \ --cc=hutao@cn.fujitsu.com \ --cc=kvm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-scsi@vger.kernel.org \ --cc=mst@redhat.com \ --cc=nab@linux-iscsi.org \ --cc=rusty@rustcorp.com.au \ --cc=stefanha@redhat.com \ --cc=virtualization@lists.linux-foundation.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.