
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