[adding qemu-devel] Background to those new to the thread: Previously, libvirt has been tracking a lot of disk tunables alongside the active layer of a backing chain, without regards to any backing files in the chain. However, now that qemu supports named BDS nodes anywhere in the backing chain, I'm realizing that libvirt needs to track the entire backing chain in its <domain> XML for maximum control over each qemu BDS. On 03/13/2014 09:26 AM, Eric Blake wrote: > In making the proposed split, I noticed that we've abused the <driver> > element to contain a hodgepodge of things that are per-device (for > example, cache is a per-device setting, while format is a per-file > setting), so I'm now trying to figure out how to tweak the XML to > express the difference. I may end up keeping <driver> only at the top > level, and adding a new <format> subelement inside <backingStore>, then > for back-compat reasons duplicate <driver format='...'/> and <format> at > the top level, or teaching the disk source formatter to merely append in > a string of device-level attributes when formatting the active disk of > the chain. Among other things, libvirt can append the following to a -drive command-line option: cache= aio= rerror= werror= discard= sgio= bps= ... Looking in the schema file, BlockdevOptionsBase supports many of this options on a per blockdev basis. Does that mean that libvirt should allow for a different rerror= on a backing file than it does for the active file? Similarly for cache= or discard=? Or are some of these options really only sensible at the active layer, belonging more to the -drive than to each backing BDS within the drive? Knowing which options belong where will help me partition the libvirt structure into attributes that are per-file vs. those that are per-device. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list