On Fri, 2019-01-18 at 11:44 +0000, Daniel P. Berrangé wrote:
For QEMU the <filesystem> element currently implies the 9p
filesystem
passthrough impl.
We already have a need to reuse it for USB-MTP filesystem sharing,
and quite soon we'll have to support virtio-fs too. The virtio-fs
module is essentially fuse-over-virtio IIUC. In fact I wonder why
we're not just calling that device virtio-fuse to make it explicit !
Anyway the point is that model=virtio-transitional is potentially
ambiguous, depending on how we intend to deal with this.
I was at first thinking of model="virtio-9p|virtio-fs|usb-mtp"
to deal with the existing issue, but you're proposing using model
already.
I'm a little mixed about how to best dovetail with the transitional
stuff. We could use 'model' stuff but expand it:
virtio-9p
virtio-9p-transitional
virtio-9p-non-transitional
virtio-fs
usb-mtp
IIUC, we don't need a -transitional/-non-transitional variant for
virtio-fs since it will be a modern device only - same as with
virtio-gpu.
Or we could do things different and invert something like a 'protocol'
concept for the filesystem.
<filesystem type='mount'>
<target dir="foo" protocol="9p|mtp|fuse"/>
</filesystem>
Welp, I wish I'd re-read this message before reviewing the previous
patch :)
It looks to me like 'model' as used by Cole and and 'protocol' as
suggested by you are basically complementary, so having both of
them seems pretty reasonable from a quick look.
--
Andrea Bolognani / Red Hat / Virtualization