
On 10/25/21 14:05, Kashyap Chamarthy wrote:
On Mon, Oct 25, 2021 at 07:25:24AM +0200, Markus Armbruster wrote:
By convention, names starting with "x-" are experimental. The parts of external interfaces so named may be withdrawn or changed incompatibly in future releases.
Drawback: promoting something from experimental to stable involves a name change. Client code needs to be updated.
Moreover, the convention is not universally observed:
* QOM type "input-barrier" has properties "x-origin", "y-origin". Looks accidental, but it's ABI since 4.2.
* QOM types "memory-backend-file", "memory-backend-memfd", "memory-backend-ram", and "memory-backend-epc" have a property "x-use-canonical-path-for-ramblock-id" that is documented to be stable despite its name.
Looks like there's another stable property with an "x-" prefix: "x-remote-object", part of QOM type @RemoteObjectProperties.
IIRC "x-remote-object" and RemoteObjectProperties are not stable.