From: "Michael S. Tsirkin" <mst@redhat.com>
To: Cornelia Huck <cohuck@redhat.com>
Cc: "Dr. David Alan Gilbert" <dgilbert@redhat.com>,
Roman Kiryanov <rkir@google.com>,
Gerd Hoffmann <kraxel@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
virtio-dev@lists.oasis-open.org, Lingfeng Yang <lfy@google.com>
Subject: Re: [virtio-dev] Memory sharing device
Date: Tue, 12 Feb 2019 09:03:39 -0500 [thread overview]
Message-ID: <20190212090121-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20190212144741.60083682.cohuck@redhat.com>
On Tue, Feb 12, 2019 at 02:47:41PM +0100, Cornelia Huck wrote:
> On Tue, 12 Feb 2019 11:25:47 +0000
> "Dr. David Alan Gilbert" <dgilbert@redhat.com> wrote:
>
> > * Roman Kiryanov (rkir@google.com) wrote:
> > > > > Our long term goal is to have as few kernel drivers as possible and to move
> > > > > "drivers" into userspace. If we go with the virtqueues, is there
> > > > > general a purpose
> > > > > device/driver to talk between our host and guest to support custom hardware
> > > > > (with own blobs)?
> > > >
> > > > The challenge is to answer the following question:
> > > > how to do this without losing the benefits of standartization?
> > >
> > > We looked into UIO and it still requires some kernel driver to tell
> > > where the device is, it also has limitations on sharing a device
> > > between processes. The benefit of standardization could be in avoiding
> > > everybody writing their own UIO drivers for virtual devices.
> > >
> > > Our emulator uses a battery, sound, accelerometer and more. We need to
> > > support all of this. I looked into the spec, "5 Device types", and
> > > seems "battery" is not there. We can invent our own drivers but we see
> > > having one flexible driver is a better idea.
> >
> > Can you group these devices together at all in their requirements?
> > For example, battery and accelerometers (to me) sound like low-bandwidth
> > 'sensors' with a set of key,value pairs that update occasionally
> > and a limited (no?) amount of control from the VM->host.
> > A 'virtio-values' device that carried a string list of keys that it
> > supported might make sense and be enough for at least two of your
> > device types.
>
> Maybe not a 'virtio-values' device -- but a 'virtio-sensors' device
> looks focused enough without being too inflexible. It can easily
> advertise its type (battery, etc.) and therefore avoid the mismatch
> problem that a too loosely defined device would be susceptible to.
Isn't virtio-vsock/vhost-vsock a good fit for this kind of general
string passing? People seem to use it exactly for this.
> > > Yes, I realize that a guest could think it is using the same device as
> > > the host advertised (because strings matched) while it is not. We
> > > control both the host and the guest and we can live with this.
>
> The problem is that this is not true for the general case if you have a
> standardized device type. It must be possible in theory to switch to an
> alternative implementation of the device or the driver, as long as they
> conform to the spec. I think a more concretely specified device type
> (like the suggested virtio-values or virtio-sensors) is needed for that.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
> For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
next prev parent reply other threads:[~2019-02-12 14:03 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-01 20:34 [virtio-dev] Memory sharing device Roman Kiryanov
2019-02-04 5:40 ` Stefan Hajnoczi
2019-02-04 10:13 ` Gerd Hoffmann
2019-02-04 10:18 ` Roman Kiryanov
2019-02-05 7:42 ` Roman Kiryanov
2019-02-05 10:04 ` Dr. David Alan Gilbert
2019-02-05 15:17 ` Frank Yang
2019-02-05 15:21 ` Frank Yang
2019-02-05 21:06 ` Roman Kiryanov
2019-02-06 7:03 ` Gerd Hoffmann
2019-02-06 15:09 ` Frank Yang
2019-02-06 15:11 ` Frank Yang
2019-02-08 7:57 ` Stefan Hajnoczi
2019-02-08 14:46 ` Frank Yang
2019-02-06 20:14 ` Dr. David Alan Gilbert
2019-02-06 20:27 ` Frank Yang
2019-02-07 12:10 ` Cornelia Huck
2019-02-11 14:49 ` Michael S. Tsirkin
2019-02-11 15:14 ` Frank Yang
2019-02-11 15:25 ` Frank Yang
2019-02-12 13:01 ` Michael S. Tsirkin
2019-02-12 13:16 ` Dr. David Alan Gilbert
2019-02-12 13:27 ` Michael S. Tsirkin
2019-02-12 16:17 ` Frank Yang
2019-02-19 7:17 ` Gerd Hoffmann
2019-02-19 15:59 ` Frank Yang
2019-02-20 6:51 ` Gerd Hoffmann
2019-02-20 15:31 ` Frank Yang
2019-02-21 6:55 ` Gerd Hoffmann
2019-02-19 7:12 ` Gerd Hoffmann
2019-02-19 16:02 ` Frank Yang
2019-02-20 7:02 ` Gerd Hoffmann
2019-02-20 15:32 ` Frank Yang
2019-02-21 7:29 ` Gerd Hoffmann
2019-02-21 9:24 ` Dr. David Alan Gilbert
2019-02-21 9:59 ` Gerd Hoffmann
2019-02-21 10:03 ` Dr. David Alan Gilbert
2019-02-22 6:15 ` Michael S. Tsirkin
2019-02-22 6:42 ` Gerd Hoffmann
2019-02-11 16:57 ` Michael S. Tsirkin
2019-02-12 8:27 ` Roman Kiryanov
2019-02-12 11:25 ` Dr. David Alan Gilbert
2019-02-12 13:47 ` Cornelia Huck
2019-02-12 14:03 ` Michael S. Tsirkin [this message]
2019-02-12 15:56 ` Frank Yang
2019-02-12 16:46 ` Dr. David Alan Gilbert
2019-02-12 17:20 ` Frank Yang
2019-02-12 17:26 ` Frank Yang
2019-02-12 19:06 ` Michael S. Tsirkin
2019-02-13 2:50 ` Frank Yang
2019-02-13 4:02 ` Michael S. Tsirkin
2019-02-13 4:19 ` Michael S. Tsirkin
2019-02-13 4:59 ` Frank Yang
2019-02-13 18:18 ` Frank Yang
2019-02-14 7:15 ` Frank Yang
2019-02-22 22:05 ` Michael S. Tsirkin
2019-02-24 21:19 ` Frank Yang
2019-02-13 4:59 ` Frank Yang
2019-02-19 7:54 ` Gerd Hoffmann
2019-02-19 15:54 ` Frank Yang
2019-02-20 3:46 ` Michael S. Tsirkin
2019-02-20 15:24 ` Frank Yang
2019-02-20 19:29 ` Michael S. Tsirkin
2019-02-20 6:25 ` Gerd Hoffmann
2019-02-20 15:30 ` Frank Yang
2019-02-20 15:35 ` Frank Yang
2019-02-21 6:44 ` Gerd Hoffmann
2019-02-12 18:22 ` Michael S. Tsirkin
2019-02-12 19:01 ` Frank Yang
2019-02-12 19:15 ` Michael S. Tsirkin
2019-02-12 20:15 ` Frank Yang
2019-02-12 13:00 ` Michael S. Tsirkin
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=20190212090121-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=cohuck@redhat.com \
--cc=dgilbert@redhat.com \
--cc=kraxel@redhat.com \
--cc=lfy@google.com \
--cc=rkir@google.com \
--cc=stefanha@redhat.com \
--cc=virtio-dev@lists.oasis-open.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