[PATCH v2 06/34] docs: generated: macros: libvirt: append 'Since version' metadata

Victor Toso victortoso at redhat.com
Thu Apr 14 20:47:17 UTC 2022


Minor style changes by hand.

Signed-off-by: Victor Toso <victortoso at redhat.com>
---
 include/libvirt/libvirt-domain.h  | 636 +++++++++++++++++++++++++++++-
 include/libvirt/libvirt-host.h    | 123 ++++++
 include/libvirt/libvirt-network.h |  24 ++
 include/libvirt/libvirt-nodedev.h |   3 +
 include/libvirt/libvirt-secret.h  |   3 +
 include/libvirt/libvirt-storage.h |   3 +
 6 files changed, 786 insertions(+), 6 deletions(-)

diff --git a/include/libvirt/libvirt-domain.h b/include/libvirt/libvirt-domain.h
index c3dd4d33c0..4983494a0b 100644
--- a/include/libvirt/libvirt-domain.h
+++ b/include/libvirt/libvirt-domain.h
@@ -313,6 +313,9 @@ typedef enum {
  *
  * Macro represents proportional weight of the scheduler used on the
  * host cpu, when using the posix scheduler, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_CPU_SHARES "cpu_shares"
 
@@ -321,6 +324,9 @@ typedef enum {
  *
  * Macro represents the enforcement period for a quota, in microseconds,
  * for whole domain, when using the posix scheduler, as a ullong.
+ *
+ * Since: v1.3.3
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_GLOBAL_PERIOD "global_period"
 
@@ -329,6 +335,9 @@ typedef enum {
  *
  * Macro represents the maximum bandwidth to be used within a period for
  * whole domain, when using the posix scheduler, as an llong.
+ *
+ * Since: v1.3.3
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_GLOBAL_QUOTA "global_quota"
 
@@ -337,6 +346,9 @@ typedef enum {
  *
  * Macro represents the enforcement period for a quota, in microseconds,
  * for vcpus only, when using the posix scheduler, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_VCPU_PERIOD "vcpu_period"
 
@@ -345,6 +357,9 @@ typedef enum {
  *
  * Macro represents the maximum bandwidth to be used within a period for
  * vcpus only, when using the posix scheduler, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_VCPU_QUOTA "vcpu_quota"
 
@@ -354,6 +369,9 @@ typedef enum {
  * Macro represents the enforcement period for a quota in microseconds,
  * when using the posix scheduler, for all emulator activity not tied to
  * vcpus, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_EMULATOR_PERIOD "emulator_period"
 
@@ -363,6 +381,9 @@ typedef enum {
  * Macro represents the maximum bandwidth to be used within a period for
  * all emulator activity not tied to vcpus, when using the posix scheduler,
  * as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_EMULATOR_QUOTA "emulator_quota"
 
@@ -371,6 +392,9 @@ typedef enum {
  *
  * Macro represents the enforcement period for a quota, in microseconds,
  * for IOThreads only, when using the posix scheduler, as a ullong.
+ *
+ * Since: v2.2.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_IOTHREAD_PERIOD "iothread_period"
 
@@ -379,6 +403,9 @@ typedef enum {
  *
  * Macro represents the maximum bandwidth to be used within a period for
  * IOThreads only, when using the posix scheduler, as an llong.
+ *
+ * Since: v2.2.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_IOTHREAD_QUOTA "iothread_quota"
 
@@ -387,6 +414,9 @@ typedef enum {
  *
  * Macro represents the relative weight,  when using the credit
  * scheduler, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_WEIGHT "weight"
 
@@ -395,6 +425,9 @@ typedef enum {
  *
  * Macro represents the maximum scheduler cap, when using the credit
  * scheduler, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_CAP "cap"
 
@@ -403,6 +436,9 @@ typedef enum {
  *
  * Macro represents the scheduler reservation value, when using the
  * allocation scheduler, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_RESERVATION "reservation"
 
@@ -411,6 +447,9 @@ typedef enum {
  *
  * Macro represents the scheduler limit value, when using the
  * allocation scheduler, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_LIMIT "limit"
 
@@ -419,6 +458,9 @@ typedef enum {
  *
  * Macro represents the scheduler shares value, when using the
  * allocation scheduler, as an int.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SCHEDULER_SHARES "shares"
 
@@ -477,6 +519,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro providing the field length of parameter names when using
  * virDomainBlockStatsFlags().
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_FIELD_LENGTH VIR_TYPED_PARAM_FIELD_LENGTH
 
@@ -485,6 +530,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total number of read bytes of the
  * block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_READ_BYTES "rd_bytes"
 
@@ -493,6 +541,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total read requests of the
  * block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_READ_REQ "rd_operations"
 
@@ -501,6 +552,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total time spend on cache reads in
  * nano-seconds of the block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_READ_TOTAL_TIMES "rd_total_times"
 
@@ -509,6 +563,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total number of write bytes of the
  * block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_WRITE_BYTES "wr_bytes"
 
@@ -517,6 +574,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total write requests of the
  * block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_WRITE_REQ "wr_operations"
 
@@ -525,6 +585,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total time spend on cache writes in
  * nano-seconds of the block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_WRITE_TOTAL_TIMES "wr_total_times"
 
@@ -533,6 +596,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total flush requests of the
  * block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_FLUSH_REQ "flush_operations"
 
@@ -541,6 +607,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  *
  * Macro represents the total time spend on cache flushing in
  * nano-seconds of the block device, as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_FLUSH_TOTAL_TIMES "flush_total_times"
 
@@ -548,6 +617,9 @@ typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
  * VIR_DOMAIN_BLOCK_STATS_ERRS:
  *
  * In Xen this returns the mysterious 'oo_req', as an llong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_STATS_ERRS "errs"
 
@@ -969,6 +1041,9 @@ typedef enum {
  * required to transmit migration data.
  *
  * This field may not be used when VIR_MIGRATE_TUNNELLED flag is set.
+ *
+ * Since: v1.1.0
+ *
  */
 # define VIR_MIGRATE_PARAM_URI               "migrate_uri"
 
@@ -979,6 +1054,9 @@ typedef enum {
  * destination host as VIR_TYPED_PARAM_STRING. Omitting this parameter keeps
  * the domain name the same. This field is only allowed to be used with
  * hypervisors that support domain renaming during migration.
+ *
+ * Since: v1.1.0
+ *
  */
 # define VIR_MIGRATE_PARAM_DEST_NAME         "destination_name"
 
@@ -998,6 +1076,9 @@ typedef enum {
  * Omitting this parameter keeps the original domain configuration. Using this
  * field with hypervisors that do not support changing domain configuration
  * during migration will result in a failure.
+ *
+ * Since: v1.1.0
+ *
  */
 # define VIR_MIGRATE_PARAM_DEST_XML          "destination_xml"
 
@@ -1013,6 +1094,9 @@ typedef enum {
  * Omitting this parameter keeps the original domain persistent configuration.
  * Using this field with hypervisors that do not support changing domain
  * configuration during migration will result in a failure.
+ *
+ * Since: v1.3.4
+ *
  */
 # define VIR_MIGRATE_PARAM_PERSIST_XML  "persistent_xml"
 
@@ -1023,6 +1107,9 @@ typedef enum {
  * be used for migration as VIR_TYPED_PARAM_ULLONG. If set to 0 or omitted,
  * libvirt will choose a suitable default. Some hypervisors do not support this
  * feature and will return an error if this field is used and is not 0.
+ *
+ * Since: v1.1.0
+ *
  */
 # define VIR_MIGRATE_PARAM_BANDWIDTH         "bandwidth"
 
@@ -1032,6 +1119,9 @@ typedef enum {
  * virDomainMigrate* params field: the maximum bandwidth (in MiB/s) that will
  * be used for post-copy phase of a migration as VIR_TYPED_PARAM_ULLONG. If set
  * to 0 or omitted, post-copy migration speed will not be limited.
+ *
+ * Since: v5.1.0
+ *
  */
 # define VIR_MIGRATE_PARAM_BANDWIDTH_POSTCOPY "bandwidth.postcopy"
 
@@ -1053,6 +1143,9 @@ typedef enum {
  * parameters are "tlsPort" and "tlsSubject". For example,
  *
  *      spice://target.host.com:1234/?tlsPort=4567
+ *
+ * Since: v1.1.0
+ *
  */
 # define VIR_MIGRATE_PARAM_GRAPHICS_URI      "graphics_uri"
 
@@ -1064,6 +1157,9 @@ typedef enum {
  * addresses are accepted as well as hostnames (the resolving is done on
  * destination). Some hypervisors do not support this feature and will return
  * an error if this field is used.
+ *
+ * Since: v1.1.4
+ *
  */
 # define VIR_MIGRATE_PARAM_LISTEN_ADDRESS    "listen_address"
 
@@ -1073,6 +1169,9 @@ typedef enum {
  * virDomainMigrate* params multiple field: The multiple values that list
  * the block devices to be migrated. At the moment this is only supported
  * by the QEMU driver but not for the tunnelled migration.
+ *
+ * Since: v1.2.17
+ *
  */
 # define VIR_MIGRATE_PARAM_MIGRATE_DISKS    "migrate_disks"
 
@@ -1083,6 +1182,9 @@ typedef enum {
  * for incoming disks migration. Type is VIR_TYPED_PARAM_INT. If set to 0 or
  * omitted, libvirt will choose a suitable default. At the moment this is only
  * supported by the QEMU driver.
+ *
+ * Since: v1.3.3
+ *
  */
 # define VIR_MIGRATE_PARAM_DISKS_PORT    "disks_port"
 
@@ -1096,6 +1198,9 @@ typedef enum {
  * currently only supported by the QEMU driver.  UNIX URI is only usable if the
  * management application makes sure that socket created with this name on the
  * destination will be reachable from the source under the same exact path.
+ *
+ * Since: v6.8.0
+ *
  */
 # define VIR_MIGRATE_PARAM_DISKS_URI    "disks_uri"
 
@@ -1106,6 +1211,9 @@ typedef enum {
  * compress migration traffic. Supported compression methods: xbzrle, mt.
  * The parameter may be specified multiple times if more than one method
  * should be used.
+ *
+ * Since: v1.3.4
+ *
  */
 # define VIR_MIGRATE_PARAM_COMPRESSION    "compression"
 
@@ -1115,6 +1223,9 @@ typedef enum {
  * virDomainMigrate* params field: the level of compression for multithread
  * compression as VIR_TYPED_PARAM_INT. Accepted values are in range 0-9.
  * 0 is no compression, 1 is maximum speed and 9 is maximum compression.
+ *
+ * Since: v1.3.4
+ *
  */
 # define VIR_MIGRATE_PARAM_COMPRESSION_MT_LEVEL    "compression.mt.level"
 
@@ -1123,6 +1234,9 @@ typedef enum {
  *
  * virDomainMigrate* params field: the number of compression threads for
  * multithread compression as VIR_TYPED_PARAM_INT.
+ *
+ * Since: v1.3.4
+ *
  */
 # define VIR_MIGRATE_PARAM_COMPRESSION_MT_THREADS "compression.mt.threads"
 
@@ -1131,6 +1245,9 @@ typedef enum {
  *
  * virDomainMigrate* params field: the number of decompression threads for
  * multithread compression as VIR_TYPED_PARAM_INT.
+ *
+ * Since: v1.3.4
+ *
  */
 # define VIR_MIGRATE_PARAM_COMPRESSION_MT_DTHREADS "compression.mt.dthreads"
 
@@ -1139,6 +1256,9 @@ typedef enum {
  *
  * virDomainMigrate* params field: the size of page cache for xbzrle
  * compression as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.3.4
+ *
  */
 # define VIR_MIGRATE_PARAM_COMPRESSION_XBZRLE_CACHE "compression.xbzrle.cache"
 
@@ -1148,6 +1268,9 @@ typedef enum {
  * virDomainMigrate* params field: the initial percentage guest CPUs are
  * throttled to when auto-convergence decides migration is not converging.
  * As VIR_TYPED_PARAM_INT.
+ *
+ * Since: v2.0.0
+ *
  */
 # define VIR_MIGRATE_PARAM_AUTO_CONVERGE_INITIAL    "auto_converge.initial"
 
@@ -1158,6 +1281,9 @@ typedef enum {
  * VIR_MIGRATE_PARAM_AUTO_CONVERGE_INITIAL whenever the hypervisor decides
  * the current rate is not enough to ensure convergence of the migration.
  * As VIR_TYPED_PARAM_INT.
+ *
+ * Since: v2.0.0
+ *
  */
 # define VIR_MIGRATE_PARAM_AUTO_CONVERGE_INCREMENT  "auto_converge.increment"
 
@@ -1166,6 +1292,9 @@ typedef enum {
  *
  * virDomainMigrate* params field: number of connections used during parallel
  * migration. As VIR_TYPED_PARAM_INT.
+ *
+ * Since: v5.2.0
+ *
  */
 # define VIR_MIGRATE_PARAM_PARALLEL_CONNECTIONS     "parallel.connections"
 
@@ -1180,6 +1309,9 @@ typedef enum {
  * the destination hostname and the expected certificate's hostname is known,
  * this parameter can be used to pass this expected hostname when starting
  * the migration.
+ *
+ * Since: v6.0.0
+ *
  */
 # define VIR_MIGRATE_PARAM_TLS_DESTINATION          "tls.destination"
 
@@ -1442,18 +1574,27 @@ int                     virDomainGetState       (virDomainPtr domain,
  * VIR_DOMAIN_CPU_STATS_CPUTIME:
  * cpu usage (sum of both vcpu and hypervisor usage) in nanoseconds,
  * as a ullong
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_CPU_STATS_CPUTIME "cpu_time"
 
 /**
  * VIR_DOMAIN_CPU_STATS_USERTIME:
  * cpu time charged to user instructions in nanoseconds, as a ullong
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_CPU_STATS_USERTIME "user_time"
 
 /**
  * VIR_DOMAIN_CPU_STATS_SYSTEMTIME:
  * cpu time charged to system instructions in nanoseconds, as a ullong
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_CPU_STATS_SYSTEMTIME "system_time"
 
@@ -1461,6 +1602,9 @@ int                     virDomainGetState       (virDomainPtr domain,
  * VIR_DOMAIN_CPU_STATS_VCPUTIME:
  * vcpu usage in nanoseconds (cpu_time excluding hypervisor time),
  * as a ullong
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_CPU_STATS_VCPUTIME "vcpu_time"
 
@@ -1489,6 +1633,9 @@ char *                  virDomainGetSchedulerType(virDomainPtr domain,
  *
  * Macro for the Blkio tunable weight: it represents the io weight
  * the guest can use, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_DOMAIN_BLKIO_WEIGHT "weight"
@@ -1499,6 +1646,9 @@ char *                  virDomainGetSchedulerType(virDomainPtr domain,
  * Macro for the blkio tunable weight_device: it represents the
  * per-device weight, as a string.  The string is parsed as a
  * series of /path/to/device,weight elements, separated by ','.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_DOMAIN_BLKIO_DEVICE_WEIGHT "device_weight"
@@ -1510,6 +1660,9 @@ char *                  virDomainGetSchedulerType(virDomainPtr domain,
  * the number of reading the block device per second, as a string. The
  * string is parsed as a series of /path/to/device, read_iops elements,
  * separated by ','.
+ *
+ * Since: v1.2.2
+ *
  */
 
 # define VIR_DOMAIN_BLKIO_DEVICE_READ_IOPS "device_read_iops_sec"
@@ -1522,6 +1675,9 @@ char *                  virDomainGetSchedulerType(virDomainPtr domain,
  * the number of writing the block device per second, as a string. The
  * string is parsed as a series of /path/to/device, write_iops elements,
  * separated by ','.
+ *
+ * Since: v1.2.2
+ *
  */
 # define VIR_DOMAIN_BLKIO_DEVICE_WRITE_IOPS "device_write_iops_sec"
 
@@ -1533,6 +1689,9 @@ char *                  virDomainGetSchedulerType(virDomainPtr domain,
  * the bytes of reading the block device per second, as a string. The
  * string is parsed as a series of /path/to/device, read_bps elements,
  * separated by ','.
+ *
+ * Since: v1.2.2
+ *
  */
 # define VIR_DOMAIN_BLKIO_DEVICE_READ_BPS "device_read_bytes_sec"
 
@@ -1544,6 +1703,9 @@ char *                  virDomainGetSchedulerType(virDomainPtr domain,
  * the number of reading the block device per second, as a string. The
  * string is parsed as a series of /path/to/device, write_bps elements,
  * separated by ','.
+ *
+ * Since: v1.2.2
+ *
  */
 # define VIR_DOMAIN_BLKIO_DEVICE_WRITE_BPS "device_write_bytes_sec"
 
@@ -1562,6 +1724,9 @@ int     virDomainGetBlkioParameters(virDomainPtr domain,
  * VIR_DOMAIN_MEMORY_PARAM_UNLIMITED:
  *
  * Macro providing the virMemoryParameter value that indicates "unlimited"
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_DOMAIN_MEMORY_PARAM_UNLIMITED 9007199254740991LL /* = INT64_MAX >> 10 */
@@ -1571,6 +1736,9 @@ int     virDomainGetBlkioParameters(virDomainPtr domain,
  *
  * Macro for the memory tunable hard_limit: it represents the maximum memory
  * the guest can use, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_DOMAIN_MEMORY_HARD_LIMIT "hard_limit"
@@ -1580,6 +1748,9 @@ int     virDomainGetBlkioParameters(virDomainPtr domain,
  *
  * Macro for the memory tunable soft_limit: it represents the memory upper
  * limit enforced during memory contention, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_DOMAIN_MEMORY_SOFT_LIMIT "soft_limit"
@@ -1589,6 +1760,9 @@ int     virDomainGetBlkioParameters(virDomainPtr domain,
  *
  * Macro for the memory tunable min_guarantee: it represents the minimum
  * memory guaranteed to be reserved for the guest, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_DOMAIN_MEMORY_MIN_GUARANTEE "min_guarantee"
@@ -1599,6 +1773,9 @@ int     virDomainGetBlkioParameters(virDomainPtr domain,
  * Macro for the swap tunable swap_hard_limit: it represents the maximum swap
  * plus memory the guest can use, as a ullong. This limit has to be more than
  * VIR_DOMAIN_MEMORY_HARD_LIMIT.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_DOMAIN_MEMORY_SWAP_HARD_LIMIT "swap_hard_limit"
@@ -1646,6 +1823,9 @@ typedef enum {
  *
  * Macro for typed parameter name that lists the numa nodeset of a
  * domain, as a string.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_NUMA_NODESET "numa_nodeset"
 
@@ -1654,6 +1834,9 @@ typedef enum {
  *
  * Macro for typed parameter name that lists the numa mode of a domain,
  * as an int containing a virDomainNumatuneMemMode value.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_NUMA_MODE "numa_mode"
 
@@ -1776,6 +1959,9 @@ int                     virDomainInterfaceStats (virDomainPtr dom,
  * VIR_DOMAIN_BANDWIDTH_IN_AVERAGE:
  *
  * Macro represents the inbound average of NIC bandwidth, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BANDWIDTH_IN_AVERAGE "inbound.average"
 
@@ -1783,6 +1969,9 @@ int                     virDomainInterfaceStats (virDomainPtr dom,
  * VIR_DOMAIN_BANDWIDTH_IN_PEAK:
  *
  * Macro represents the inbound peak of NIC bandwidth, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BANDWIDTH_IN_PEAK "inbound.peak"
 
@@ -1790,6 +1979,9 @@ int                     virDomainInterfaceStats (virDomainPtr dom,
  * VIR_DOMAIN_BANDWIDTH_IN_BURST:
  *
  * Macro represents the inbound burst of NIC bandwidth, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BANDWIDTH_IN_BURST "inbound.burst"
 
@@ -1797,6 +1989,9 @@ int                     virDomainInterfaceStats (virDomainPtr dom,
  * VIR_DOMAIN_BANDWIDTH_IN_FLOOR:
  *
  * Macro represents the inbound floor of NIC bandwidth, as a uint.
+ *
+ * Since: v1.2.19
+ *
  */
 # define VIR_DOMAIN_BANDWIDTH_IN_FLOOR "inbound.floor"
 
@@ -1804,6 +1999,9 @@ int                     virDomainInterfaceStats (virDomainPtr dom,
  * VIR_DOMAIN_BANDWIDTH_OUT_AVERAGE:
  *
  * Macro represents the outbound average of NIC bandwidth, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BANDWIDTH_OUT_AVERAGE "outbound.average"
 
@@ -1811,6 +2009,9 @@ int                     virDomainInterfaceStats (virDomainPtr dom,
  * VIR_DOMAIN_BANDWIDTH_OUT_PEAK:
  *
  * Macro represents the outbound peak of NIC bandwidth, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BANDWIDTH_OUT_PEAK "outbound.peak"
 
@@ -1818,6 +2019,9 @@ int                     virDomainInterfaceStats (virDomainPtr dom,
  * VIR_DOMAIN_BANDWIDTH_OUT_BURST:
  *
  * Macro represents the outbound burst of NIC bandwidth, as a uint.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BANDWIDTH_OUT_BURST "outbound.burst"
 
@@ -2123,6 +2327,9 @@ int                  virDomainDelIOThread(virDomainPtr domain,
  * will cause more CPU time to be allocated the guest. A value set too
  * small will not provide enough cycles for the guest to process data.
  * The polling interval is not available for statistical purposes.
+ *
+ * Since: v4.10.0
+ *
  */
 # define VIR_DOMAIN_IOTHREAD_POLL_MAX_NS "poll_max_ns"
 
@@ -2133,6 +2340,9 @@ int                  virDomainDelIOThread(virDomainPtr domain,
  * use to grow its polling interval up to the poll_max_ns value. A value
  * of 0 (zero) allows the hypervisor to choose its own value. The algorithm
  * to use for adjustment is hypervisor specific.
+ *
+ * Since: v4.10.0
+ *
  */
 # define VIR_DOMAIN_IOTHREAD_POLL_GROW "poll_grow"
 
@@ -2144,6 +2354,9 @@ int                  virDomainDelIOThread(virDomainPtr domain,
  * the poll_max_ns value. A value of 0 (zero) allows the hypervisor to
  * choose its own value. The algorithm to use for adjustment is hypervisor
  * specific.
+ *
+ * Since: v4.10.0
+ *
  */
 # define VIR_DOMAIN_IOTHREAD_POLL_SHRINK "poll_shrink"
 
@@ -2161,6 +2374,9 @@ int                  virDomainSetIOThreadParams(virDomainPtr domain,
  *
  * This macro is to be used in conjunction with virDomainPinVcpu() API.
  * It sets the bit (CPU usable) of the related cpu in cpumap.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_USE_CPU(cpumap, cpu) ((cpumap)[(cpu) / 8] |= (1 << ((cpu) % 8)))
@@ -2172,6 +2388,9 @@ int                  virDomainSetIOThreadParams(virDomainPtr domain,
  *
  * This macro is to be used in conjunction with virDomainPinVcpu() API.
  * It resets the bit (CPU not usable) of the related cpu in cpumap.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_UNUSE_CPU(cpumap, cpu) ((cpumap)[(cpu) / 8] &= ~(1 << ((cpu) % 8)))
@@ -2183,6 +2402,9 @@ int                  virDomainSetIOThreadParams(virDomainPtr domain,
  *
  * This macro can be used in conjunction with virNodeGetCPUMap() API.
  * It returns non-zero if the bit of the related CPU is set.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_CPU_USED(cpumap, cpu) ((cpumap)[(cpu) / 8] & (1 << ((cpu) % 8)))
@@ -2194,6 +2416,9 @@ int                  virDomainSetIOThreadParams(virDomainPtr domain,
  * This macro is to be used in conjunction with virDomainPinVcpu() API.
  * It returns the length (in bytes) required to store the complete
  * CPU map between a single virtual & all physical CPUs of a domain.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_CPU_MAPLEN(cpu) (((cpu) + 7) / 8)
@@ -2215,6 +2440,9 @@ int                     virDomainGetVcpus       (virDomainPtr domain,
  * This macro is to be used in conjunction with virDomainGetVcpus() API.
  * VIR_CPU_USABLE macro returns a non-zero value (true) if the cpu
  * is usable by the vcpu, and 0 otherwise.
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_CPU_USABLE(cpumaps, maplen, vcpu, cpu) \
@@ -2233,6 +2461,9 @@ int                     virDomainGetVcpus       (virDomainPtr domain,
  * virDomainPinVcpu() APIs. VIR_COPY_CPUMAP macro extracts the cpumap of
  * the specified vcpu from cpumaps array and copies it into cpumap to be used
  * later by virDomainPinVcpu() API.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_COPY_CPUMAP(cpumaps, maplen, vcpu, cpumap) \
     memcpy(cpumap, VIR_GET_CPUMAP(cpumaps, maplen, vcpu), maplen)
@@ -2247,6 +2478,9 @@ int                     virDomainGetVcpus       (virDomainPtr domain,
  * This macro is to be used in conjunction with virDomainGetVcpus() and
  * virDomainPinVcpu() APIs. VIR_GET_CPUMAP macro returns a pointer to the
  * cpumap of the specified vcpu from cpumaps array.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_GET_CPUMAP(cpumaps, maplen, vcpu) (&((cpumaps)[(vcpu) * (maplen)]))
 
@@ -2337,6 +2571,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * which can be used to measure the usage of cache (bytes) by
  * applications running on the platform. It corresponds to the
  * "perf.cmt" field in the *Stats APIs.
+ *
+ * Since: v1.3.3
+ *
  */
 # define VIR_PERF_PARAM_CMT "cmt"
 
@@ -2347,6 +2584,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * which can be used to monitor total system bandwidth (bytes/s)
  * from one level of cache to another. It corresponds to the
  * "perf.mbmt" field in the *Stats APIs.
+ *
+ * Since: v1.3.5
+ *
 
  */
 # define VIR_PERF_PARAM_MBMT "mbmt"
@@ -2358,6 +2598,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * which can be used to monitor the amount of data (bytes/s) sent
  * through the memory controller on the socket. It corresponds to
  * the "perf.mbml" field in the *Stats APIs.
+ *
+ * Since: v1.3.5
+ *
  */
 # define VIR_PERF_PARAM_MBML "mbml"
 
@@ -2368,6 +2611,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * event which can be used to measure the count of cache misses by
  * applications running on the platform. It corresponds to the
  * "perf.cache_misses" field in the *Stats APIs.
+ *
+ * Since: v2.3.0
+ *
  */
 # define VIR_PERF_PARAM_CACHE_MISSES "cache_misses"
 
@@ -2378,6 +2624,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of cache hits
  * by applications running on the platform. It corresponds to the
  * "perf.cache_references" field in the *Stats APIs.
+ *
+ * Since: v2.3.0
+ *
  */
 # define VIR_PERF_PARAM_CACHE_REFERENCES "cache_references"
 
@@ -2388,6 +2637,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * event which can be used to measure the count of instructions
  * by applications running on the platform. It corresponds to the
  * "perf.instructions" field in the *Stats APIs.
+ *
+ * Since: v2.3.0
+ *
  */
 # define VIR_PERF_PARAM_INSTRUCTIONS "instructions"
 
@@ -2398,6 +2650,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * describing the total/elapsed cpu cycles. This can be used to measure
  * how many cpu cycles one instruction needs.
  * It corresponds to the "perf.cpu_cycles" field in the *Stats APIs.
+ *
+ * Since: v2.3.0
+ *
  */
 # define VIR_PERF_PARAM_CPU_CYCLES "cpu_cycles"
 
@@ -2408,6 +2663,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of branch instructions
  * by applications running on the platform. It corresponds to the
  * "perf.branch_instructions" field in the *Stats APIs.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_PERF_PARAM_BRANCH_INSTRUCTIONS "branch_instructions"
 
@@ -2418,6 +2676,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of branch misses
  * by applications running on the platform. It corresponds to the
  * "perf.branch_misses" field in the *Stats APIs.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_PERF_PARAM_BRANCH_MISSES "branch_misses"
 
@@ -2428,6 +2689,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of bus cycles
  * by applications running on the platform. It corresponds to the
  * "perf.bus_cycles" field in the *Stats APIs.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_PERF_PARAM_BUS_CYCLES "bus_cycles"
 
@@ -2439,6 +2703,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * in the frontend of the instruction processor pipeline by applications
  * running on the platform. It corresponds to the
  * "perf.stalled_cycles_frontend" field in the *Stats APIs.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_PERF_PARAM_STALLED_CYCLES_FRONTEND "stalled_cycles_frontend"
 
@@ -2450,6 +2717,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * in the backend of the instruction processor pipeline by application
  * running on the platform. It corresponds to the
  * "perf.stalled_cycles_backend" field in the *Stats APIs.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_PERF_PARAM_STALLED_CYCLES_BACKEND "stalled_cycles_backend"
 
@@ -2461,6 +2731,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * cycles not affected by CPU frequency scaling by applications
  * running on the platform. It corresponds to the
  * "perf.ref_cpu_cycles" field in the *Stats APIs.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_PERF_PARAM_REF_CPU_CYCLES "ref_cpu_cycles"
 
@@ -2472,6 +2745,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * clock time by applications running on the platform. It
  * corresponds to the "perf.cpu_clock" field in the *Stats
  * APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_CPU_CLOCK "cpu_clock"
 
@@ -2483,6 +2759,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * clock time by applications running on the platform. It
  * corresponds to the "perf.task_clock" field in the *Stats
  * APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_TASK_CLOCK "task_clock"
 
@@ -2493,6 +2772,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
 * perf event which can be used to measure the count of page
 * faults by applications running on the platform. It corresponds
 * to the "perf.page_faults" field in the *Stats APIs.
+*
+* Since: v3.2.0
+*
 */
 # define VIR_PERF_PARAM_PAGE_FAULTS "page_faults"
 
@@ -2503,6 +2785,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of context
  * switches by applications running on the platform. It corresponds
  * to the "perf.context_switches" field in the *Stats APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_CONTEXT_SWITCHES "context_switches"
 
@@ -2513,6 +2798,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of cpu
  * migrations by applications running on the platform. It corresponds
  * to the "perf.cpu_migrations" field in the *Stats APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_CPU_MIGRATIONS "cpu_migrations"
 
@@ -2523,6 +2811,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of minor page
  * faults by applications running on the platform. It corresponds
  * to the "perf.page_faults_min" field in the *Stats APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_PAGE_FAULTS_MIN  "page_faults_min"
 
@@ -2533,6 +2824,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of major page
  * faults by applications running on the platform. It corresponds
  * to the "perf.page_faults_maj" field in the *Stats APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_PAGE_FAULTS_MAJ  "page_faults_maj"
 
@@ -2543,6 +2837,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of alignment
  * faults by applications running on the platform. It corresponds
  * to the "perf.alignment_faults" field in the *Stats APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_ALIGNMENT_FAULTS  "alignment_faults"
 
@@ -2553,6 +2850,9 @@ void virDomainStatsRecordListFree(virDomainStatsRecordPtr *stats);
  * perf event which can be used to measure the count of emulation
  * faults by applications running on the platform. It corresponds
  * to the "perf.emulation_faults" field in the *Stats APIs.
+ *
+ * Since: v3.2.0
+ *
  */
 # define VIR_PERF_PARAM_EMULATION_FAULTS  "emulation_faults"
 
@@ -2744,6 +3044,9 @@ typedef enum {
  * allowing a subsequent change of bandwidth via
  * virDomainBlockJobSetSpeed().  The actual speed can be determined
  * with virDomainGetBlockJobInfo().
+ *
+ * Since: v1.2.8
+ *
  */
 # define VIR_DOMAIN_BLOCK_COPY_BANDWIDTH "bandwidth"
 
@@ -2755,6 +3058,9 @@ typedef enum {
  * restrict this to be a power of two or fall within a certain
  * range. Specifying 0 is the same as omitting this parameter, to
  * request the hypervisor default.
+ *
+ * Since: v1.2.8
+ *
  */
 # define VIR_DOMAIN_BLOCK_COPY_GRANULARITY "granularity"
 
@@ -2764,6 +3070,9 @@ typedef enum {
  * how much data in bytes can be in flight between source and destination,
  * as an unsigned long long. Specifying 0 is the same as omitting this
  * parameter, to request the hypervisor default.
+ *
+ * Since: v1.2.8
+ *
  */
 # define VIR_DOMAIN_BLOCK_COPY_BUF_SIZE "buf-size"
 
@@ -2805,6 +3114,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the total
  * bytes per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_TOTAL_BYTES_SEC "total_bytes_sec"
 
@@ -2813,6 +3125,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the read
  * bytes per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_READ_BYTES_SEC "read_bytes_sec"
 
@@ -2821,6 +3136,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the write
  * bytes per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_WRITE_BYTES_SEC "write_bytes_sec"
 
@@ -2829,6 +3147,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the total
  * I/O operations per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_TOTAL_IOPS_SEC "total_iops_sec"
 
@@ -2837,6 +3158,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the read
  * I/O operations per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_READ_IOPS_SEC "read_iops_sec"
 
@@ -2844,6 +3168,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  * VIR_DOMAIN_BLOCK_IOTUNE_WRITE_IOPS_SEC:
  * Macro for the BlockIoTune tunable weight: it represents the write
  * I/O operations per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_WRITE_IOPS_SEC "write_iops_sec"
 
@@ -2852,6 +3179,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the maximum total
  * bytes per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_TOTAL_BYTES_SEC_MAX "total_bytes_sec_max"
 
@@ -2860,6 +3190,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the maximum read
  * bytes per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_READ_BYTES_SEC_MAX "read_bytes_sec_max"
 
@@ -2868,6 +3201,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the maximum write
  * bytes per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_WRITE_BYTES_SEC_MAX "write_bytes_sec_max"
 
@@ -2876,6 +3212,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the maximum
  * I/O operations per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_TOTAL_IOPS_SEC_MAX "total_iops_sec_max"
 
@@ -2884,6 +3223,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the maximum read
  * I/O operations per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_READ_IOPS_SEC_MAX "read_iops_sec_max"
 
@@ -2891,6 +3233,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  * VIR_DOMAIN_BLOCK_IOTUNE_WRITE_IOPS_SEC_MAX:
  * Macro for the BlockIoTune tunable weight: it represents the maximum write
  * I/O operations per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_WRITE_IOPS_SEC_MAX "write_iops_sec_max"
 
@@ -2899,6 +3244,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the duration in
  * seconds for the burst allowed by total_bytes_sec_max, as a ullong.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_TOTAL_BYTES_SEC_MAX_LENGTH "total_bytes_sec_max_length"
 
@@ -2907,6 +3255,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the duration in
  * seconds for the burst allowed by read_bytes_sec_max, as a ullong.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_READ_BYTES_SEC_MAX_LENGTH "read_bytes_sec_max_length"
 
@@ -2915,6 +3266,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the duration in
  * seconds for the burst allowed by write_bytes_sec_max, as a ullong.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_WRITE_BYTES_SEC_MAX_LENGTH "write_bytes_sec_max_length"
 
@@ -2923,6 +3277,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the duration in
  * seconds for the burst allowed by total_iops_sec_max, as a ullong.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_TOTAL_IOPS_SEC_MAX_LENGTH "total_iops_sec_max_length"
 
@@ -2931,6 +3288,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the duration in
  * seconds for the burst allowed by read_iops_sec_max, as a ullong.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_READ_IOPS_SEC_MAX_LENGTH "read_iops_sec_max_length"
 
@@ -2939,6 +3299,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  *
  * Macro for the BlockIoTune tunable weight: it represents the duration in
  * seconds for the burst allowed by write_iops_sec_max, as a ullong.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_WRITE_IOPS_SEC_MAX_LENGTH "write_iops_sec_max_length"
 
@@ -2946,6 +3309,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  * VIR_DOMAIN_BLOCK_IOTUNE_SIZE_IOPS_SEC:
  * Macro for the BlockIoTune tunable weight: it represents the size
  * I/O operations per second permitted through a block device, as a ullong.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_SIZE_IOPS_SEC "size_iops_sec"
 
@@ -2953,6 +3319,9 @@ int virDomainBlockCommit(virDomainPtr dom, const char *disk, const char *base,
  * VIR_DOMAIN_BLOCK_IOTUNE_GROUP_NAME:
  * Macro for the BlockIoTune tunable weight: it represents a group name to
  * allow sharing of I/O throttling quota between multiple drives, as a string.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_DOMAIN_BLOCK_IOTUNE_GROUP_NAME "group_name"
 
@@ -3034,6 +3403,9 @@ typedef enum {
  * VIR_KEYCODE_SET_RFB:
  *
  * Compatibility alias for VIR_KEYCODE_SET_QNUM, which replaced it since 4.2.0.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_KEYCODE_SET_RFB VIR_KEYCODE_SET_QNUM
 
@@ -3041,6 +3413,9 @@ typedef enum {
  * VIR_DOMAIN_SEND_KEY_MAX_KEYS:
  *
  * Maximum number of keycodes that can be sent in one virDomainSendKey() call.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_SEND_KEY_MAX_KEYS  16
 
@@ -3533,6 +3908,9 @@ typedef enum {
  * virDomainGetJobStats field: the operation which started the job as
  * VIR_TYPED_PARAM_INT. The values correspond to the items in
  * virDomainJobOperation enum.
+ *
+ * Since: v3.3.0
+ *
  */
 # define VIR_DOMAIN_JOB_OPERATION                "operation"
 
@@ -3543,6 +3921,9 @@ typedef enum {
  * job, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to timeElapsed field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_TIME_ELAPSED             "time_elapsed"
 
@@ -3553,6 +3934,9 @@ typedef enum {
  * migration job NOT including the time required to transfer control
  * flow from the source host to the destination host,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.15
+ *
  */
 # define VIR_DOMAIN_JOB_TIME_ELAPSED_NET         "time_elapsed_net"
 
@@ -3563,6 +3947,9 @@ typedef enum {
  * jobs, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to timeRemaining field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_TIME_REMAINING           "time_remaining"
 
@@ -3573,6 +3960,9 @@ typedef enum {
  * during migration, as VIR_TYPED_PARAM_ULLONG. The real computed downtime
  * between the time guest CPUs were paused and the time they were resumed
  * is reported for completed migration.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_DOWNTIME                 "downtime"
 
@@ -3582,6 +3972,9 @@ typedef enum {
  * virDomainGetJobStats field: real measured downtime (ms) NOT including
  * the time required to transfer control flow from the source host to the
  * destination host, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.15
+ *
  */
 # define VIR_DOMAIN_JOB_DOWNTIME_NET             "downtime_net"
 
@@ -3591,6 +3984,9 @@ typedef enum {
  * virDomainGetJobStats field: total time in milliseconds spent preparing
  * the migration in the 'setup' phase before the iterations begin, as
  * VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_JOB_SETUP_TIME               "setup_time"
 
@@ -3606,6 +4002,9 @@ typedef enum {
  * VIR_DOMAIN_JOB_DATA_PROCESSED + VIR_DOMAIN_JOB_DATA_REMAINING.
  *
  * This field corresponds to dataTotal field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_DATA_TOTAL               "data_total"
 
@@ -3616,6 +4015,9 @@ typedef enum {
  * beginning of the job, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to dataProcessed field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_DATA_PROCESSED           "data_processed"
 
@@ -3626,6 +4028,9 @@ typedef enum {
  * transferred, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to dataRemaining field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_DATA_REMAINING           "data_remaining"
 
@@ -3636,6 +4041,9 @@ typedef enum {
  * tracking guest memory progress, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to memTotal field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_TOTAL             "memory_total"
 
@@ -3646,6 +4054,9 @@ typedef enum {
  * tracking guest memory progress, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to memProcessed field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_PROCESSED         "memory_processed"
 
@@ -3656,6 +4067,9 @@ typedef enum {
  * tracking guest memory progress, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to memRemaining field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_REMAINING         "memory_remaining"
 
@@ -3668,6 +4082,9 @@ typedef enum {
  *
  * The most common example of such pages are zero pages, i.e., pages filled
  * with zero bytes.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_CONSTANT          "memory_constant"
 
@@ -3678,6 +4095,9 @@ typedef enum {
  * any kind of compression (i.e., pages which were not filled with a constant
  * byte and which could not be compressed) transferred since the beginning
  * of the migration job, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_NORMAL            "memory_normal"
 
@@ -3688,6 +4108,9 @@ typedef enum {
  * as VIR_TYPED_PARAM_ULLONG.
  *
  * See VIR_DOMAIN_JOB_MEMORY_NORMAL for more details.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_NORMAL_BYTES      "memory_normal_bytes"
 
@@ -3696,6 +4119,9 @@ typedef enum {
  *
  * virDomainGetJobStats field: network throughput used while migrating
  * memory in Bytes per second, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_BPS               "memory_bps"
 
@@ -3704,6 +4130,9 @@ typedef enum {
  * virDomainGetJobStats field: number of memory pages dirtied by the guest
  * per second, as VIR_TYPED_PARAM_ULLONG. This statistics makes sense only
  * when live migration is running.
+ *
+ * Since: v1.3.1
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_DIRTY_RATE        "memory_dirty_rate"
 
@@ -3715,6 +4144,9 @@ typedef enum {
  * convert other page based statistics, such as
  * VIR_DOMAIN_JOB_MEMORY_DIRTY_RATE or VIR_DOMAIN_JOB_COMPRESSION_PAGES
  * to bytes.
+ *
+ * Since: v3.9.0
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_PAGE_SIZE         "memory_page_size"
 
@@ -3726,6 +4158,9 @@ typedef enum {
  * when memory starts to be transferred and the value is increased by one
  * every time a new iteration is started to transfer memory pages dirtied
  * since the last iteration.
+ *
+ * Since: v1.3.1
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_ITERATION         "memory_iteration"
 
@@ -3736,6 +4171,9 @@ typedef enum {
  * destination host during post-copy migration, as VIR_TYPED_PARAM_ULLONG.
  * This counter is incremented whenever the migrated domain tries to access
  * a memory page which has not been transferred from the source host yet.
+ *
+ * Since: v5.0.0
+ *
  */
 # define VIR_DOMAIN_JOB_MEMORY_POSTCOPY_REQS     "memory_postcopy_requests"
 
@@ -3746,6 +4184,9 @@ typedef enum {
  * tracking guest disk progress, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to fileTotal field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_DISK_TOTAL               "disk_total"
 
@@ -3756,6 +4197,9 @@ typedef enum {
  * tracking guest disk progress, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to fileProcessed field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_DISK_PROCESSED           "disk_processed"
 
@@ -3766,6 +4210,9 @@ typedef enum {
  * tracking guest disk progress, as VIR_TYPED_PARAM_ULLONG.
  *
  * This field corresponds to fileRemaining field in virDomainJobInfo.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_DISK_REMAINING           "disk_remaining"
 
@@ -3774,6 +4221,9 @@ typedef enum {
  *
  * virDomainGetJobStats field: network throughput used while migrating
  * disks in Bytes per second, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_JOB_DISK_BPS                 "disk_bps"
 
@@ -3783,6 +4233,9 @@ typedef enum {
  * virDomainGetJobStats field: size of the cache (in bytes) used for
  * compressing repeatedly transferred memory pages during live migration,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_COMPRESSION_CACHE        "compression_cache"
 
@@ -3791,6 +4244,9 @@ typedef enum {
  *
  * virDomainGetJobStats field: number of compressed bytes transferred
  * since the beginning of migration, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_COMPRESSION_BYTES        "compression_bytes"
 
@@ -3799,6 +4255,9 @@ typedef enum {
  *
  * virDomainGetJobStats field: number of compressed pages transferred
  * since the beginning of migration, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_COMPRESSION_PAGES        "compression_pages"
 
@@ -3808,6 +4267,9 @@ typedef enum {
  * virDomainGetJobStats field: number of repeatedly changing pages that
  * were not found in compression cache and thus could not be compressed,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_COMPRESSION_CACHE_MISSES "compression_cache_misses"
 
@@ -3818,6 +4280,9 @@ typedef enum {
  * were found in compression cache but were sent uncompressed because
  * the result of compression was larger than the original page as a whole,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.0.3
+ *
  */
 # define VIR_DOMAIN_JOB_COMPRESSION_OVERFLOW     "compression_overflow"
 
@@ -3827,6 +4292,9 @@ typedef enum {
  * virDomainGetJobStats field: current percentage guest CPUs are throttled
  * to when auto-convergence decided migration was not converging, as
  * VIR_TYPED_PARAM_INT.
+ *
+ * Since: v2.0.0
+ *
  */
 # define VIR_DOMAIN_JOB_AUTO_CONVERGE_THROTTLE  "auto_converge_throttle"
 
@@ -3835,6 +4303,9 @@ typedef enum {
  *
  * virDomainGetJobStats field: Present only in statistics for a completed job.
  * Successful completion of the job as VIR_TYPED_PARAM_BOOLEAN.
+ *
+ * Since: v6.0.0
+ *
  */
 # define VIR_DOMAIN_JOB_SUCCESS "success"
 
@@ -3843,6 +4314,9 @@ typedef enum {
  *
  * virDomainGetJobStats field: Present only in statistics for a completed job.
  * Optional error message for a failed job.
+ *
+ * Since: v6.3.0
+ *
  */
 # define VIR_DOMAIN_JOB_ERRMSG "errmsg"
 
@@ -3851,6 +4325,9 @@ typedef enum {
  * VIR_DOMAIN_JOB_DISK_TEMP_USED:
  * virDomainGetJobStats field: current usage of temporary disk space for the
  * job in bytes as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v6.0.0
+ *
  */
 # define VIR_DOMAIN_JOB_DISK_TEMP_USED "disk_temp_used"
 
@@ -3858,6 +4335,9 @@ typedef enum {
  * VIR_DOMAIN_JOB_DISK_TEMP_TOTAL:
  * virDomainGetJobStats field: possible total temporary disk space for the
  * job in bytes as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v6.0.0
+ *
  */
 # define VIR_DOMAIN_JOB_DISK_TEMP_TOTAL "disk_temp_total"
 
@@ -4419,6 +4899,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents formatted pinning for one vcpu specified by id which is
  * appended to the parameter name, for example "cputune.vcpupin1",
  * as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_VCPUPIN "cputune.vcpupin%u"
 
@@ -4427,6 +4910,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents formatted pinning for emulator process,
  * as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_EMULATORPIN "cputune.emulatorpin"
 
@@ -4436,6 +4922,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents formatted pinning for one IOThread specified by id which is
  * appended to the parameter name, for example "cputune.iothreadpin1",
  * as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v1.2.14
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_IOTHREADSPIN "cputune.iothreadpin%u"
 
@@ -4444,6 +4933,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents proportional weight of the scheduler used on the
  * host cpu, when using the posix scheduler, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_CPU_SHARES "cputune.cpu_shares"
 
@@ -4452,6 +4944,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the enforcement period for a quota, in microseconds,
  * for whole domain, when using the posix scheduler, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.3.3
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_GLOBAL_PERIOD "cputune.global_period"
 
@@ -4460,6 +4955,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the maximum bandwidth to be used within a period for
  * whole domain, when using the posix scheduler, as VIR_TYPED_PARAM_LLONG.
+ *
+ * Since: v1.3.3
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_GLOBAL_QUOTA "cputune.global_quota"
 
@@ -4468,6 +4966,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the enforcement period for a quota, in microseconds,
  * for vcpus only, when using the posix scheduler, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_VCPU_PERIOD "cputune.vcpu_period"
 
@@ -4476,6 +4977,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the maximum bandwidth to be used within a period for
  * vcpus only, when using the posix scheduler, as VIR_TYPED_PARAM_LLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_VCPU_QUOTA "cputune.vcpu_quota"
 
@@ -4485,6 +4989,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the enforcement period for a quota in microseconds,
  * when using the posix scheduler, for all emulator activity not tied to
  * vcpus, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_EMULATOR_PERIOD "cputune.emulator_period"
 
@@ -4494,6 +5001,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the maximum bandwidth to be used within a period for
  * all emulator activity not tied to vcpus, when using the posix scheduler,
  * as an VIR_TYPED_PARAM_LLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_EMULATOR_QUOTA "cputune.emulator_quota"
 
@@ -4502,6 +5012,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the enforcement period for a quota, in microseconds, for
  * iothreads only, when using the posix scheduler, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v2.2.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_IOTHREAD_PERIOD "cputune.iothread_period"
 
@@ -4510,6 +5023,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the maximum bandwidth to be used within a period for
  * iothreads only, when using the posix scheduler, as VIR_TYPED_PARAM_LLONG.
+ *
+ * Since: v2.2.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_CPU_IOTHREAD_QUOTA "cputune.iothread_quota"
 
@@ -4518,6 +5034,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the name of guest disk for which the values are updated,
  * as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_DISK "blkdeviotune.disk"
 
@@ -4526,6 +5045,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the total throughput limit in bytes per second,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_TOTAL_BYTES_SEC "blkdeviotune.total_bytes_sec"
 
@@ -4534,6 +5056,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the read throughput limit in bytes per second,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_READ_BYTES_SEC "blkdeviotune.read_bytes_sec"
 
@@ -4542,6 +5067,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the write throughput limit in bytes per second,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_WRITE_BYTES_SEC "blkdeviotune.write_bytes_sec"
 
@@ -4550,6 +5078,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the total I/O operations per second,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_TOTAL_IOPS_SEC "blkdeviotune.total_iops_sec"
 
@@ -4558,6 +5089,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the read I/O operations per second,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_READ_IOPS_SEC "blkdeviotune.read_iops_sec"
 
@@ -4566,6 +5100,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the write I/O operations per second,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.9
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_WRITE_IOPS_SEC "blkdeviotune.write_iops_sec"
 
@@ -4574,6 +5111,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the total throughput limit during bursts in
  * maximum bytes per second, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_TOTAL_BYTES_SEC_MAX "blkdeviotune.total_bytes_sec_max"
 
@@ -4582,6 +5122,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the read throughput limit during bursts in
  * maximum bytes per second, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_READ_BYTES_SEC_MAX "blkdeviotune.read_bytes_sec_max"
 
@@ -4590,6 +5133,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the write throughput limit during bursts in
  * maximum bytes per second, as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_WRITE_BYTES_SEC_MAX "blkdeviotune.write_bytes_sec_max"
 
@@ -4598,6 +5144,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the total maximum I/O operations per second during bursts,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_TOTAL_IOPS_SEC_MAX "blkdeviotune.total_iops_sec_max"
 
@@ -4606,6 +5155,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the read maximum I/O operations per second during bursts,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_READ_IOPS_SEC_MAX "blkdeviotune.read_iops_sec_max"
 
@@ -4614,6 +5166,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the write maximum I/O operations per second during bursts,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_WRITE_IOPS_SEC_MAX "blkdeviotune.write_iops_sec_max"
 
@@ -4622,6 +5177,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the size maximum I/O operations per second,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v1.2.11
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_SIZE_IOPS_SEC "blkdeviotune.size_iops_sec"
 
@@ -4630,6 +5188,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  *
  * Macro represents the group name to be used,
  * as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_GROUP_NAME "blkdeviotune.group_name"
 
@@ -4639,6 +5200,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the length in seconds allowed for a burst period
  * for the blkdeviotune.total_bytes_sec_max,
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_TOTAL_BYTES_SEC_MAX_LENGTH "blkdeviotune.total_bytes_sec_max_length"
 
@@ -4648,6 +5212,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the length in seconds allowed for a burst period
  * for the blkdeviotune.read_bytes_sec_max
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_READ_BYTES_SEC_MAX_LENGTH "blkdeviotune.read_bytes_sec_max_length"
 
@@ -4657,6 +5224,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the length in seconds allowed for a burst period
  * for the blkdeviotune.write_bytes_sec_max
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_WRITE_BYTES_SEC_MAX_LENGTH "blkdeviotune.write_bytes_sec_max_length"
 
@@ -4666,6 +5236,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the length in seconds allowed for a burst period
  * for the blkdeviotune.total_iops_sec_max
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_TOTAL_IOPS_SEC_MAX_LENGTH "blkdeviotune.total_iops_sec_max_length"
 
@@ -4675,6 +5248,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the length in seconds allowed for a burst period
  * for the blkdeviotune.read_iops_sec_max
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_READ_IOPS_SEC_MAX_LENGTH "blkdeviotune.read_iops_sec_max_length"
 
@@ -4684,6 +5260,9 @@ typedef void (*virConnectDomainEventJobCompletedCallback)(virConnectPtr conn,
  * Macro represents the length in seconds allowed for a burst period
  * for the blkdeviotune.write_iops_sec_max
  * as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v2.4.0
+ *
  */
 # define VIR_DOMAIN_TUNABLE_BLKDEV_WRITE_IOPS_SEC_MAX_LENGTH "blkdeviotune.write_iops_sec_max_length"
 
@@ -4836,6 +5415,9 @@ typedef void (*virConnectDomainEventMemoryDeviceSizeChangeCallback)(virConnectPt
  *
  * Used to cast the event specific callback into the generic one
  * for use for virConnectDomainEventRegisterAny()
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_DOMAIN_EVENT_CALLBACK(cb) ((virConnectDomainEventGenericCallback)(cb))
 
@@ -5021,7 +5603,10 @@ typedef enum {
  *
  * Macro providing the field length of virSchedParameter.  Provided
  * for backwards compatibility; VIR_TYPED_PARAM_FIELD_LENGTH is the
- * preferred value since 0.9.2.
+ * preferred value
+ *
+ * Since: v0.9.2
+ *
  */
 # define VIR_DOMAIN_SCHED_FIELD_LENGTH VIR_TYPED_PARAM_FIELD_LENGTH
 
@@ -5030,7 +5615,10 @@ typedef enum {
  *
  * a virSchedParameter is the set of scheduler parameters.
  * Provided for backwards compatibility; virTypedParameter is the
- * preferred alias since 0.9.2.
+ * preferred alias.
+ *
+ * Since: v0.9.2
+ *
  */
 # define _virSchedParameter _virTypedParameter
 typedef struct _virTypedParameter virSchedParameter;
@@ -5065,7 +5653,10 @@ typedef enum {
  *
  * Macro providing the field length of virBlkioParameter.  Provided
  * for backwards compatibility; VIR_TYPED_PARAM_FIELD_LENGTH is the
- * preferred value since 0.9.2.
+ * preferred value.
+ *
+ * Since: v0.9.2
+ *
  */
 # define VIR_DOMAIN_BLKIO_FIELD_LENGTH VIR_TYPED_PARAM_FIELD_LENGTH
 
@@ -5074,7 +5665,10 @@ typedef enum {
  *
  * a virBlkioParameter is the set of blkio parameters.
  * Provided for backwards compatibility; virTypedParameter is the
- * preferred alias since 0.9.2.
+ * preferred alias.
+ *
+ * Since: v0.9.2
+ *
  */
 # define _virBlkioParameter _virTypedParameter
 typedef struct _virTypedParameter virBlkioParameter;
@@ -5109,7 +5703,10 @@ typedef enum {
  *
  * Macro providing the field length of virMemoryParameter.  Provided
  * for backwards compatibility; VIR_TYPED_PARAM_FIELD_LENGTH is the
- * preferred value since 0.9.2.
+ * preferred value.
+ *
+ * Since: v0.9.2
+ *
  */
 # define VIR_DOMAIN_MEMORY_FIELD_LENGTH VIR_TYPED_PARAM_FIELD_LENGTH
 
@@ -5118,7 +5715,10 @@ typedef enum {
  *
  * a virMemoryParameter is the set of scheduler parameters.
  * Provided for backwards compatibility; virTypedParameter is the
- * preferred alias since 0.9.2.
+ * preferred alias.
+ *
+ * Since: v0.9.2
+ *
  */
 # define _virMemoryParameter _virTypedParameter
 typedef struct _virTypedParameter virMemoryParameter;
@@ -5236,6 +5836,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  *
  * Macro represents the launch measurement of the SEV guest,
  * as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v4.5.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_MEASUREMENT "sev-measurement"
 
@@ -5245,6 +5848,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  *
  * Macro represents the API major version of the SEV host,
  * as VIR_TYPED_PARAM_UINT.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_API_MAJOR "sev-api-major"
 
@@ -5253,6 +5859,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  *
  * Macro represents the API minor version of the SEV guest,
  * as VIR_TYPED_PARAM_UINT.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_API_MINOR "sev-api-minor"
 
@@ -5261,6 +5870,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  *
  * Macro represents the build ID of the SEV host,
  * as VIR_TYPED_PARAM_UINT.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_BUILD_ID "sev-build-id"
 
@@ -5269,6 +5881,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  *
  * Macro represents the policy of the SEV guest,
  * as VIR_TYPED_PARAM_UINT.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_POLICY "sev-policy"
 
@@ -5280,6 +5895,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  * the SEV firmware to recover the plain text of the launch secret. See
  * section "6.6 LAUNCH_SECRET" in the SEV API specification for a detailed
  * description of the secret header.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_SECRET_HEADER "sev-secret-header"
 
@@ -5290,6 +5908,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  * base64-encoded VIR_TYPED_PARAM_STRING containing an encrypted launch
  * secret. The secret is created by the domain owner after the SEV launch
  * measurement is retrieved and verified.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_SECRET "sev-secret"
 
@@ -5299,6 +5920,9 @@ int virDomainSetLifecycleAction(virDomainPtr domain,
  * A macro used to represent the physical address within the guest's memory
  * where the secret will be set, as VIR_TYPED_PARAM_ULLONG. If not specified,
  * the address will be determined by the hypervisor.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_DOMAIN_LAUNCH_SECURITY_SEV_SECRET_SET_ADDRESS "sev-secret-set-address"
 
diff --git a/include/libvirt/libvirt-host.h b/include/libvirt/libvirt-host.h
index f6a9588568..a31fa2d9ee 100644
--- a/include/libvirt/libvirt-host.h
+++ b/include/libvirt/libvirt-host.h
@@ -80,6 +80,9 @@ typedef virStream *virStreamPtr;
  *
  * Macro providing the maximum length of the virSecurityLabel label string.
  * Note that this value is based on that used by Labeled NFS.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_SECURITY_LABEL_BUFLEN (4096 + 1)
 
@@ -108,6 +111,9 @@ typedef virSecurityLabel *virSecurityLabelPtr;
  * VIR_SECURITY_MODEL_BUFLEN:
  *
  * Macro providing the maximum length of the virSecurityModel model string.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_SECURITY_MODEL_BUFLEN (256 + 1)
 
@@ -115,6 +121,9 @@ typedef virSecurityLabel *virSecurityLabelPtr;
  * VIR_SECURITY_DOI_BUFLEN:
  *
  * Macro providing the maximum length of the virSecurityModel doi string.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_SECURITY_DOI_BUFLEN (256 + 1)
 
@@ -176,6 +185,9 @@ struct _virNodeInfo {
  * VIR_NODE_CPU_STATS_FIELD_LENGTH:
  *
  * Macro providing the field length of virNodeCPUStats
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_CPU_STATS_FIELD_LENGTH 80
 
@@ -193,6 +205,9 @@ typedef enum {
  *
  * Macro for the cumulative CPU time which was spent by the kernel,
  * since the node booting up (in nanoseconds).
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_CPU_STATS_KERNEL "kernel"
 
@@ -201,6 +216,9 @@ typedef enum {
  *
  * The cumulative CPU time which was spent by user processes,
  * since the node booting up (in nanoseconds).
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_CPU_STATS_USER "user"
 
@@ -209,6 +227,9 @@ typedef enum {
  *
  * The cumulative idle CPU time,
  * since the node booting up (in nanoseconds).
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_CPU_STATS_IDLE "idle"
 
@@ -217,6 +238,9 @@ typedef enum {
  *
  * The cumulative I/O wait CPU time,
  * since the node booting up (in nanoseconds).
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_CPU_STATS_IOWAIT "iowait"
 
@@ -225,6 +249,9 @@ typedef enum {
  *
  * The cumulative interrupt CPU time,
  * since the node booting up (in nanoseconds).
+ *
+ * Since: v1.2.2
+ *
  */
 # define VIR_NODE_CPU_STATS_INTR "intr"
 
@@ -234,6 +261,9 @@ typedef enum {
  * The CPU utilization of a node.
  * The usage value is in percent and 100% represents all CPUs of
  * the node.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_CPU_STATS_UTILIZATION "utilization"
 
@@ -254,6 +284,9 @@ struct _virNodeCPUStats {
  * VIR_NODE_MEMORY_STATS_FIELD_LENGTH:
  *
  * Macro providing the field length of virNodeMemoryStats
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_STATS_FIELD_LENGTH 80
 
@@ -271,6 +304,9 @@ typedef enum {
  *
  * Macro for the total memory of specified cell:
  * it represents the maximum memory.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_STATS_TOTAL "total"
 
@@ -280,6 +316,9 @@ typedef enum {
  * Macro for the free memory of specified cell:
  * On Linux, it includes buffer and cached memory, in case of
  * VIR_NODE_MEMORY_STATS_ALL_CELLS.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_STATS_FREE "free"
 
@@ -288,6 +327,9 @@ typedef enum {
  *
  * Macro for the buffer memory: On Linux, it is only returned in case of
  * VIR_NODE_MEMORY_STATS_ALL_CELLS.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_STATS_BUFFERS "buffers"
 
@@ -296,6 +338,9 @@ typedef enum {
  *
  * Macro for the cached memory: On Linux, it is only returned in case of
  * VIR_NODE_MEMORY_STATS_ALL_CELLS.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_STATS_CACHED "cached"
 
@@ -317,6 +362,9 @@ struct _virNodeMemoryStats {
  *
  * Macro for typed parameter that represents how many present pages
  * to scan before the shared memory service goes to sleep.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_PAGES_TO_SCAN      "shm_pages_to_scan"
 
@@ -325,6 +373,9 @@ struct _virNodeMemoryStats {
  *
  * Macro for typed parameter that represents how many milliseconds
  * the shared memory service should sleep before next scan.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_SLEEP_MILLISECS    "shm_sleep_millisecs"
 
@@ -333,6 +384,9 @@ struct _virNodeMemoryStats {
  *
  * Macro for typed parameter that represents how many the shared
  * memory pages are being used.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_PAGES_SHARED       "shm_pages_shared"
 
@@ -341,6 +395,9 @@ struct _virNodeMemoryStats {
  *
  * Macro for typed parameter that represents how many sites are
  * sharing the pages i.e. how much saved.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_PAGES_SHARING      "shm_pages_sharing"
 
@@ -349,6 +406,9 @@ struct _virNodeMemoryStats {
  *
  * Macro for typed parameter that represents how many pages unique
  * but repeatedly checked for merging.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_PAGES_UNSHARED     "shm_pages_unshared"
 
@@ -357,6 +417,9 @@ struct _virNodeMemoryStats {
  *
  * Macro for typed parameter that represents how many pages changing
  * too fast to be placed in a tree.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_PAGES_VOLATILE     "shm_pages_volatile"
 
@@ -365,6 +428,9 @@ struct _virNodeMemoryStats {
  *
  * Macro for typed parameter that represents how many times all
  * mergeable areas have been scanned.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_FULL_SCANS         "shm_full_scans"
 
@@ -377,6 +443,9 @@ struct _virNodeMemoryStats {
  * memory area of same NUMA node are merged; When its value is 1,
  * pages from all nodes can be merged. Other values are reserved
  * for future use.
+ *
+ * Since: v1.0.0
+ *
  */
 # define VIR_NODE_MEMORY_SHARED_MERGE_ACROSS_NODES "shm_merge_across_nodes"
 
@@ -406,6 +475,9 @@ int virNodeGetCPUMap(virConnectPtr conn,
  *
  * This macro is to calculate the total number of CPUs supported
  * but not necessary active in the host.
+ *
+ * Since: v1.0.0
+ *
  */
 
 
@@ -445,6 +517,9 @@ typedef virNodeMemoryStats *virNodeMemoryStatsPtr;
  * VIR_NODE_SEV_PDH:
  *
  * Macro represents the Platform Diffie-Hellman key, as VIR_TYPED_PARAMS_STRING.
+ *
+ * Since: v4.5.0
+ *
  */
 # define VIR_NODE_SEV_PDH "pdh"
 
@@ -454,6 +529,9 @@ typedef virNodeMemoryStats *virNodeMemoryStatsPtr;
  * Macro represents the platform certificate chain that includes the platform
  * endorsement key (PEK), owner certificate authority (OCD) and chip
  * endorsement key (CEK), as VIR_TYPED_PARAMS_STRING.
+ *
+ * Since: v4.5.0
+ *
  */
 # define VIR_NODE_SEV_CERT_CHAIN "cert-chain"
 
@@ -461,6 +539,9 @@ typedef virNodeMemoryStats *virNodeMemoryStatsPtr;
  * VIR_NODE_SEV_CBITPOS:
  *
  * Macro represents the CBit Position used by hypervisor when SEV is enabled.
+ *
+ * Since: v4.5.0
+ *
  */
 # define VIR_NODE_SEV_CBITPOS "cbitpos"
 
@@ -469,6 +550,9 @@ typedef virNodeMemoryStats *virNodeMemoryStatsPtr;
  *
  * Macro represents the number of bits we lose in physical address space
  * when SEV is enabled in the guest.
+ *
+ * Since: v4.5.0
+ *
  */
 # define VIR_NODE_SEV_REDUCED_PHYS_BITS "reduced-phys-bits"
 
@@ -477,6 +561,9 @@ typedef virNodeMemoryStats *virNodeMemoryStatsPtr;
  *
  * Macro represents the number of SEV guests that can
  * be run on the host, as a VIR_TYPED_PARAM_UINT.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_NODE_SEV_MAX_GUESTS "max-guests"
 
@@ -485,6 +572,9 @@ typedef virNodeMemoryStats *virNodeMemoryStatsPtr;
  *
  * Macro represents the number of SEV-ES guests that can
  * be run on the host, as a VIR_TYPED_PARAM_UINT.
+ *
+ * Since: v8.0.0
+ *
  */
 # define VIR_NODE_SEV_MAX_ES_GUESTS "max-es-guests"
 
@@ -582,6 +672,9 @@ VIR_EXPORT_VAR virConnectAuthPtr virConnectAuthPtrDefault;
  *
  * This macro provides the length of the buffer required
  * for virDomainGetUUID()
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_UUID_BUFLEN (16)
@@ -591,6 +684,9 @@ VIR_EXPORT_VAR virConnectAuthPtr virConnectAuthPtrDefault;
  *
  * This macro provides the length of the buffer required
  * for virDomainGetUUIDString()
+ *
+ * Since: v1.0.0
+ *
  */
 
 # define VIR_UUID_STRING_BUFLEN (36+1)
@@ -617,6 +713,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_USER_NAME:
  *
  * The operating system user name as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_USER_NAME "user-name"
 
@@ -624,6 +723,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_UNIX_USER_ID:
  *
  * The UNIX user ID as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_UNIX_USER_ID "unix-user-id"
 
@@ -631,6 +733,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_GROUP_NAME:
  *
  * The operating system group name as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_GROUP_NAME "group-name"
 
@@ -638,6 +743,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_UNIX_GROUP_ID:
  *
  * The UNIX group ID as VIR_TYPED_PARAM_ULLONG.
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_UNIX_GROUP_ID "unix-group-id"
 
@@ -645,6 +753,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_PROCESS_ID:
  *
  * The operating system process ID as VIR_TYPED_PARAM_LLONG.
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_PROCESS_ID "process-id"
 
@@ -656,6 +767,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * The units the time is measured in vary according to the
  * host operating system. On Linux this is usually clock
  * ticks (as reported in /proc/$PID/stat field 22).
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_PROCESS_TIME "process-time"
 
@@ -663,6 +777,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_SASL_USER_NAME:
  *
  * The SASL authenticated username as VIR_TYPED_PARAM_STRING
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_SASL_USER_NAME "sasl-user-name"
 
@@ -670,6 +787,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_X509_DISTINGUISHED_NAME:
  *
  * The TLS x509 certificate distinguished named as VIR_TYPED_PARAM_STRING
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_X509_DISTINGUISHED_NAME "x509-distinguished-name"
 
@@ -677,6 +797,9 @@ int                     virConnectClose         (virConnectPtr conn);
  * VIR_CONNECT_IDENTITY_SELINUX_CONTEXT:
  *
  * The application's SELinux context as VIR_TYPED_PARAM_STRING.
+ *
+ * Since: v5.8.0
+ *
  */
 # define VIR_CONNECT_IDENTITY_SELINUX_CONTEXT "selinux-context"
 
diff --git a/include/libvirt/libvirt-network.h b/include/libvirt/libvirt-network.h
index 4868a49427..3bf6df34a7 100644
--- a/include/libvirt/libvirt-network.h
+++ b/include/libvirt/libvirt-network.h
@@ -283,6 +283,9 @@ typedef void (*virConnectNetworkEventLifecycleCallback)(virConnectPtr conn,
  *
  * Used to cast the event specific callback into the generic one
  * for use for virConnectNetworkEventRegisterAny()
+ *
+ * Since: v1.2.1
+ *
  */
 # define VIR_NETWORK_EVENT_CALLBACK(cb) ((virConnectNetworkEventGenericCallback)(cb))
 
@@ -402,6 +405,9 @@ virNetworkPortGetUUIDString(virNetworkPortPtr port,
  * VIR_NETWORK_PORT_BANDWIDTH_IN_AVERAGE:
  *
  * Macro represents the inbound average of NIC bandwidth, as a uint.
+ *
+ * Since: v5.5.0
+ *
  */
 # define VIR_NETWORK_PORT_BANDWIDTH_IN_AVERAGE "inbound.average"
 
@@ -409,6 +415,9 @@ virNetworkPortGetUUIDString(virNetworkPortPtr port,
  * VIR_NETWORK_PORT_BANDWIDTH_IN_PEAK:
  *
  * Macro represents the inbound peak of NIC bandwidth, as a uint.
+ *
+ * Since: v5.5.0
+ *
  */
 # define VIR_NETWORK_PORT_BANDWIDTH_IN_PEAK "inbound.peak"
 
@@ -416,6 +425,9 @@ virNetworkPortGetUUIDString(virNetworkPortPtr port,
  * VIR_NETWORK_PORT_BANDWIDTH_IN_BURST:
  *
  * Macro represents the inbound burst of NIC bandwidth, as a uint.
+ *
+ * Since: v5.5.0
+ *
  */
 # define VIR_NETWORK_PORT_BANDWIDTH_IN_BURST "inbound.burst"
 
@@ -423,6 +435,9 @@ virNetworkPortGetUUIDString(virNetworkPortPtr port,
  * VIR_NETWORK_PORT_BANDWIDTH_IN_FLOOR:
  *
  * Macro represents the inbound floor of NIC bandwidth, as a uint.
+ *
+ * Since: v5.5.0
+ *
  */
 # define VIR_NETWORK_PORT_BANDWIDTH_IN_FLOOR "inbound.floor"
 
@@ -430,6 +445,9 @@ virNetworkPortGetUUIDString(virNetworkPortPtr port,
  * VIR_NETWORK_PORT_BANDWIDTH_OUT_AVERAGE:
  *
  * Macro represents the outbound average of NIC bandwidth, as a uint.
+ *
+ * Since: v5.5.0
+ *
  */
 # define VIR_NETWORK_PORT_BANDWIDTH_OUT_AVERAGE "outbound.average"
 
@@ -437,6 +455,9 @@ virNetworkPortGetUUIDString(virNetworkPortPtr port,
  * VIR_NETWORK_PORT_BANDWIDTH_OUT_PEAK:
  *
  * Macro represents the outbound peak of NIC bandwidth, as a uint.
+ *
+ * Since: v5.5.0
+ *
  */
 # define VIR_NETWORK_PORT_BANDWIDTH_OUT_PEAK "outbound.peak"
 
@@ -444,6 +465,9 @@ virNetworkPortGetUUIDString(virNetworkPortPtr port,
  * VIR_NETWORK_PORT_BANDWIDTH_OUT_BURST:
  *
  * Macro represents the outbound burst of NIC bandwidth, as a uint.
+ *
+ * Since: v5.5.0
+ *
  */
 # define VIR_NETWORK_PORT_BANDWIDTH_OUT_BURST "outbound.burst"
 
diff --git a/include/libvirt/libvirt-nodedev.h b/include/libvirt/libvirt-nodedev.h
index de398a1767..589495213c 100644
--- a/include/libvirt/libvirt-nodedev.h
+++ b/include/libvirt/libvirt-nodedev.h
@@ -156,6 +156,9 @@ int virNodeDeviceIsActive(virNodeDevicePtr dev);
  *
  * Used to cast the event specific callback into the generic one
  * for use for virConnectNodeDeviceEventRegisterAny()
+ *
+ * Since: v2.2.0
+ *
  */
 # define VIR_NODE_DEVICE_EVENT_CALLBACK(cb)((virConnectNodeDeviceEventGenericCallback)(cb))
 
diff --git a/include/libvirt/libvirt-secret.h b/include/libvirt/libvirt-secret.h
index 6134989369..cd636f14be 100644
--- a/include/libvirt/libvirt-secret.h
+++ b/include/libvirt/libvirt-secret.h
@@ -120,6 +120,9 @@ int                     virSecretFree           (virSecretPtr secret);
  *
  * Used to cast the event specific callback into the generic one
  * for use for virConnectSecretEventRegisterAny()
+ *
+ * Since: v3.0.0
+ *
  */
 # define VIR_SECRET_EVENT_CALLBACK(cb)((virConnectSecretEventGenericCallback)(cb))
 
diff --git a/include/libvirt/libvirt-storage.h b/include/libvirt/libvirt-storage.h
index e7265fe772..a0c4dab809 100644
--- a/include/libvirt/libvirt-storage.h
+++ b/include/libvirt/libvirt-storage.h
@@ -420,6 +420,9 @@ int virStoragePoolIsPersistent(virStoragePoolPtr pool);
  *
  * Used to cast the event specific callback into the generic one
  * for use for virConnectStoragePoolEventRegisterAny()
+ *
+ * Since: v2.0.0
+ *
  */
 # define VIR_STORAGE_POOL_EVENT_CALLBACK(cb)((virConnectStoragePoolEventGenericCallback)(cb))
 
-- 
2.35.1



More information about the libvir-list mailing list