From: Rusty Russell <rusty@rustcorp.com.au>
To: Ohad Ben-Cohen <ohad@wizery.com>, Suman Anna <s-anna@ti.com>,
Loic Pallardy <loic.pallardy@stericsson.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
"Sjur Brændeland" <sjur@brendeland.net>,
"Linus Walleij" <linus.walleij@linaro.org>,
"Erwan Yvin" <erwan.yvin@stericsson.com>,
virtualization <virtualization@lists.linux-foundation.org>,
"Sjur Brændeland" <sjur.brandeland@stericsson.com>
Subject: Re: [PATCHv2 virtio-next] remoteproc: Add support for host virtio rings (vringh)
Date: Mon, 29 Apr 2013 10:03:04 +0930 [thread overview]
Message-ID: <87ehdudvlr.fsf@rustcorp.com.au> (raw)
In-Reply-To: <CAK=WgbYYjJz-g+hCWkohgJGnvvtnq0b8RAG-YV3wug4NZ-DWPw@mail.gmail.com>
Ohad Ben-Cohen <ohad@wizery.com> writes:
> On Tue, Apr 23, 2013 at 6:46 AM, Rusty Russell <rusty@rustcorp.com.au> wrote:
>> Oh, we can break everything :)
>>
>> I was concentrating purely on the mechanics of the virtqueue, mainly
>> because vhost has special needs wrt tracking changes. vhost doesn't use
>> vringh yet because my patches are slightly suboptimal (I stick with the
>> vhost API, just replace the guts with vringh). Michael has a
>> simplification of vhost-net pending, which will make altering this much
>> easier.
>>
>> But CAIF isn't the right thing to optimize for, either. It's weird to
>> have both host and guest rings at the same time, and I don't see other
>> users doing that (ie. vhost_net and tcm_vhost). But if we can make it
>> easier for you without overly uglifying vringh, that'd be great.
>
> Thanks.
>
> Today with one application processor talking to one or several remote
> cores we live well with guest rings, but future SoCs seems to be
> having an increasing number of on-chip cores which all talk to each
> other. Managing this matrix of communications with guest rings is
> somewhat cumbersome - it requires deciding, for every two cores, who
> is "the guest" and who is "the host". As the number of edges in this
> graph increases, this would be increasingly harder to develop, set up
> and debug.
>
> In such environments it makes sense to have, for each pair of on-chip
> cores, 1 guest and 1 host ring. This way each core will maintain its
> own TX buffers and send a buffer across whenever it has a pending
> outbound message. This also works well with systems where each core
> has its own memory which only it can write to, and from which others
> could only read.
>
> So I expect additional users for this paradigm CAIF has adopted -
> probably rpmsg at the very least - which makes it even more appealing
> to clean up nicely. Last year I discussed this at least with Loic
> (STE) and Suman (TI) and both companies were actively developing this
> for their future SoCs - I'm cc'ing both in case there are any updates.
Perhaps we should add a new struct virtio_pair (?), with associated ops,
which works on top of the existing stuff. That may be too many levels
of abstraction, but it feels right.
I don't mind Sjur's current simple code; there's nothing magical about
upstream APIs, and I'm happy to merge it now and add an abstraction
later. It's a pretty common practice, but it's your call.
Cheers,
Rusty.
next prev parent reply other threads:[~2013-04-29 0:33 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-09 21:39 [PATCHv2 virtio-next] remoteproc: Add support for host virtio rings (vringh) Sjur Brændeland
2013-04-22 13:08 ` Ohad Ben-Cohen
2013-04-23 3:46 ` Rusty Russell
2013-04-23 11:02 ` Ohad Ben-Cohen
2013-04-24 8:48 ` Loic PALLARDY
2013-04-29 0:33 ` Rusty Russell [this message]
2013-05-01 5:42 ` Ohad Ben-Cohen
2013-04-23 8:32 ` Sjur Brændeland
2013-04-23 14:16 ` Ohad Ben-Cohen
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=87ehdudvlr.fsf@rustcorp.com.au \
--to=rusty@rustcorp.com.au \
--cc=erwan.yvin@stericsson.com \
--cc=linus.walleij@linaro.org \
--cc=loic.pallardy@stericsson.com \
--cc=mst@redhat.com \
--cc=ohad@wizery.com \
--cc=s-anna@ti.com \
--cc=sjur.brandeland@stericsson.com \
--cc=sjur@brendeland.net \
--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.