From: Mario Smarduch <m.smarduch@samsung.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "KONRAD Frédéric" <fred.konrad@greensocs.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"QEMU Developers" <qemu-devel@nongnu.org>,
"Anthony Liguori" <aliguori@amazon.com>,
"Patch Tracking" <patches@linaro.org>
Subject: Re: [Qemu-devel] [PATCH] virtio: set virtio-net/virtio-mmio host features
Date: Thu, 20 Feb 2014 13:59:59 -0800 [thread overview]
Message-ID: <53067ADF.7060604@samsung.com> (raw)
In-Reply-To: <CAFEAcA84FuFLPfnzaJMnoDxbejey_7or4MFQodhcRi=eJT9XWQ@mail.gmail.com>
On 02/20/2014 11:35 AM, Peter Maydell wrote:
> On 20 February 2014 19:09, Mario Smarduch <m.smarduch@samsung.com> wrote:
>> host features since you don't know what virtio device will be plugged
>> in later.
>
> I think this function is the right place to set these properties,
> yes. What I'm saying is that I don't see why you're doing it
> this way rather than using the existing per-backend hook.
> Maybe there's a reason not to use that hook, but you don't say.
>
Appears virtio-net beckend hooks are common to several transports,
and would require virtio-mmio exception to set the host_features.
If I'm missing something please recommend.
>> It's virtio_net_properties[] can only set virtio-net
>> properites when it's instantiated. I think the proper way would
>> be to refactor virtio-mmio to similar structure PCI version uses then
>> one virtio_net_properties[] can be used selecting PCI or virtio-mmio at
>> compile time. But right now it's unclear to me how pci and virtio-mmio
>> versions intend to co-exist.
>
> This is the result of a refactoring last year to allow virtio-mmio.
> Basically the underlying structure now is:
>
> [some virtio transport device] <- virtio bus -> [virtio backend]
>
> where the transport could be mmio, PCI, CCW, etc, and the
> backend is net, blk, balloon, etc. We also provide devices
> which are "virtio PCI transport plus a specific backend"
> for (a) user convenience and (b) backwards compatibility, since
> the pre-refactoring structure put the transport and backend
> all in one lump. The all-in-one-lump arrangement is legacy:
> we shouldn't break it, but it's not the model for virtio-mmio
> to follow either.
>
> The transport shouldn't know anything specific about the
> backend it's plugged into (or vice-versa), but it's fine
> for there to be hook functions so the transport and backend
> can call each other at the appropriate times.
>
> thanks
> -- PMM
>
next prev parent reply other threads:[~2014-02-20 22:00 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <52FD328A.40605@samsung.com>
2014-02-13 21:13 ` [Qemu-devel] [PATCH] virtio: set virtio-net/virtio-mmio host features Mario Smarduch
2014-02-14 23:49 ` Peter Maydell
2014-02-20 18:12 ` Mario Smarduch
2014-02-20 18:30 ` Peter Maydell
2014-02-20 19:09 ` Mario Smarduch
2014-02-20 19:35 ` Peter Maydell
2014-02-20 21:59 ` Mario Smarduch [this message]
2014-02-20 22:10 ` Peter Maydell
2014-02-20 22:36 ` Mario Smarduch
2014-02-20 22:47 ` Peter Maydell
2014-02-20 23:17 ` Mario Smarduch
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=53067ADF.7060604@samsung.com \
--to=m.smarduch@samsung.com \
--cc=aliguori@amazon.com \
--cc=fred.konrad@greensocs.com \
--cc=mst@redhat.com \
--cc=patches@linaro.org \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.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.