From: Rusty Russell <rusty@rustcorp.com.au>
To: Asias He <asias@redhat.com>
Cc: mst@redhat.com, virtualization@lists.linux-foundation.org,
sjur.brandeland@stericsson.com
Subject: Re: [PATCH 4/6] virtio_ring: virtqueue_add_outbuf / virtqueue_add_inbuf.
Date: Thu, 07 Mar 2013 11:33:19 +1100 [thread overview]
Message-ID: <87boaw9hgw.fsf@rustcorp.com.au> (raw)
In-Reply-To: <20130306083730.GB5281@hj.localdomain>
Asias He <asias@redhat.com> writes:
> On Wed, Mar 06, 2013 at 04:23:24PM +1100, Rusty Russell wrote:
>> These are specialized versions of virtqueue_add_buf(), which cover
>> over 80% of cases and are far clearer.
>>
>> In particular, the scatterlists passed to these functions don't have
>> to be clean (ie. we ignore end markers).
>>
>> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
>
> So, what is the plan for the following ideas discussed in the other
> thread?
>
> '''
> > Looking at code, it seems that most users really have a single sg, in
> > low memory. So how about simply passing void * instead of sg? Whoever
> > has multiple sgs can use the rich interface.
>
> Good point, let's do that:
> 1) Make virtqueue_add_outbuf()/inbuf() take a void * and len.
> 2) Transfer users across to use that.
> 3) Make everyone else use clean scatterlists with virtqueue_add_sgs[].
> 4) Remove virtqueue_add_bufs().
Networking performance: there is still a performance penalty in using
virtqueue_add_sgs(), and it can't use a simple void * and len.
So I changed my mind. Again...
Cheers,
Rusty.
next prev parent reply other threads:[~2013-03-07 0:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-06 5:15 [PATCH 0/6] virtio_add_buf replacement Rusty Russell
2013-03-06 5:19 ` [PATCH 1/6] virtio_ring: virtqueue_add_sgs, to add multiple sgs Rusty Russell
2013-03-06 5:19 ` Rusty Russell
2013-03-06 5:20 ` [PATCH 2/6] virtio_ring: don't count elements twice for add_buf path Rusty Russell
2013-03-06 5:22 ` [PATCH 3/6] virtio_ring: inline internal vring functions more aggressively Rusty Russell
2013-03-06 10:24 ` Michael S. Tsirkin
2013-03-06 23:02 ` Rusty Russell
2013-03-06 5:23 ` [PATCH 4/6] virtio_ring: virtqueue_add_outbuf / virtqueue_add_inbuf Rusty Russell
2013-03-06 8:37 ` Asias He
2013-03-07 0:33 ` Rusty Russell [this message]
2013-03-07 8:15 ` Asias He
2013-03-06 5:24 ` [PATCH 5/6] tools/virtio: make vringh_test use inbuf/outbuf Rusty Russell
2013-03-06 5:24 ` [PATCH 6/6] virtio_scsi: use virtqueue_add_inbuf() for virtscsi_kick_event Rusty Russell
2013-03-06 8:09 ` [PATCH 0/6] virtio_add_buf replacement Asias He
2013-03-07 0:35 ` Rusty Russell
2013-03-07 8:22 ` Asias He
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=87boaw9hgw.fsf@rustcorp.com.au \
--to=rusty@rustcorp.com.au \
--cc=asias@redhat.com \
--cc=mst@redhat.com \
--cc=sjur.brandeland@stericsson.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: link
Be 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.