Mark Cave-Ayland <mark.caveayl...@nutanix.com> writes:

> On a related note this also brings us back to the discussion as to the 
> relationship between qdev and QOM: at one point I was under the impression 
> that qdev properties were simply QOM properties that were exposed externally, 
> i.e on the commmand line for use with -device.
>
> Can you provide an update on what the current thinking is in this area, in 
> particular re: scoping of qdev vs QOM properties?

qdev is a leaky layer above QOM.

qdev properties are also QOM properties.

All device properties are exposed externally.

We use device properties for:

* Letting users configure pluggable devices, with -device or device_add

* Letting code configure onboard devices

  For onboard devices that are also pluggable, everything exposed to
  code is also exposed externally.  This might be a mistake in places.

* Letting the machine versioning machinery adjust device configuration

  Some properties are meant to be used just for this.  They're exposed
  externally regardless, which is a mistake.


Reply via email to