1Sys::Virt::Domain(3)  User Contributed Perl Documentation Sys::Virt::Domain(3)
2
3
4

NAME

6       Sys::Virt::Domain - Represent & manage a libvirt guest domain
7

DESCRIPTION

9       The "Sys::Virt::Domain" module represents a guest domain managed by the
10       virtual machine monitor.
11

METHODS

13       my $id = $dom->get_id()
14           Returns an integer with a locally unique identifier for the domain.
15
16       my $uuid = $dom->get_uuid()
17           Returns a 16 byte long string containing the raw globally unique
18           identifier (UUID) for the domain.
19
20       my $uuid = $dom->get_uuid_string()
21           Returns a printable string representation of the raw UUID, in the
22           format 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'.
23
24       my $name = $dom->get_name()
25           Returns a string with a locally unique name of the domain
26
27       my $hostname = $dom->get_hostname($flags=0)
28           Returns a string representing the hostname of the guest.  $flags
29           can be zero or more of
30
31           Sys::Virt::Domain::GET_HOSTNAME_AGENT
32               Report the guest agent hostname
33
34           Sys::Virt::Domain::GET_HOSTNAME_LEASE
35               Report the DHCP lease hostname
36
37       my $str = $dom->get_metadata($type, $uri, $flags =0)
38           Returns the metadata element of type $type associated with the
39           domain. If $type is "Sys::Virt::Domain::METADATA_ELEMENT" then the
40           $uri parameter specifies the XML namespace to retrieve, otherwise
41           $uri should be "undef". The optional $flags parameter defaults to
42           zero.
43
44       $dom->set_metadata($type, $val, $key, $uri, $flags=0)
45           Sets the metadata element of type $type to hold the value $val. If
46           $type is  "Sys::Virt::Domain::METADATA_ELEMENT" then the $key and
47           $uri elements specify an XML namespace to use, otherwise they
48           should both be "undef". The optional $flags parameter defaults to
49           zero.
50
51       $dom->is_active()
52           Returns a true value if the domain is currently running
53
54       $dom->is_persistent()
55           Returns a true value if the domain has a persistent configuration
56           file defined
57
58       $dom->is_updated()
59           Returns a true value if the domain is running and has a persistent
60           configuration file defined that is out of date compared to the
61           current live config.
62
63       my $xml = $dom->get_xml_description($flags=0)
64           Returns an XML document containing a complete description of the
65           domain's configuration. The optional $flags parameter controls
66           generation of the XML document, defaulting to 0 if omitted. It can
67           be one or more of the XML DUMP constants listed later in this
68           document.
69
70       my $type = $dom->get_os_type()
71           Returns a string containing the name of the OS type running within
72           the domain.
73
74       $dom->create($flags)
75           Start a domain whose configuration was previously defined using the
76           "define_domain" method in Sys::Virt. The $flags parameter accepts
77           one of the DOMAIN CREATION constants documented later, and defaults
78           to 0 if omitted.
79
80       $dom->create_with_files($fds, $flags)
81           Start a domain whose configuration was previously defined using the
82           "define_domain" method in Sys::Virt. The $fds parameter is an array
83           of UNIX file descriptors which will be passed to the init process
84           of the container. This is only supported with container based
85           virtualization.The $flags parameter accepts one of the DOMAIN
86           CREATION constants documented later, and defaults to 0 if omitted.
87
88       $dom->undefine()
89           Remove the configuration associated with a domain previously
90           defined with the "define_domain" method in Sys::Virt. If the domain
91           is running, you probably want to use the "shutdown" or "destroy"
92           methods instead.
93
94       $dom->suspend()
95           Temporarily stop execution of the domain, allowing later
96           continuation by calling the "resume" method.
97
98       $dom->resume()
99           Resume execution of a domain previously halted with the "suspend"
100           method.
101
102       $dom->pm_wakeup()
103           Wakeup the guest from power management suspend state
104
105       $dom->pm_suspend_for_duration($target, $duration, $flags=0)
106           Tells the guest OS to enter the power management suspend state
107           identified by $target. The $target parameter should be one of the
108           NODE SUSPEND CONTANTS listed in "Sys::Virt". The $duration
109           specifies when the guest should automatically wakeup. The $flags
110           parameter is optional and defaults to zero.
111
112       $dom->save($filename)
113           Take a snapshot of the domain's state and save the information to
114           the file named in the $filename parameter. The domain can later be
115           restored from this file with the "restore_domain" method on the
116           Sys::Virt object.
117
118       $dom->managed_save($flags=0)
119           Take a snapshot of the domain's state and save the information to a
120           managed save location. The domain will be automatically restored
121           with this state when it is next started. The $flags parameter is
122           unused and defaults to zero.
123
124       $bool = $dom->has_managed_save_image($flags=0)
125           Return a non-zero value if the domain has a managed save image that
126           will be used at next start. The $flags parameter is unused and
127           defaults to zero.
128
129       $dom->managed_save_remove($flags=0)
130           Remove the current managed save image, causing the guest to perform
131           a full boot next time it is started. The $flags parameter is unused
132           and defaults to zero.
133
134       $dom->managed_save_define_xml($xml, $flags=0)
135           Update the XML of the managed save image to $xml. The $flags
136           parameter is unused and defaults to zero.
137
138       $xml = $dom->managed_save_get_xml_description($flags=0)
139           Get the XML in the managed save image. The $flags parameter accepts
140           the following constants
141
142           Sys::Virt::Domain::SAVE_IMAGE_XML_SECURE
143               Include security sensitive information in the XML dump, such as
144               passwords.
145
146       $dom->core_dump($filename[, $flags])
147           Trigger a core dump of the guest virtual machine, saving its memory
148           image to $filename so it can be analysed by tools such as "crash".
149           The optional $flags flags parameter is currently unused and if
150           omitted will default to 0.
151
152       $dom->core_dump_format($filename, $format, [, $flags])
153           Trigger a core dump of the guest virtual machine, saving its memory
154           image to $filename so it can be analysed by tools such as "crash".
155           The $format parameter is one of the core dump format constants.
156           The optional $flags flags parameter is currently unused and if
157           omitted will default to 0.
158
159           Sys::Virt::Domain::CORE_DUMP_FORMAT_RAW
160               The raw ELF format
161
162           Sys::Virt::Domain::CORE_DUMP_FORMAT_KDUMP_ZLIB
163               The zlib compressed ELF format
164
165           Sys::Virt::Domain::CORE_DUMP_FORMAT_KDUMP_SNAPPY
166               The snappy compressed ELF format
167
168           Sys::Virt::Domain::CORE_DUMP_FORMAT_KDUMP_LZO
169               The lzo compressed ELF format
170
171       $dom->destroy()
172           Immediately poweroff the machine. This is equivalent to removing
173           the power plug. The guest OS is given no time to cleanup / save
174           state.  For a clean poweroff sequence, use the "shutdown" method
175           instead.
176
177       my $info = $dom->get_info()
178           Returns a hash reference summarising the execution state of the
179           domain. The elements of the hash are as follows:
180
181           maxMem
182               The maximum memory allowed for this domain, in kilobytes
183
184           memory
185               The current memory allocated to the domain in kilobytes
186
187           cpuTime
188               The amount of CPU time used by the domain
189
190           nrVirtCpu
191               The current number of virtual CPUs enabled in the domain
192
193           state
194               The execution state of the machine, which will be one of the
195               constants &Sys::Virt::Domain::STATE_*.
196
197       my ($state, $reason) = $dom->get_state()
198           Returns an array whose values specify the current state of the
199           guest, and the reason for it being in that state.  The $state
200           values are the same as for the "get_info" API, and the $reason
201           values come from:
202
203           Sys::Virt::Domain::STATE_CRASHED_UNKNOWN
204               It is not known why the domain has crashed
205
206           Sys::Virt::Domain::STATE_CRASHED_PANICKED
207               The domain has crashed due to a kernel panic
208
209           Sys::Virt::Domain::STATE_NOSTATE_UNKNOWN
210               It is not known why the domain has no state
211
212           Sys::Virt::Domain::STATE_PAUSED_DUMP
213               The guest is paused due to a core dump operation
214
215           Sys::Virt::Domain::STATE_PAUSED_FROM_SNAPSHOT
216               The guest is paused due to a snapshot
217
218           Sys::Virt::Domain::STATE_PAUSED_IOERROR
219               The guest is paused due to an I/O error
220
221           Sys::Virt::Domain::STATE_PAUSED_MIGRATION
222               The guest is paused due to migration
223
224           Sys::Virt::Domain::STATE_PAUSED_SAVE
225               The guest is paused due to a save operation
226
227           Sys::Virt::Domain::STATE_PAUSED_UNKNOWN
228               It is not known why the domain has paused
229
230           Sys::Virt::Domain::STATE_PAUSED_USER
231               The guest is paused at admin request
232
233           Sys::Virt::Domain::STATE_PAUSED_WATCHDOG
234               The guest is paused due to the watchdog
235
236           Sys::Virt::Domain::STATE_PAUSED_SHUTTING_DOWN
237               The guest is paused while domain shutdown takes place
238
239           Sys::Virt::Domain::STATE_PAUSED_SNAPSHOT
240               The guest is paused while a snapshot takes place
241
242           Sys::Virt::Domain::STATE_PAUSED_CRASHED
243               The guest is paused due to a kernel panic
244
245           Sys::Virt::Domain::STATE_PAUSED_STARTING_UP
246               The guest is paused as it is being started up.
247
248           Sys::Virt::Domain::STATE_PAUSED_POSTCOPY
249               The guest is paused as post-copy migration is taking place
250
251           Sys::Virt::Domain::STATE_PAUSED_POSTCOPY_FAILED
252               The guest is paused as post-copy migration failed
253
254           Sys::Virt::Domain::STATE_RUNNING_BOOTED
255               The guest is running after being booted
256
257           Sys::Virt::Domain::STATE_RUNNING_FROM_SNAPSHOT
258               The guest is running after restore from snapshot
259
260           Sys::Virt::Domain::STATE_RUNNING_MIGRATED
261               The guest is running after migration
262
263           Sys::Virt::Domain::STATE_RUNNING_MIGRATION_CANCELED
264               The guest is running after migration abort
265
266           Sys::Virt::Domain::STATE_RUNNING_RESTORED
267               The guest is running after restore from file
268
269           Sys::Virt::Domain::STATE_RUNNING_SAVE_CANCELED
270               The guest is running after save cancel
271
272           Sys::Virt::Domain::STATE_RUNNING_UNKNOWN
273               It is not known why the domain has started
274
275           Sys::Virt::Domain::STATE_RUNNING_UNPAUSED
276               The guest is running after a resume
277
278           Sys::Virt::Domain::STATE_RUNNING_WAKEUP
279               The guest is running after wakeup from power management suspend
280
281           Sys::Virt::Domain::STATE_RUNNING_CRASHED
282               The guest was restarted after crashing
283
284           Sys::Virt::Domain::STATE_RUNNING_POSTCOPY
285               The guest is running but post-copy is taking place
286
287           Sys::Virt::Domain::STATE_BLOCKED_UNKNOWN
288               The guest is blocked for an unknown reason
289
290           Sys::Virt::Domain::STATE_SHUTDOWN_UNKNOWN
291               It is not known why the domain has shutdown
292
293           Sys::Virt::Domain::STATE_SHUTDOWN_USER
294               The guest is shutdown due to admin request
295
296           Sys::Virt::Domain::STATE_SHUTOFF_CRASHED
297               The guest is shutoff after a crash
298
299           Sys::Virt::Domain::STATE_SHUTOFF_DESTROYED
300               The guest is shutoff after being destroyed
301
302           Sys::Virt::Domain::STATE_SHUTOFF_FAILED
303               The guest is shutoff due to a virtualization failure
304
305           Sys::Virt::Domain::STATE_SHUTOFF_FROM_SNAPSHOT
306               The guest is shutoff after a snapshot
307
308           Sys::Virt::Domain::STATE_SHUTOFF_MIGRATED
309               The guest is shutoff after migration
310
311           Sys::Virt::Domain::STATE_SHUTOFF_SAVED
312               The guest is shutoff after a save
313
314           Sys::Virt::Domain::STATE_SHUTOFF_SHUTDOWN
315               The guest is shutoff due to controlled shutdown
316
317           Sys::Virt::Domain::STATE_SHUTOFF_UNKNOWN
318               It is not known why the domain has shutoff
319
320           Sys::Virt::Domain::STATE_SHUTOFF_DAEMON
321               The daemon stopped the guest due to a failure
322
323           Sys::Virt::Domain::STATE_PMSUSPENDED_UNKNOWN
324               It is not known why the domain was suspended to RAM
325
326           Sys::Virt::Domain::STATE_PMSUSPENDED_DISK_UNKNOWN
327               It is not known why the domain was suspended to disk
328
329       my $info = $dom->get_control_info($flags=0)
330           Returns a hash reference providing information about the control
331           channel. The returned keys in the hash are
332
333           "state"
334               One of the CONTROL INFO constants listed later
335
336           "details"
337               Currently unused, always 0.
338
339           "stateTime"
340               The elapsed time since the control channel entered the current
341               state.
342
343       my $time = $dom->get_time($flags=0);
344           Get the current time of the guest, in seconds and nanoseconds.  The
345           $flags parameter is currently unused and defaults to zero. The
346           return value is an array ref with two elements, the first contains
347           the time in seconds, the second contains the remaining nanoseconds.
348
349       $dom->set_time($secs, $nsecs, $flags=0);
350           Set the current time of the guest, in seconds and nanoseconds.  The
351           $flags parameter accepts one of
352
353           "Sys::Virt::Domain::TIME_SYNC"
354               Re-sync domain time from domain's RTC.
355
356       $dom->set_user_password($username, $password, $flags=0);
357           Update the password for account $username to be $password.
358           $password is the clear-text password string unless the
359           PASSWORD_ENCRYPTED flag is set.
360
361           "Sys::Virt::Domain::PASSWORD_ENCRYPTED"
362               The $password is encrypted with the password scheme required by
363               the guest OS.
364
365       $dom->rename($newname, $flags=0)
366           Change the name of an inactive guest to be $newname.  The $flags
367           parameter is currently unused and defaults to zero.
368
369       my @errs = $dom->get_disk_errors($flags=0)
370           Returns a list of all disk errors that have occurred on the backing
371           store for the guest's virtual disks. The returned array elements
372           are hash references, containing two keys
373
374           "path"
375               The path of the disk with an error
376
377           "error"
378               The error type
379
380       $dom->send_key($keycodeset, $holdtime, \@keycodes, $flags=0)
381           Sends a sequence of keycodes to the guest domain. The $keycodeset
382           should be one of the constants listed later in the KEYCODE SET
383           section. $holdtiem is the duration, in milliseconds, to keep the
384           key pressed before releasing it and sending the next keycode.
385           @keycodes is an array reference containing the list of keycodes to
386           send to the guest. The elements in the array should be keycode
387           values from the specified keycode set. $flags is currently unused.
388
389       my $info = $dom->get_block_info($dev, $flags=0)
390           Returns a hash reference summarising the disk usage of the host
391           backing store for a guest block device. The $dev parameter should
392           be the path to the backing store on the host. $flags is currently
393           unused and defaults to 0 if omitted. The returned hash contains the
394           following elements
395
396           capacity
397               Logical size in bytes of the block device backing image *
398
399           allocation
400               Highest allocated extent in bytes of the block device backing
401               image
402
403           physical
404               Physical size in bytes of the container of the backing image
405
406       $dom->set_max_memory($mem)
407           Set the maximum memory for the domain to the value $mem. The value
408           of the $mem parameter is specified in kilobytes.
409
410       $mem = $dom->get_max_memory()
411           Returns the current maximum memory allowed for this domain in
412           kilobytes.
413
414       $dom->set_memory($mem, $flags)
415           Set the current memory for the domain to the value $mem. The value
416           of the $mem parameter is specified in kilobytes. This must be less
417           than, or equal to the domain's max memory limit.  The $flags
418           parameter can control whether the update affects the live guest, or
419           inactive config, defaulting to modifying the current state.
420
421       $dom->set_memory_stats_period($period, $flags)
422           Set the period on which guests memory stats are refreshed, with
423           $period being a value in seconds. The $flags parameter is currently
424           unused.
425
426       $dom->shutdown()
427           Request that the guest OS perform a graceful shutdown and poweroff.
428           This usually requires some form of cooperation from the guest
429           operating system, such as responding to an ACPI signal, or a guest
430           agent process. For an immediate, forceful poweroff, use the
431           "destroy" method instead.
432
433       $dom->reboot([$flags])
434           Request that the guest OS perform a graceful shutdown and
435           optionally restart. The optional $flags parameter is currently
436           unused and if omitted defaults to zero.
437
438       $dom->reset([$flags])
439           Perform a hardware reset of the virtual machine. The guest OS is
440           given no opportunity to shutdown gracefully. The optional $flags
441           parameter is currently unused and if omitted defaults to zero.
442
443       $dom->get_max_vcpus()
444           Return the maximum number of vcpus that are configured for the
445           domain
446
447       $dom->attach_device($xml[, $flags])
448           Hotplug a new device whose configuration is given by $xml, to the
449           running guest. The optional <$flags> parameter defaults to 0, but
450           can accept one of the device hotplug flags described later.
451
452       $dom->detach_device($xml[, $flags])
453           Hotunplug an existing device whose configuration is given by $xml,
454           from the running guest. The optional <$flags> parameter defaults to
455           0, but can accept one of the device hotplug flags described later.
456
457       $dom->detach_device_alias($alias[, $flags])
458           Hotunplug an existing device which is identified by $alias.  The
459           optional <$flags> parameter defaults to 0, but can accept one of
460           the device hotplug flags described later.
461
462       $dom->update_device($xml[, $flags])
463           Update the configuration of an existing device. The new
464           configuration is given by $xml. The optional <$flags> parameter
465           defaults to 0 but can accept one of the device hotplug flags
466           described later.
467
468       $data = $dom->block_peek($path, $offset, $size[, $flags])
469           Peek into the guest disk $path, at byte $offset capturing $size
470           bytes of data. The returned scalar may contain embedded NULLs. The
471           optional $flags parameter is currently unused and if omitted
472           defaults to zero.
473
474       $data = $dom->memory_peek($offset, $size[, $flags])
475           Peek into the guest memory at byte $offset virtual address,
476           capturing $size bytes of memory. The return scalar may contain
477           embedded NULLs. The optional $flags parameter is currently unused
478           and if omitted defaults to zero.
479
480       $flag = $dom->get_autostart();
481           Return a true value if the guest domain is configured to
482           automatically start upon boot. Return false, otherwise
483
484       $dom->set_autostart($flag)
485           Set the state of the autostart flag, which determines whether the
486           guest will automatically start upon boot of the host OS
487
488       $dom->set_vcpus($count, [$flags])
489           Set the number of virtual CPUs in the guest VM to $count.  The
490           optional $flags parameter can be used to control whether the
491           setting changes the live config or inactive config.
492
493       $dom->set_vcpu($cpumap, $state, [$flags])
494           Set the state of the CPUs in $cpumap to $state. The $flags
495           parameter defaults to zero if not present.
496
497       $count = $dom->get_vcpus([$flags])
498           Get the number of virtual CPUs in the guest VM.  The optional
499           $flags parameter can be used to control whether to query the
500           setting of the live config or inactive config.
501
502       $dom->set_guest_vcpus($cpumap, $state, [$flags=0])
503           Set the online status of the guest OS CPUs. The $cpumap parameter
504           describes the set of CPUs to modify (eg "0-3,^1").  $state is
505           either 1 to set the CPUs online, or 0 to set them offline. The
506           $flags parameter is currently unused and defaults to 0.
507
508       $info $dom->get_guest_vcpus([$flags=0])
509           Query information about the guest OS CPUs. The returned data is a
510           hash reference with the following keys.
511
512           vcpus
513               String containing bitmap representing CPU ids reported
514               currently known to the guest.
515
516           online
517               String containing bitmap representing CPU ids that are
518               currently online in the guest.
519
520           offlinable
521               String containing bitmap representing CPU ids that can be
522               offlined in the guest.
523
524           The $flags parameter is currently unused and defaults to 0.
525
526       $type = $dom->get_scheduler_type()
527           Return the scheduler type for the guest domain
528
529       $stats = $dom->block_stats($path)
530           Fetch the current I/O statistics for the block device given by
531           $path.  The returned hash reference contains keys for
532
533           "rd_req"
534               Number of read requests
535
536           "rd_bytes"
537               Number of bytes read
538
539           "wr_req"
540               Number of write requests
541
542           "wr_bytes"
543               Number of bytes written
544
545           "errs"
546               Some kind of error count
547
548       my $params = $dom->get_scheduler_parameters($flags=0)
549           Return the set of scheduler tunable parameters for the guest, as a
550           hash reference. The precise set of keys in the hash are specific to
551           the hypervisor.
552
553       $dom->set_scheduler_parameters($params, $flags=0)
554           Update the set of scheduler tunable parameters. The value names for
555           tunables vary, and can be discovered using the
556           "get_scheduler_params" call
557
558       my $params = $dom->get_memory_parameters($flags=0)
559           Return a hash reference containing the set of memory tunable
560           parameters for the guest. The keys in the hash are one of the
561           constants MEMORY PARAMETERS described later. The $flags parameter
562           accepts one or more the CONFIG OPTION constants documented later,
563           and defaults to 0 if omitted.
564
565       $dom->set_memory_parameters($params, $flags=0)
566           Update the memory tunable parameters for the guest. The $params
567           should be a hash reference whose keys are one of the MEMORY
568           PARAMETERS constants. The $flags parameter accepts one or more the
569           CONFIG OPTION constants documented later, and defaults to 0 if
570           omitted.
571
572       my $params = $dom->get_blkio_parameters($flags=0)
573           Return a hash reference containing the set of blkio tunable
574           parameters for the guest. The keys in the hash are one of the
575           constants BLKIO PARAMETERS described later. The $flags parameter
576           accepts one or more the CONFIG OPTION constants documented later,
577           and defaults to 0 if omitted.
578
579       $dom->set_blkio_parameters($params, $flags=0)
580           Update the blkio tunable parameters for the guest. The $params
581           should be a hash reference whose keys are one of the BLKIO
582           PARAMETERS constants. The $flags parameter accepts one or more the
583           CONFIG OPTION constants documented later, and defaults to 0 if
584           omitted.
585
586       $stats = $dom->get_block_iotune($disk, $flags=0)
587           Return a hash reference containing the set of blkio tunable
588           parameters for the guest disk $disk. The keys in the hash are one
589           of the constants BLOCK IOTUNE PARAMETERS described later.
590
591       $dom->set_block_iotune($disk, $params, $flags=0);
592           Update the blkio tunable parameters for the guest disk $disk. The
593           $params should be a hash reference whose keys are one of the BLOCK
594           IOTUNE PARAMETERS constants.
595
596       my $params = $dom->get_interface_parameters($intf, $flags=0)
597           Return a hash reference containing the set of interface tunable
598           parameters for the guest. The keys in the hash are one of the
599           constants INTERFACE PARAMETERS described later.
600
601       $dom->set_interface_parameters($intf, $params, $flags=0)
602           Update the interface tunable parameters for the guest. The $params
603           should be a hash reference whose keys are one of the INTERFACE
604           PARAMETERS constants.
605
606       my $params = $dom->get_numa_parameters($flags=0)
607           Return a hash reference containing the set of numa tunable
608           parameters for the guest. The keys in the hash are one of the
609           constants NUMA PARAMETERS described later. The $flags parameter
610           accepts one or more the CONFIG OPTION constants documented later,
611           and defaults to 0 if omitted.
612
613       $dom->set_numa_parameters($params, $flags=0)
614           Update the numa tunable parameters for the guest. The $params
615           should be a hash reference whose keys are one of the NUMA
616           PARAMETERS constants. The $flags parameter accepts one or more the
617           CONFIG OPTION constants documented later, and defaults to 0 if
618           omitted.
619
620       my $params = $dom->get_perf_events($flags=0)
621           Return a hash reference containing the set of performance events
622           that are available for the guest. The keys in the hash are one of
623           the constants PERF EVENTS described later.  The $flags parameter
624           accepts one or more the CONFIG OPTION constants documented later,
625           and defaults to 0 if omitted.
626
627       $dom->set_perf_events($params, $flags=0)
628           Update the enabled state for performance events for the guest. The
629           $params should be a hash reference whose keys are one of the PERF
630           EVENTS constants. The $flags parameter accepts one or more the
631           CONFIG OPTION constants documented later, and defaults to 0 if
632           omitted.
633
634       $dom->block_resize($disk, $newsize, $flags=0)
635           Resize the disk $disk to have new size $newsize KB. If the disk is
636           backed by a special image format, the actual resize is done by the
637           hypervisor. If the disk is backed by a raw file, or block device,
638           the resize must be done prior to invoking this API call, and it
639           merely updates the hypervisor's view of the disk size. The
640           following flags may be used
641
642           Sys::Virt::Domain::BLOCK_RESIZE_BYTES
643               Treat $newsize as if it were in bytes, rather than KB.
644
645       $dom->interface_stats($path)
646           Fetch the current I/O statistics for the block device given by
647           $path.  The returned hash containins keys for
648
649           "rx_bytes"
650               Total bytes received
651
652           "rx_packets"
653               Total packets received
654
655           "rx_errs"
656               Total packets received with errors
657
658           "rx_drop"
659               Total packets drop at reception
660
661           "tx_bytes"
662               Total bytes transmitted
663
664           "tx_packets"
665               Total packets transmitted
666
667           "tx_errs"
668               Total packets transmitted with errors
669
670           "tx_drop"
671               Total packets dropped at transmission.
672
673       $dom->memory_stats($flags=0)
674           Fetch the current memory statistics for the guest domain. The
675           $flags parameter is currently unused and can be omitted.  The
676           returned hash containins keys for
677
678           "swap_in"
679               Data read from swap space
680
681           "swap_out"
682               Data written to swap space
683
684           "major_fault"
685               Page fault involving disk I/O
686
687           "minor_fault"
688               Page fault not involving disk I/O
689
690           "unused"
691               Memory not used by the system
692
693           "available"
694               Total memory seen by guest
695
696           "rss"
697               Resident set size. Size of memory resident in host RAM.
698
699       $info = $dom->get_security_label()
700           Fetch information about the security label assigned to the guest
701           domain. The returned hash reference has two keys, "model" gives the
702           name of the security model in effect (eg "selinux"), while "label"
703           provides the name of the security label applied to the domain. This
704           method only returns information about the first security label. To
705           retrieve all labels, use "get_security_label_list".
706
707       @info = $dom->get_security_label_list()
708           Fetches information about all security labels assigned to the guest
709           domain. The elements in the returned array are all hash references,
710           whose keys are as described for "get_security_label".
711
712       $ddom = $dom->migrate(destcon, \%params, flags=0)
713           Migrate a domain to an alternative host. The "destcon" parameter
714           should be a "Sys::Virt" connection to the remote target host.  The
715           "flags" parameter takes one or more of the
716           "Sys::Virt::Domain::MIGRATE_XXX" constants described later in this
717           document. The %params parameter is a hash reference used to set
718           various parameters for the migration operation, with the following
719           valid keys.
720
721           "Sys::Virt::Domain::MIGRATE_PARAM_URI"
722               The URI to use for initializing the domain migration. It takes
723               a hypervisor specific format. The uri_transports element of the
724               hypervisor capabilities XML includes details of the supported
725               URI schemes. When omitted libvirt will auto-generate suitable
726               default URI. It is typically only necessary to specify this URI
727               if the destination host has multiple interfaces and a specific
728               interface is required to transmit migration data.
729
730           "Sys::Virt::Domain::MIGRATE_PARAM_DEST_NAME"
731               The name to be used for the domain on the destination host.
732               Omitting this parameter keeps the domain name the same. This
733               field is only allowed to be used with hypervisors that support
734               domain renaming during migration.
735
736           "Sys::Virt::Domain::MIGRATE_PARAM_DEST_XML"
737               The new configuration to be used for the domain on the
738               destination host.  The configuration must include an identical
739               set of virtual devices, to ensure a stable guest ABI across
740               migration. Only parameters related to host side configuration
741               can be changed in the XML. Hypervisors which support this field
742               will forbid migration if the provided XML would cause a change
743               in the guest ABI. This field cannot be used to rename the
744               domain during migration (use VIR_MIGRATE_PARAM_DEST_NAME field
745               for that purpose).  Domain name in the destination XML must
746               match the original domain name.
747
748               Omitting this parameter keeps the original domain
749               configuration. Using this field with hypervisors that do not
750               support changing domain configuration during migration will
751               result in a failure.
752
753           "Sys::Virt::Domain::MIGRATE_PARAM_GRAPHICS_URI"
754               URI to use for migrating client's connection to domain's
755               graphical console as VIR_TYPED_PARAM_STRING. If specified, the
756               client will be asked to automatically reconnect using these
757               parameters instead of the automatically computed ones. This can
758               be useful if, e.g., the client does not have a direct access to
759               the network virtualization hosts are connected to and needs to
760               connect through a proxy. The URI is formed as follows:
761
762                     protocol://hostname[:port]/[?parameters]
763
764               where protocol is either "spice" or "vnc" and parameters is a
765               list of protocol specific parameters separated by '&'.
766               Currently recognized parameters are "tlsPort" and "tlsSubject".
767               For example,
768
769                     spice://target.host.com:1234/?tlsPort=4567
770
771           "Sys::Virt::Domain::MIGRATE_PARAM_BANDWIDTH"
772               The maximum bandwidth (in MiB/s) that will be used for
773               migration. If set to 0 or omitted, libvirt will choose a
774               suitable default. Some hypervisors do not support this feature
775               and will return an error if this field is used and is not 0.
776
777           "Sys::Virt::Domain::MIGRATE_PARAM_BANDWIDTH_POSTCOPY"
778               The maximum bandwidth (in MiB/s) that will be used for
779               migration during post-copy phase. If set to 0 or omitted,
780               libvirt will choose a suitable default. Some hypervisors do not
781               support this feature and return an error if this field is used
782               and is not 0.
783
784           "Sys::Virt::Domain::MIGRATE_PARAM_LISTEN_ADDRESS"
785               The address on which to listen for incoming migration
786               connections.  If omitted, libvirt will listen on the wildcard
787               address (0.0.0.0 or ::). This default may be a security risk if
788               guests, or other untrusted users have the ability to connect to
789               the virtualization host, thus use of an explicit restricted
790               listen address is recommended.
791
792           "Sys::Virt::Domain::MIGRATE_PARAM_DISK_PORT"
793               Port that destination server should use for incoming disks
794               migration. Type is VIR_TYPED_PARAM_INT. If set to 0 or omitted,
795               libvirt will choose a suitable default. At the moment this is
796               only supported by the QEMU driver.
797
798           "Sys::Virt::Domain::MIGRATE_PARAM_MIGRATE_DISKS"
799               The list of disks to migrate when doing block storage
800               migration.  In contrast to other parameters whose values are
801               plain strings, the parameter value should be an array
802               reference, whose elements are in turn strings representing the
803               disk target names.
804
805           "Sys::Virt::Domain::MIGRATE_PARAM_COMPRESSION"
806               The type of compression method use use, either "xbzrle" or
807               "mt".
808
809           "Sys::Virt::Domain::MIGRATE_PARAM_COMPRESSION_MT_THREADS"
810               The number of compression threads to use
811
812           "Sys::Virt::Domain::MIGRATE_PARAM_COMPRESSION_MT_DTHREADS"
813               The number of decompression threads
814
815           "Sys::Virt::Domain::MIGRATE_PARAM_COMPRESSION_MT_LEVEL"
816               The compression level from 0 (no compression) to 9 (maximum
817               compression)
818
819           "Sys::Virt::Domain::MIGRATE_PARAM_COMPRESSION_XBZRLE_CACHE"
820               The size of the cache for xbzrle compression
821
822           "Sys::Virt::Domain::MIGRATE_PARAM_PERSIST_XML"
823               The alternative persistent XML config to copy
824
825           "Sys::Virt::Domain::MIGRATE_PARAM_AUTO_CONVERGE_INITIAL"
826               The initial percentage to throttle guest vCPUs
827
828           "Sys::Virt::Domain::MIGRATE_PARAM_AUTO_CONVERGE_INCREMENT"
829               The additional percentage step size to throttle guest vCPUs if
830               progress is not made
831
832           "Sys::Virt::Domain::MIGRATE_PARAM_PARALLEL_CONNECTIONS"
833               The number of connections used during parallel migration.
834
835           "Sys::Virt::Domain::MIGRATE_PARAM_TLS_DESTINATION"
836               Override the destination host name used for TLS verification.
837               Normally the TLS certificate from the destination host must
838               match the host's name for TLS verification to succeed. When the
839               certificate does not match the destination hostname and the
840               expected cetificate's hostname is known, this parameter can be
841               used to pass this expected hostname when starting the
842               migration.
843
844       $ddom = $dom->migrate(destcon, flags=0, dname=undef, uri=undef,
845       bandwidth=0)
846           Migrate a domain to an alternative host. Use of positional
847           parameters with "migrate" is deprecated in favour of passing a hash
848           reference as described above.
849
850       $ddom = $dom->migrate2(destcon, dxml, flags, dname, uri, bandwidth)
851           Migrate a domain to an alternative host. This method is deprecated
852           in favour of passing a hash ref to "migrate".
853
854       $ddom = $dom->migrate_to_uri(desturi, \%params, flags=0)
855           Migrate a domain to an alternative host. The "desturi" parameter
856           should be a valid libvirt connection URI for the remote target
857           host.  The "flags" parameter takes one or more of the
858           "Sys::Virt::Domain::MIGRATE_XXX" constants described later in this
859           document. The %params parameter is a hash reference used to set
860           various parameters for the migration operation, with the same keys
861           described for the "migrate" API.
862
863       $dom->migrate_to_uri(desturi, flags, dname, bandwidth)
864           Migrate a domain to an alternative host. Use of positional
865           parameters with "migrate_to_uri" is deprecated in favour of passing
866           a hash reference as described above.
867
868       $dom->migrate_to_uri2(dconnuri, miguri, dxml, flags, dname, bandwidth)
869           Migrate a domain to an alternative host. This method is deprecated
870           in favour of passing a hash ref to "migrate_to_uri".
871
872       $dom->migrate_set_max_downtime($downtime, $flags=0)
873           Set the maximum allowed downtime during migration of the guest. A
874           longer downtime makes it more likely that migration will complete,
875           at the cost of longer time blackout for the guest OS at the switch
876           over point. The "downtime" parameter is measured in milliseconds.
877           The $flags parameter is currently unused and defaults to zero.
878
879       $downtime = $dom->migrate_get_max_downtime($flags=0) Get the current
880       value of the maximum downtime allowed during a migration of a guest.
881       The returned <downtime> value is measured in milliseconds. The $flags
882       parameter is currently unused and defaults to zero.
883       $dom->migrate_set_max_speed($bandwidth, $flags=0)
884           Set the maximum allowed bandwidth during migration of the guest.
885           The "bandwidth" parameter is measured in MB/second.  The $flags
886           parameter takes zero or more of the constants:
887
888           $Sys::Virt::Domain::MIGRATE_MAX_SPEED_POSTCOPY
889               Set the post-copy speed instead of the pre-copy speed.
890
891       $bandwidth = $dom->migrate_get_max_speed($flags=0)
892           Get the maximum allowed bandwidth during migration fo the guest.
893           The returned <bandwidth> value is measured in MB/second.  The
894           $flags parameter is accepts the same constants as
895           "migrate_set_max_speed".
896
897       $dom->migrate_set_compression_cache($cacheSize, $flags=0)
898           Set the maximum allowed compression cache size during migration of
899           the guest. The "cacheSize" parameter is measured in bytes.  The
900           $flags parameter is currently unused and defaults to zero.
901
902       $cacheSize = $dom->migrate_get_compression_cache($flags=0)
903           Get the maximum allowed compression cache size during migration of
904           the guest. The returned <bandwidth> value is measured in bytes.
905           The $flags parameter is currently unused and defaults to zero.
906
907       $dom->migrate_start_post_copy($flags=0)
908           Switch the domain from pre-copy to post-copy mode. This requires
909           that the original migrate command had the
910           "Sys::Virt::Domain::MIGRATE_POST_COPY" flag specified.
911
912       $dom->inject_nmi($flags)
913           Trigger an NMI in the guest virtual machine. The $flags parameter
914           is currently unused and defaults to 0.
915
916       $dom->open_console($st, $devname, $flags)
917           Open the text console for a serial, parallel or paravirt console
918           device identified by $devname, connecting it to the stream $st. If
919           $devname is undefined, the default console will be opened. $st must
920           be a "Sys::Virt::Stream" object used for bi-directional
921           communication with the console. $flags is currently unused,
922           defaulting to 0.
923
924       $dom->open_channel($st, $devname, $flags)
925           Open the text console for a data channel device identified by
926           $devname, connecting it to the stream $st. $st must be a
927           "Sys::Virt::Stream" object used for bi-directional communication
928           with the channel. $flags is currently unused, defaulting to 0.
929
930       $dom->open_graphics($idx, $fd, $flags)
931           Open the graphics console for a guest, identified by $idx, counting
932           from 0. The $fd should be a file descriptor for an anoymous socket
933           pair. The $flags argument should be one of the constants listed at
934           the end of this document, and defaults to 0.
935
936       $fd = $dom->open_graphics_fd($idx, $flags)
937           Open the graphics console for a guest, identified by $idx, counting
938           from 0. The $flags argument should be one of the constants listed
939           at the end of this document, and defaults to 0. The return value
940           will be a file descriptor connected to the console which must be
941           closed when no longer needed.  This method is preferred over
942           "open_graphics" since it will work correctly under sVirt mandatory
943           access control policies.
944
945       my $mimetype = $dom->screenshot($st, $screen, $flags)
946           Capture a screenshot of the virtual machine's monitor. The $screen
947           parameter controls which monitor is captured when using a multi-
948           head or multi-card configuration. $st must be a "Sys::Virt::Stream"
949           object from which the data can be read. $flags is currently unused
950           and defaults to 0. The mimetype of the screenshot is returned
951
952       @vcpuinfo = $dom->get_vcpu_info($flags=0)
953           Obtain information about the state of all virtual CPUs in a running
954           guest domain. The returned list will have one element for each
955           vCPU, where each elements contains a hash reference. The keys in
956           the hash are, "number" the vCPU number, "cpu" the physical CPU on
957           which the vCPU is currently scheduled, "cpuTime" the cumulative
958           execution time of the vCPU, "state" the running state and
959           "affinity" giving the allowed shedular placement. The value for
960           "affinity" is a string representing a bitmask against physical
961           CPUs, 8 cpus per character. To extract the bits use the "unpack"
962           function with the "b*" template. NB The "state", "cpuTime", "cpu"
963           values are only available if using $flags value of 0, and the
964           domain is currently running; otherwise they will all be set to
965           zero.
966
967       $dom->pin_vcpu($vcpu, $mask)
968           Pin the virtual CPU given by index $vcpu to physical CPUs given by
969           $mask. The $mask is a string representing a bitmask against
970           physical CPUs, 8 cpus per character.
971
972       $mask = $dom->get_emulator_pin_info()
973           Obtain information about the CPU affinity of the emulator process.
974           The returned $mask is a bitstring against physical CPUs, 8 cpus per
975           character. To extract the bits use the "unpack" function with the
976           "b*" template.
977
978       $dom->pin_emulator($newmask, $flags=0)
979           Pin the emulator threads to the physical CPUs identified by the
980           affinity in $newmask. The $newmask is a bitstring against the
981           physical CPUa, 8 cpus per character. To create a suitable
982           bitstring, use the "vec" function with a value of 1 for the "BITS"
983           parameter.
984
985       @iothreadinfo = $dom->get_iothread_info($flags=0)
986           Obtain information about the state of all IOThreads in a running
987           guest domain. The returned list will have one element for each
988           IOThread, where each elements contains a hash reference. The keys
989           in the hash are, "number" the IOThread number and "affinity" giving
990           the allowed schedular placement. The value for "affinity" is a
991           string representing a bitmask against physical CPUs, 8 cpus per
992           character. To extract the bits use the "unpack" function with the
993           "b*" template.
994
995       $dom->pin_iothread($iothread, $mask)
996           Pin the IOThread given by index $iothread to physical CPUs given by
997           $mask. The $mask is a string representing a bitmask against
998           physical CPUs, 8 cpus per character.
999
1000       $dom->add_iothread($iothread, $flags=0)
1001           Add a new IOThread by the $iothread value to the guest domain.  The
1002           $flags parameter accepts one or more the CONFIG OPTION constants
1003           documented later, and defaults to 0 if omitted.
1004
1005       $dom->del_iothread($iothread, $flags=0)
1006           Delete an existing IOThread by the $iothread value from the guest
1007           domain.  The $flags parameter accepts one or more the CONFIG OPTION
1008           constants documented later, and defaults to 0 if omitted.
1009
1010       $dom->set_iothread($iothread, $params, $flags=0)
1011           Set parameters for the IOThread by the $iothread value on the guest
1012           domain.  The $params parameter is a hash reference whose keys are
1013           the "IOTHREAD STATS" constants documented later.  The $flags
1014           parameter accepts one or more the CONFIG OPTION constants
1015           documented later, and defaults to 0 if omitted.
1016
1017       my @stats = $dom->get_cpu_stats($startCpu, $numCpus, $flags=0)
1018           Requests the guests host physical CPU usage statistics, starting
1019           from host CPU <$startCpu> counting up to $numCpus. If $startCpu is
1020           -1 and $numCpus is 1, then the utilization across all CPUs is
1021           returned. Returns an array of hash references, each element
1022           containing stats for one CPU.
1023
1024       my $info = $dom->get_job_info()
1025           Returns a hash reference summarising the execution state of the
1026           background job. The elements of the hash are as follows:
1027
1028           type
1029               The type of job, one of the JOB TYPE constants listed later in
1030               this document.
1031
1032           timeElapsed
1033               The elapsed time in milliseconds
1034
1035           timeRemaining
1036               The expected remaining time in milliseconds. Only set if the
1037               "type" is JOB_UNBOUNDED.
1038
1039           dataTotal
1040               The total amount of data expected to be processed by the job,
1041               in bytes.
1042
1043           dataProcessed
1044               The current amount of data processed by the job, in bytes.
1045
1046           dataRemaining
1047               The expected amount of data remaining to be processed by the
1048               job, in bytes.
1049
1050           memTotal
1051               The total amount of mem expected to be processed by the job, in
1052               bytes.
1053
1054           memProcessed
1055               The current amount of mem processed by the job, in bytes.
1056
1057           memRemaining
1058               The expected amount of mem remaining to be processed by the
1059               job, in bytes.
1060
1061           fileTotal
1062               The total amount of file expected to be processed by the job,
1063               in bytes.
1064
1065           fileProcessed
1066               The current amount of file processed by the job, in bytes.
1067
1068           fileRemaining
1069               The expected amount of file remaining to be processed by the
1070               job, in bytes.
1071
1072       my ($type, $stats) = $dom->get_job_stats($flags=0)
1073           Returns an array summarising the execution state of the background
1074           job. The $type value is one of the JOB TYPE constants listed later
1075           in this document. The $stats value is a hash reference, whose
1076           elements are one of the following constants.
1077
1078           type
1079               The type of job, one of the JOB TYPE constants listed later in
1080               this document.
1081
1082               The $flags parameter defaults to zero and can take one of the
1083               following constants.
1084
1085               Sys::Virt::Domain::JOB_STATS_COMPLETED
1086                   Return the stats of the most recently completed job.
1087
1088               Sys::Virt::Domain::JOB_STATS_KEEP_COMPLETED
1089                   Don't clear the completed stats after reading them.
1090
1091           Sys::Virt::Domain::JOB_TIME_ELAPSED
1092               The elapsed time in milliseconds
1093
1094           Sys::Virt::Domain::JOB_TIME_ELAPSED_NET
1095               Time in milliseconds since the beginning of the migration job
1096               NOT including the time required to transfer control flow from
1097               the source host to the destination host.
1098
1099           Sys::Virt::Domain::JOB_TIME_REMAINING
1100               The expected remaining time in milliseconds. Only set if the
1101               "type" is JOB_UNBOUNDED.
1102
1103           Sys::Virt::Domain::JOB_DATA_TOTAL
1104               The total amount of data expected to be processed by the job,
1105               in bytes.
1106
1107           Sys::Virt::Domain::JOB_DATA_PROCESSED
1108               The current amount of data processed by the job, in bytes.
1109
1110           Sys::Virt::Domain::JOB_DATA_REMAINING
1111               The expected amount of data remaining to be processed by the
1112               job, in bytes.
1113
1114           Sys::Virt::Domain::JOB_MEMORY_TOTAL
1115               The total amount of mem expected to be processed by the job, in
1116               bytes.
1117
1118           Sys::Virt::Domain::JOB_MEMORY_PROCESSED
1119               The current amount of mem processed by the job, in bytes.
1120
1121           Sys::Virt::Domain::JOB_MEMORY_REMAINING
1122               The expected amount of mem remaining to be processed by the
1123               job, in bytes.
1124
1125           Sys::Virt::Domain::JOB_MEMORY_CONSTANT
1126               The number of pages filled with a constant byte which have been
1127               transferred
1128
1129           Sys::Virt::Domain::JOB_MEMORY_NORMAL
1130               The number of pages transferred without any compression
1131
1132           Sys::Virt::Domain::JOB_MEMORY_NORMAL_BYTES
1133               The number of bytes transferred without any compression
1134
1135           Sys::Virt::Domain::JOB_MEMORY_BPS
1136               The bytes per second transferred
1137
1138           Sys::Virt::Domain::JOB_MEMORY_DIRTY_RATE
1139               The number of memory pages dirtied per second
1140
1141           Sys::Virt::Domain::JOB_MEMORY_PAGE_SIZE
1142               The memory page size in bytes
1143
1144           Sys::Virt::Domain::JOB_MEMORY_ITERATION
1145               The total number of iterations over guest memory
1146
1147           Sys::Virt::Domain::JOB_MEMORY_POSTCOPY_REQS
1148               The number of page requests received from the destination host
1149               during post-copy migration.
1150
1151           Sys::Virt::Domain::JOB_DISK_TOTAL
1152               The total amount of file expected to be processed by the job,
1153               in bytes.
1154
1155           Sys::Virt::Domain::JOB_DISK_PROCESSED
1156               The current amount of file processed by the job, in bytes.
1157
1158           Sys::Virt::Domain::JOB_DISK_REMAINING
1159               The expected amount of file remaining to be processed by the
1160               job, in bytes.
1161
1162           Sys::Virt::Domain::JOB_DISK_BPS
1163               The bytes per second transferred
1164
1165           Sys::Virt::Domain::JOB_AUTO_CONVERGE_THROTTLE
1166               The percentage by which vCPUs are currently throttled
1167
1168           Sys::Virt::Domain::JOB_COMPRESSION_CACHE
1169               The size of the compression cache in bytes
1170
1171           Sys::Virt::Domain::JOB_COMPRESSION_BYTES
1172               The number of compressed bytes transferred
1173
1174           Sys::Virt::Domain::JOB_COMPRESSION_PAGES
1175               The number of compressed pages transferred
1176
1177           Sys::Virt::Domain::JOB_COMPRESSION_CACHE_MISSES
1178               The number of changing pages not in compression cache
1179
1180           Sys::Virt::Domain::JOB_COMPRESSION_OVERFLOW
1181               The number of changing pages in the compression cache but sent
1182               uncompressed since the compressed page was larger than the non-
1183               compressed page.
1184
1185           Sys::Virt::Domain::JOB_DOWNTIME
1186               The number of milliseconds of downtime expected during
1187               migration switchover.
1188
1189           Sys::Virt::Domain::JOB_DOWNTIME_NET
1190               Real measured downtime (ms) NOT including the time required to
1191               transfer control flow from the source host to the destination
1192               host.
1193
1194           Sys::Virt::Domain::JOB_SETUP_TIME
1195               The number of milliseconds of time doing setup of the job
1196
1197           Sys::Virt::Domain::JOB_OPERATION
1198               The type of operation associated with the job
1199
1200           Sys::Virt::Domain::JOB_SUCCESS
1201               Whether the job was successfully completed.
1202
1203           Sys::Virt::Domain::JOB_DISK_TEMP_TOTAL
1204               Possible total temporary disk space for the job in bytes
1205
1206           Sys::Virt::Domain::JOB_DISK_TEMP_USED
1207               Current total temporary disk space for the job in bytes
1208
1209           The values for the Sys::Virt::Domain::JOB_OPERATION field are
1210
1211           Sys::Virt::Domain::JOB_OPERATION_UNKNOWN
1212               No known job type
1213
1214           Sys::Virt::Domain::JOB_OPERATION_START
1215               The guest is starting
1216
1217           Sys::Virt::Domain::JOB_OPERATION_SAVE
1218               The guest is saving to disk
1219
1220           Sys::Virt::Domain::JOB_OPERATION_RESTORE
1221               The guest is restoring from disk
1222
1223           Sys::Virt::Domain::JOB_OPERATION_MIGRATION_IN
1224               The guest is migrating in from another host
1225
1226           Sys::Virt::Domain::JOB_OPERATION_MIGRATION_OUT
1227               The guest is migrating out to another host
1228
1229           Sys::Virt::Domain::JOB_OPERATION_SNAPSHOT
1230               The guest is saving a snapshot
1231
1232           Sys::Virt::Domain::JOB_OPERATION_SNAPSHOT_REVERT
1233               The guest is reverting to a snapshot
1234
1235           Sys::Virt::Domain::JOB_OPERATION_DUMP
1236               The guest is saving a crash dump
1237
1238           Sys::Virt::Domain::JOB_OPERATION_BACKUP
1239               The guest is performing a block backup
1240
1241       $dom->abort_job()
1242           Aborts the currently executing job
1243
1244       my $info = $dom->get_block_job_info($path, $flags=0)
1245           Returns a hash reference summarising the execution state of the
1246           block job. The $path parameter should be the fully qualified path
1247           of the block device being changed. Valid $flags include:
1248
1249           Sys::Virt::Domain::BLOCK_JOB_INFO_BANDWIDTH_BYTES
1250               Treat bandwidth value as bytes instead of MiB.
1251
1252       $dom->set_block_job_speed($path, $bandwidth, $flags=0)
1253           Change the maximum I/O bandwidth used by the block job that is
1254           currently executing for $path. The $bandwidth argument is specified
1255           in MB/s.  The $flags parameter can take the bitwise union of the
1256           values:
1257
1258           Sys::Virt::Domain::BLOCK_JOB_SPEED_BANDWIDTH_BYTES
1259               The $bandwidth parameter value is measured in bytes/s instead
1260               of MB/s.
1261
1262       $dom->abort_block_job($path, $flags=0)
1263           Abort the current job that is executing for the block device
1264           associated with $path
1265
1266       $dom->block_pull($path, $bandwidth, $flags=0)
1267           Merge the backing files associated with $path into the top level
1268           file. The $bandwidth parameter specifies the maximum I/O rate to
1269           allow in MB/s. The $flags parameter can take the bitwise union of
1270           the values:
1271
1272           Sys::Virt::Domain::BLOCK_PULL_BANDWIDTH_BYTES
1273               The $bandwidth parameter value is measured in bytes/s instead
1274               of MB/s.
1275
1276       $dom->block_rebase($path, $base, $bandwidth, $flags=0)
1277           Switch the backing path associated with $path to instead use $base.
1278           The $bandwidth parameter specifies the maximum I/O rate to allow in
1279           MB/s. The $flags parameter can take the bitwise union of the
1280           values:
1281
1282           Sys::Virt::Domain::BLOCK_REBASE_BANDWIDTH_BYTES
1283               The $bandwidth parameter value is measured in bytes/s instead
1284               of MB/s.
1285
1286       $dom->block_copy($path, $destxml, $params, $flags=0)
1287           Copy contents of a disk image <$path> into the target volume
1288           described by $destxml which follows the schema of the <disk>
1289           element in the domain XML. The $params parameter is a hash of
1290           optional parameters to control the process
1291
1292           Sys::Virt::Domain::BLOCK_COPY_BANDWIDTH
1293               The maximum bandwidth in bytes per second.
1294
1295           Sys::Virt::Domain::BLOCK_COPY_GRANULARITY
1296               The granularity in bytes of the copy process
1297
1298           Sys::Virt::Domain::BLOCK_COPY_BUF_SIZE
1299               The maximum amount of data in flight in bytes.
1300
1301       $dom->block_commit($path, $base, $top, $bandwidth, $flags=0)
1302           Commit changes there were made to the temporary top level file
1303           $top.  Takes all the differences between $top and $base and merge
1304           them into $base. The $bandwidth parameter specifies the maximum I/O
1305           rate to allow in MB/s.  The $flags parameter can take the bitwise
1306           union of the values:
1307
1308           Sys::Virt::Domain::BLOCK_COMMIT_BANDWIDTH_BYTES
1309               The $bandwidth parameter value is measured in bytes instead of
1310               MB/s.
1311
1312       $count = $dom->num_of_snapshots()
1313           Return the number of saved snapshots of the domain
1314
1315       @names = $dom->list_snapshot_names()
1316           List the names of all saved snapshots. The names can be used with
1317           the "lookup_snapshot_by_name"
1318
1319       @snapshots = $dom->list_snapshots()
1320           Return a list of all snapshots currently known to the domain. The
1321           elements in the returned list are instances of the
1322           Sys::Virt::DomainSnapshot class.  This method requires O(n) RPC
1323           calls, so the "list_all_snapshots" method is recommended as a more
1324           efficient alternative.
1325
1326       my @snapshots = $dom->list_all_snapshots($flags)
1327           Return a list of all domain snapshots associated with this domain.
1328           The elements in the returned list are instances of the
1329           Sys::Virt::DomainSnapshot class. The $flags parameter can be used
1330           to filter the list of return domain snapshots.
1331
1332       my $snapshot = $dom->get_snapshot_by_name($name)
1333           Return the domain snapshot with a name of $name. The returned
1334           object is an instance of the Sys::Virt::DomainSnapshot class.
1335
1336       $dom->has_current_snapshot()
1337           Returns a true value if the domain has a currently active snapshot
1338
1339       $snapshot = $dom->current_snapshot()
1340           Returns the currently active snapshot for the domain.
1341
1342       $snapshot = $dom->create_snapshot($xml[, $flags])
1343           Create a new snapshot from the $xml. The $flags parameter accepts
1344           the SNAPSHOT CREATION constants listed in
1345           "Sys::Virt::DomainSnapshots".
1346
1347       my @checkpoints = $dom->list_all_checkpoints($flags)
1348           Return a list of all domain checkpoints associated with this
1349           domain.  The elements in the returned list are instances of the
1350           Sys::Virt::DomainCheckpoint class. The $flags parameter can be used
1351           to filter the list of return domain checkpoints.
1352
1353       my $checkpoint = $dom->get_checkpoint_by_name($name)
1354           Return the domain checkpoint with a name of $name. The returned
1355           object is an instance of the Sys::Virt::DomainCheckpoint class.
1356
1357       $checkpoint = $dom->create_checkpoint($xml[, $flags])
1358           Create a new checkpoint from the $xml. The $flags parameter accepts
1359           the CHECKPOINT CREATION constants listed in
1360           "Sys::Virt::DomainCheckpoints".
1361
1362       $dom->backup_begin($backupxml, $checkpointxml=undef, $flags=0);
1363           Start a point-in-time backup job for the specified disks of a
1364           running domain. The $backupxml parameter describes the backup
1365           operation, including which disks to use. The optional
1366           $checkpointxml parameter can be used to create a checkpoint
1367           covering to the same point in time as the backup. The optional
1368           $flags parameter can be one of the following constants:
1369
1370           Sys::Virt::Domain::BACKUP_BEGIN_REUSE_EXTERNAL
1371               Assume that the output/temporary files for the backup have been
1372               precreated by the caller with the correct size and format.
1373
1374       $xml = $dom->backup_get_xml_description($flags=0);
1375           Get the XML description of the currently executing backup job. If
1376           there is no backup job then an error is raised.
1377
1378       $dom->fs_trim($mountPoint, $minimum, $flags=0);
1379           Issue an FS_TRIM command to the device at $mountPoint to remove
1380           chunks of unused space that are at least $minimum bytes in length.
1381           $flags is currently unused and defaults to zero.
1382
1383       $dom->fs_freeze(\@mountPoints, $flags=0);
1384           Freeze all the filesystems associated with the @mountPoints array
1385           reference. If <@mountPoints> is an empty list, then all filesystems
1386           will be frozen. $flags is currently unused and defaults to zero.
1387
1388       $dom->fs_thaw(\@mountPoints, $flags=0);
1389           Thaw all the filesystems associated with the @mountPoints array
1390           reference. If <@mountPoints> is an empty list, then all filesystems
1391           will be thawed. $flags is currently unused and defaults to zero.
1392
1393       @fslist = $dom->get_fs_info($flags=0);
1394           Obtain a list of all guest filesystems. The returned list will
1395           contain one element for each filesystem, whose value will be a hash
1396           reference with the following keys
1397
1398           name
1399               The name of the guest device that is mounted
1400
1401           fstype
1402               The filesystem type (eg 'ext4', 'fat', 'ntfs', etc)
1403
1404           mountpoint
1405               The location in the filesystem tree of the mount
1406
1407           devalias
1408               An array reference containing list of device aliases associated
1409               with the guest device. The device aliases correspond to disk
1410               target names in the guest XML configuration
1411
1412       @nics = $dom->get_interface_addresses($src, $flags=0);
1413           Obtain a list of all guest network interfaces. The $src parameter
1414           is one of the constants
1415
1416           Sys::Virt::Domain::INTERFACE_ADDRESSES_SRC_LEASE
1417               Extract the DHCP server lease information
1418
1419           Sys::Virt::Domain::INTERFACE_ADDRESSES_SRC_AGENT
1420               Query the guest OS via an agent
1421
1422           Sys::Virt::Domain::INTERFACE_ADDRESSES_SRC_ARP
1423               Extract from the local ARP tables
1424
1425           The returned list will contain one element for each interface.  The
1426           values in the list will be a hash reference with the following keys
1427
1428           name
1429               The name of the guest interface that is mounted
1430
1431           hwaddr
1432               The hardware address, aka MAC, if available.
1433
1434           addrs
1435               An array reference containing list of IP addresses associated
1436               with the guest NIC. Each element in the array is a further hash
1437               containing
1438
1439               addr
1440                   The IP address string
1441
1442               prefix
1443                   The IP address network prefix
1444
1445               type
1446                   The IP address type (IPv4 vs IPv6)
1447
1448       $dom->send_process_signal($pid, $signum, $flags=0);
1449           Send the process $pid the signal $signum. The $signum value must be
1450           one of the constants listed later, not a POSIX or Linux signal
1451           value. $flags is currently unused and defaults to zero.
1452
1453       $dom->set_block_threshold($dev, $threshold, $flags=0);
1454           Set the threshold level for delivering the EVENT_ID_BLOCK_THRESHOLD
1455           if the device or backing chain element described by $dev is written
1456           beyond the set $threshold level. The threshold level is unset once
1457           the event fires. The event might not be delivered at all if
1458           libvirtd was not running at the moment when the threshold was
1459           reached.
1460
1461       $dom->set_lifecycle_action($type, $action, $flags=0)
1462           Changes the actions of lifecycle events for domain represented as
1463           <on_$type>$action</on_$type> in the domain XML.
1464
1465       $info = $dom->get_launch_security_info($flags=0)
1466           Get information about the domain launch security policy. $flags is
1467           currently unused and defaults to zero. The returned hash may
1468           contain the following keys
1469
1470           Sys::Virt::Domain::LAUNCH_SECURITY_SEV_MEASUREMENT
1471               The AMD SEV launch measurement
1472
1473       $info = $dom->get_guest_info($types, $flags=0)
1474           Get information about the domain guest configuration. The $types
1475           parameter determines what pieces of information are returned and
1476           should be the bitwise or of the following constants:
1477
1478           Sys::Virt::Domain::GUEST_INFO_USERS
1479               Active user information
1480
1481           Sys::Virt::Domain::GUEST_INFO_OS
1482               Misc operating system information
1483
1484           Sys::Virt::Domain::GUEST_INFO_TIMEZONE
1485               The guest timezone
1486
1487           Sys::Virt::Domain::GUEST_INFO_HOSTNAME
1488               The guest hostname
1489
1490           Sys::Virt::Domain::GUEST_INFO_FILESYSTEM
1491               Filesystem mount information
1492
1493           $flags is currently unused and defaults to zero.
1494
1495       $dom->set_agent_response_timeout($timeout, $flags=0)
1496           Set the amount of time to wait for the agent to respond to a
1497           command. $timeout is a positive integer representing the number of
1498           seconds to wait, or one of the constants:
1499
1500           Sys::Virt::Domain::AGENT_RESPONSE_TIMEOUT_BLOCK
1501               Wait forever with no timeout
1502
1503           Sys::Virt::Domain::AGENT_RESPONSE_TIMEOUT_NOWAIT
1504               Don't want at all, return immediately
1505
1506           Sys::Virt::Domain::AGENT_RESPONSE_TIMEOUT_DEFAULT
1507               Use the hypervisor driver's default timeout
1508
1509           The $flags parameter is currently unused and defaults to zero.
1510

CONSTANTS

1512       A number of the APIs take a "flags" parameter. In most cases passing a
1513       value of zero will be satisfactory. Some APIs, however, accept named
1514       constants to alter their behaviour. This section documents the current
1515       known constants.
1516
1517   DOMAIN STATE
1518       The domain state constants are useful in interpreting the "state" key
1519       in the hash returned by the "get_info" method.
1520
1521       Sys::Virt::Domain::STATE_NOSTATE
1522           The domain is active, but is not running / blocked (eg idle)
1523
1524       Sys::Virt::Domain::STATE_RUNNING
1525           The domain is active and running
1526
1527       Sys::Virt::Domain::STATE_BLOCKED
1528           The domain is active, but execution is blocked
1529
1530       Sys::Virt::Domain::STATE_PAUSED
1531           The domain is active, but execution has been paused
1532
1533       Sys::Virt::Domain::STATE_SHUTDOWN
1534           The domain is active, but in the shutdown phase
1535
1536       Sys::Virt::Domain::STATE_SHUTOFF
1537           The domain is inactive, and shut down.
1538
1539       Sys::Virt::Domain::STATE_CRASHED
1540           The domain is inactive, and crashed.
1541
1542       Sys::Virt::Domain::STATE_PMSUSPENDED
1543           The domain is active, but in power management suspend state
1544
1545   CONTROL INFO
1546       The following constants can be used to determine what the guest domain
1547       control channel status is
1548
1549       Sys::Virt::Domain::CONTROL_ERROR
1550           The control channel has a fatal error
1551
1552       Sys::Virt::Domain::CONTROL_OK
1553           The control channel is ready for jobs
1554
1555       Sys::Virt::Domain::CONTROL_OCCUPIED
1556           The control channel is busy
1557
1558       Sys::Virt::Domain::CONTROL_JOB
1559           The control channel is busy with a job
1560
1561       If the status is "Sys::Virt::Domain::CONTROL_ERROR", then one of the
1562       following constants describes the reason
1563
1564       Sys::Virt::Domain::CONTROL_ERROR_REASON_NONE
1565           There is no reason for the error available
1566
1567       Sys::Virt::Domain::CONTROL_ERROR_REASON_UNKNOWN
1568           The reason for the error is unknown
1569
1570       Sys::Virt::Domain::CONTROL_ERROR_REASON_INTERNAL
1571           There was an internal error in libvirt
1572
1573       Sys::Virt::Domain::CONTROL_ERROR_REASON_MONITOR
1574           There was an error speaking to the monitor
1575
1576   DOMAIN CREATION
1577       The following constants can be used to control the behaviour of domain
1578       creation
1579
1580       Sys::Virt::Domain::START_PAUSED
1581           Keep the guest vCPUs paused after starting the guest
1582
1583       Sys::Virt::Domain::START_AUTODESTROY
1584           Automatically destroy the guest when the connection is closed (or
1585           fails)
1586
1587       Sys::Virt::Domain::START_BYPASS_CACHE
1588           Do not use OS I/O cache if starting a domain with a saved state
1589           image
1590
1591       Sys::Virt::Domain::START_FORCE_BOOT
1592           Boot the guest, even if there was a saved snapshot
1593
1594       Sys::Virt::Domain::START_VALIDATE
1595           Validate the XML document against the XML schema
1596
1597   DOMAIN DEFINE
1598       The following constants can be used to control the behaviour of domain
1599       define operations
1600
1601       Sys::Virt::Domain::DEFINE_VALIDATE
1602           Validate the XML document against the XML schema
1603
1604   KEYCODE SETS
1605       The following constants define the set of supported keycode sets
1606
1607       Sys::Virt::Domain::KEYCODE_SET_LINUX
1608           The Linux event subsystem keycodes
1609
1610       Sys::Virt::Domain::KEYCODE_SET_XT
1611           The original XT keycodes
1612
1613       Sys::Virt::Domain::KEYCODE_SET_ATSET1
1614           The AT Set1 keycodes (aka XT)
1615
1616       Sys::Virt::Domain::KEYCODE_SET_ATSET2
1617           The AT Set2 keycodes (aka AT)
1618
1619       Sys::Virt::Domain::KEYCODE_SET_ATSET3
1620           The AT Set3 keycodes (aka PS2)
1621
1622       Sys::Virt::Domain::KEYCODE_SET_OSX
1623           The OS-X keycodes
1624
1625       Sys::Virt::Domain::KEYCODE_SET_XT_KBD
1626           The XT keycodes from the Linux Keyboard driver
1627
1628       Sys::Virt::Domain::KEYCODE_SET_USB
1629           The USB HID keycode set
1630
1631       Sys::Virt::Domain::KEYCODE_SET_WIN32
1632           The Windows keycode set
1633
1634       Sys::Virt::Domain::KEYCODE_SET_QNUM
1635           The XT keycode set, with the extended scancodes using the high bit
1636           of the first byte, instead of the low bit of the second byte.
1637
1638       Sys::Virt::Domain::KEYCODE_SET_RFB
1639           A deprecated alias for "Sys::Virt::Domain::KEYCODE_SET_QNUM"
1640
1641   MEMORY PEEK
1642       The following constants can be used with the "memory_peek" method's
1643       flags parameter
1644
1645       Sys::Virt::Domain::MEMORY_VIRTUAL
1646           Indicates that the offset is using virtual memory addressing.
1647
1648       Sys::Virt::Domain::MEMORY_PHYSICAL
1649           Indicates that the offset is using physical memory addressing.
1650
1651   VCPU STATE
1652       The following constants are useful when interpreting the virtual CPU
1653       run state
1654
1655       Sys::Virt::Domain::VCPU_OFFLINE
1656           The virtual CPU is not online
1657
1658       Sys::Virt::Domain::VCPU_RUNNING
1659           The virtual CPU is executing code
1660
1661       Sys::Virt::Domain::VCPU_BLOCKED
1662           The virtual CPU is waiting to be scheduled
1663
1664   OPEN GRAPHICS CONSTANTS
1665       The following constants are used when opening a connection to the guest
1666       graphics server
1667
1668       Sys::Virt::Domain::OPEN_GRAPHICS_SKIPAUTH
1669           Skip authentication of the client
1670
1671   OPEN CONSOLE CONSTANTS
1672       The following constants are used when opening a connection to the guest
1673       console
1674
1675       Sys::Virt::Domain::OPEN_CONSOLE_FORCE
1676           Force opening of the console, disconnecting any other open session
1677
1678       Sys::Virt::Domain::OPEN_CONSOLE_SAFE
1679           Check if the console driver supports safe operations
1680
1681   OPEN CHANNEL CONSTANTS
1682       The following constants are used when opening a connection to the guest
1683       channel
1684
1685       Sys::Virt::Domain::OPEN_CHANNEL_FORCE
1686           Force opening of the channel, disconnecting any other open session
1687
1688   XML DUMP OPTIONS
1689       The following constants are used to control the information included in
1690       the XML configuration dump
1691
1692       Sys::Virt::Domain::XML_INACTIVE
1693           Report the persistent inactive configuration for the guest, even if
1694           it is currently running.
1695
1696       Sys::Virt::Domain::XML_SECURE
1697           Include security sensitive information in the XML dump, such as
1698           passwords.
1699
1700       Sys::Virt::Domain::XML_UPDATE_CPU
1701           Update the CPU model definition to match the current executing
1702           state.
1703
1704       Sys::Virt::Domain::XML_MIGRATABLE
1705           Update the XML to allow migration to older versions of libvirt
1706
1707   DEVICE HOTPLUG OPTIONS
1708       The following constants are used to control device hotplug operations
1709
1710       Sys::Virt::Domain::DEVICE_MODIFY_CURRENT
1711           Modify the domain in its current state
1712
1713       Sys::Virt::Domain::DEVICE_MODIFY_LIVE
1714           Modify only the live state of the domain
1715
1716       Sys::Virt::Domain::DEVICE_MODIFY_CONFIG
1717           Modify only the persistent config of the domain
1718
1719       Sys::Virt::Domain::DEVICE_MODIFY_FORCE
1720           Force the device to be modified
1721
1722   MEMORY OPTIONS
1723       The following constants are used to control memory change operations
1724
1725       Sys::Virt::Domain::MEM_CURRENT
1726           Modify the current state
1727
1728       Sys::Virt::Domain::MEM_LIVE
1729           Modify only the live state of the domain
1730
1731       Sys::Virt::Domain::MEM_CONFIG
1732           Modify only the persistent config of the domain
1733
1734       Sys::Virt::Domain::MEM_MAXIMUM
1735           Modify the maximum memory value
1736
1737   CONFIG OPTIONS
1738       The following constants are used to control what configuration a domain
1739       update changes
1740
1741       Sys::Virt::Domain::AFFECT_CURRENT
1742           Modify the current state
1743
1744       Sys::Virt::Domain::AFFECT_LIVE
1745           Modify only the live state of the domain
1746
1747       Sys::Virt::Domain::AFFECT_CONFIG
1748           Modify only the persistent config of the domain
1749
1750   MIGRATE OPTIONS
1751       The following constants are used to control how migration is performed
1752
1753       Sys::Virt::Domain::MIGRATE_LIVE
1754           Migrate the guest without interrupting its execution on the source
1755           host.
1756
1757       Sys::Virt::Domain::MIGRATE_PEER2PEER
1758           Manage the migration process over a direct peer-2-peer connection
1759           between the source and destination host libvirtd daemons.
1760
1761       Sys::Virt::Domain::MIGRATE_TUNNELLED
1762           Tunnel the migration data over the libvirt daemon connection,
1763           rather than the native hypervisor data transport. Requires
1764           PEER2PEER flag to be set.
1765
1766       Sys::Virt::Domain::MIGRATE_PERSIST_DEST
1767           Make the domain persistent on the destination host, defining its
1768           configuration file upon completion of migration.
1769
1770       Sys::Virt::Domain::MIGRATE_UNDEFINE_SOURCE
1771           Remove the domain's persistent configuration after migration
1772           completes successfully.
1773
1774       Sys::Virt::Domain::MIGRATE_PAUSED
1775           Do not re-start execution of the guest CPUs on the destination host
1776           after migration completes.
1777
1778       Sys::Virt::Domain::MIGRATE_NON_SHARED_DISK
1779           Copy the complete contents of the disk images during migration
1780
1781       Sys::Virt::Domain::MIGRATE_NON_SHARED_INC
1782           Copy the incrementally changed contents of the disk images during
1783           migration
1784
1785       Sys::Virt::Domain::MIGRATE_CHANGE_PROTECTION
1786           Do not allow changes to the virtual domain configuration while
1787           migration is taking place. This option is automatically implied if
1788           doing a peer-2-peer migration.
1789
1790       Sys::Virt::Domain::MIGRATE_UNSAFE
1791           Migrate even if the compatibility check indicates the migration
1792           will be unsafe to the guest.
1793
1794       Sys::Virt::Domain::MIGRATE_OFFLINE
1795           Migrate the guest config if the guest is not currently running
1796
1797       Sys::Virt::Domain::MIGRATE_COMPRESSED
1798           Enable compression of the migration data stream
1799
1800       Sys::Virt::Domain::MIGRATE_ABORT_ON_ERROR
1801           Abort if an I/O error occurrs on the disk
1802
1803       Sys::Virt::Domain::MIGRATE_AUTO_CONVERGE
1804           Force convergance of the migration operation by throttling guest
1805           runtime
1806
1807       Sys::Virt::Domain::MIGRATE_RDMA_PIN_ALL
1808           Pin memory for RDMA transfer
1809
1810       Sys::Virt::Domain::MIGRATE_POSTCOPY
1811           Enable support for post-copy migration
1812
1813       Sys::Virt::Domain::MIGRATE_TLS
1814           Setting this flag will cause the migration to attempt to use the
1815           TLS environment configured by the hypervisor in order to perform
1816           the migration. If incorrectly configured on either source or
1817           destination, the migration will fail.
1818
1819       Sys::Virt::Domain::MIGRATE_PARALLEL
1820           Send memory pages to the destination host through several network
1821           connections. See "Sys::Virt::Domain::MIGRATE_PARAM_PARALLEL_*"
1822           parameters for configuring the parallel migration.
1823
1824   UNDEFINE CONSTANTS
1825       The following constants can be used when undefining virtual domain
1826       configurations
1827
1828       Sys::Virt::Domain::UNDEFINE_MANAGED_SAVE
1829           Also remove any managed save image when undefining the virtual
1830           domain
1831
1832       Sys::Virt::Domain::UNDEFINE_SNAPSHOTS_METADATA
1833           Also remove any snapshot metadata when undefining the virtual
1834           domain.
1835
1836       Sys::Virt::Domain::UNDEFINE_NVRAM
1837           Also remove any NVRAM state file when undefining the virtual
1838           domain.
1839
1840       Sys::Virt::Domain::UNDEFINE_KEEP_NVRAM
1841           keep NVRAM state file when undefining the virtual domain.
1842
1843       Sys::Virt::Domain::UNDEFINE_CHECKPOINTS_METADATA
1844           Also remove any checkpoint metadata when undefining the virtual
1845           domain.
1846
1847   JOB TYPES
1848       The following constants describe the different background job types.
1849
1850       Sys::Virt::Domain::JOB_NONE
1851           No job is active
1852
1853       Sys::Virt::Domain::JOB_BOUNDED
1854           A job with a finite completion time is active
1855
1856       Sys::Virt::Domain::JOB_UNBOUNDED
1857           A job with an unbounded completion time is active
1858
1859       Sys::Virt::Domain::JOB_COMPLETED
1860           The job has finished, but isn't cleaned up
1861
1862       Sys::Virt::Domain::JOB_FAILED
1863           The job has hit an error, but isn't cleaned up
1864
1865       Sys::Virt::Domain::JOB_CANCELLED
1866           The job was aborted at user request, but isn't cleaned up
1867
1868   MEMORY PARAMETERS
1869       The following constants are useful when getting/setting memory
1870       parameters for guests
1871
1872       Sys::Virt::Domain::MEMORY_HARD_LIMIT
1873           The maximum memory the guest can use.
1874
1875       Sys::Virt::Domain::MEMORY_SOFT_LIMIT
1876           The memory upper limit enforced during memory contention.
1877
1878       Sys::Virt::Domain::MEMORY_MIN_GUARANTEE
1879           The minimum memory guaranteed to be reserved for the guest.
1880
1881       Sys::Virt::Domain::MEMORY_SWAP_HARD_LIMIT
1882           The maximum swap the guest can use.
1883
1884       Sys::Virt::Domain::MEMORY_PARAM_UNLIMITED
1885           The value of an unlimited memory parameter
1886
1887   BLKIO PARAMETERS
1888       The following parameters control I/O tuning for the domain as a whole
1889
1890       Sys::Virt::Domain::BLKIO_WEIGHT
1891           The I/O weight parameter
1892
1893       Sys::Virt::Domain::BLKIO_DEVICE_WEIGHT
1894           The per-device I/O weight parameter
1895
1896       Sys::Virt::Domain::BLKIO_DEVICE_READ_BPS
1897           The per-device I/O bytes read per second
1898
1899       Sys::Virt::Domain::BLKIO_DEVICE_READ_IOPS
1900           The per-device I/O operations read per second
1901
1902       Sys::Virt::Domain::BLKIO_DEVICE_WRITE_BPS
1903           The per-device I/O bytes write per second
1904
1905       Sys::Virt::Domain::BLKIO_DEVICE_WRITE_IOPS
1906           The per-device I/O operations write per second
1907
1908   BLKIO TUNING PARAMETERS
1909       The following parameters control I/O tuning for an individual guest
1910       disk.
1911
1912       Sys::Virt::Domain::BLOCK_IOTUNE_TOTAL_BYTES_SEC
1913           The total bytes processed per second.
1914
1915       Sys::Virt::Domain::BLOCK_IOTUNE_READ_BYTES_SEC
1916           The bytes read per second.
1917
1918       Sys::Virt::Domain::BLOCK_IOTUNE_WRITE_BYTES_SEC
1919           The bytes written per second.
1920
1921       Sys::Virt::Domain::BLOCK_IOTUNE_TOTAL_IOPS_SEC
1922           The total I/O operations processed per second.
1923
1924       Sys::Virt::Domain::BLOCK_IOTUNE_READ_IOPS_SEC
1925           The I/O operations read per second.
1926
1927       Sys::Virt::Domain::BLOCK_IOTUNE_WRITE_IOPS_SEC
1928           The I/O operations written per second.
1929
1930       Sys::Virt::Domain::BLOCK_IOTUNE_TOTAL_BYTES_SEC_MAX
1931           The maximum total bytes processed per second.
1932
1933       Sys::Virt::Domain::BLOCK_IOTUNE_READ_BYTES_SEC_MAX
1934           The maximum bytes read per second.
1935
1936       Sys::Virt::Domain::BLOCK_IOTUNE_WRITE_BYTES_SEC_MAX
1937           The maximum bytes written per second.
1938
1939       Sys::Virt::Domain::BLOCK_IOTUNE_TOTAL_IOPS_SEC_MAX
1940           The maximum total I/O operations processed per second.
1941
1942       Sys::Virt::Domain::BLOCK_IOTUNE_READ_IOPS_SEC_MAX
1943           The maximum I/O operations read per second.
1944
1945       Sys::Virt::Domain::BLOCK_IOTUNE_WRITE_IOPS_SEC_MAX
1946           The maximum I/O operations written per second.
1947
1948       Sys::Virt::Domain::BLOCK_IOTUNE_SIZE_IOPS_SEC
1949           The maximum I/O operations per second
1950
1951       Sys::Virt::Domain::BLOCK_IOTUNE_GROUP_NAME
1952           A string representing a group name to allow sharing of I/O
1953           throttling quota between multiple drives
1954
1955       Sys::Virt::Domain::BLOCK_IOTUNE_TOTAL_BYTES_SEC_MAX_LENGTH
1956           The duration in seconds allowed for maximum total bytes processed
1957           per second.
1958
1959       Sys::Virt::Domain::BLOCK_IOTUNE_READ_BYTES_SEC_MAX_LENGTH
1960           The duration in seconds allowed for maximum bytes read per second.
1961
1962       Sys::Virt::Domain::BLOCK_IOTUNE_WRITE_BYTES_SEC_MAX_LENGTH
1963           The duration in seconds allowed for maximum bytes written per
1964           second.
1965
1966       Sys::Virt::Domain::BLOCK_IOTUNE_TOTAL_IOPS_SEC_MAX_LENGTH
1967           The duration in seconds allowed for maximum total I/O operations
1968           processed per second.
1969
1970       Sys::Virt::Domain::BLOCK_IOTUNE_READ_IOPS_SEC_MAX_LENGTH
1971           The duration in seconds allowed for maximum I/O operations read per
1972           second.
1973
1974       Sys::Virt::Domain::BLOCK_IOTUNE_WRITE_IOPS_SEC_MAX_LENGTH
1975           The duration in seconds allowed for maximum I/O operations written
1976           per second.
1977
1978   SCHEDULER CONSTANTS
1979       Sys::Virt::Domain::SCHEDULER_CAP
1980           The VM cap tunable
1981
1982       Sys::Virt::Domain::SCHEDULER_CPU_SHARES
1983           The CPU shares tunable
1984
1985       Sys::Virt::Domain::SCHEDULER_LIMIT
1986           The VM limit tunable
1987
1988       Sys::Virt::Domain::SCHEDULER_RESERVATION
1989           The VM reservation tunable
1990
1991       Sys::Virt::Domain::SCHEDULER_SHARES
1992           The VM shares tunable
1993
1994       Sys::Virt::Domain::SCHEDULER_VCPU_PERIOD
1995           The VCPU period tunable
1996
1997       Sys::Virt::Domain::SCHEDULER_VCPU_QUOTA
1998           The VCPU quota tunable
1999
2000       Sys::Virt::Domain::SCHEDULER_GLOBAL_PERIOD
2001           The VM global period tunable
2002
2003       Sys::Virt::Domain::SCHEDULER_GLOBAL_QUOTA
2004           The VM global quota tunable
2005
2006       Sys::Virt::Domain::SCHEDULER_WEIGHT
2007           The VM weight tunable
2008
2009   NUMA PARAMETERS
2010       The following constants are useful when getting/setting the guest NUMA
2011       memory policy
2012
2013       Sys::Virt::Domain::NUMA_MODE
2014           The NUMA policy mode
2015
2016       Sys::Virt::Domain::NUMA_NODESET
2017           The NUMA nodeset mask
2018
2019       The following constants are useful when interpreting the
2020       "Sys::Virt::Domain::NUMA_MODE" parameter value
2021
2022       Sys::Virt::Domain::NUMATUNE_MEM_STRICT
2023           Allocation is mandatory from the mask nodes
2024
2025       Sys::Virt::Domain::NUMATUNE_MEM_PREFERRED
2026           Allocation is preferred from the masked nodes
2027
2028       Sys::Virt::Domain::NUMATUNE_MEM_INTERLEAVE
2029           Allocation is interleaved across all masked nods
2030
2031   INTERFACE PARAMETERS
2032       The following constants are useful when getting/setting the per network
2033       interface tunable parameters
2034
2035       Sys::Virt::Domain::BANDWIDTH_IN_AVERAGE
2036           The average inbound bandwidth
2037
2038       Sys::Virt::Domain::BANDWIDTH_IN_PEAK
2039           The peak inbound bandwidth
2040
2041       Sys::Virt::Domain::BANDWIDTH_IN_BURST
2042           The burstable inbound bandwidth
2043
2044       Sys::Virt::Domain::BANDWIDTH_IN_FLOOR
2045           The minimum inbound bandwidth
2046
2047       Sys::Virt::Domain::BANDWIDTH_OUT_AVERAGE
2048           The average outbound bandwidth
2049
2050       Sys::Virt::Domain::BANDWIDTH_OUT_PEAK
2051           The peak outbound bandwidth
2052
2053       Sys::Virt::Domain::BANDWIDTH_OUT_BURST
2054           The burstable outbound bandwidth
2055
2056   PERF EVENTS
2057       The following constants defined performance events which can be
2058       monitored for a guest
2059
2060       Sys::Virt::Domain::PERF_PARAM_CMT
2061           The CMT event counter which can be used to measure the usage of
2062           cache (bytes) by applications running on the platform. It
2063           corresponds to the "perf.cmt" field in the *Stats APIs.
2064
2065       Sys::Virt::Domain::PERF_PARAM_MBML
2066           The MBML event counter which can be used to monitor the amount of
2067           data (bytes/s) sent through the memory controller on the socket.
2068           It corresponds to the "perf.mbml" field in the *Stats APIs.
2069
2070       Sys::Virt::Domain::PERF_PARAM_MBMT
2071           The MBMT event counter which can be used to monitor total system
2072           bandwidth (bytes/s) from one level of cache to another. It
2073           corresponds to the "perf.mbmt" field in the *Stats APIs.
2074
2075       Sys::Virt::Domain::PERF_PARAM_CACHE_MISSES
2076           The cache_misses perf event counter which can be used to measure
2077           the count of cache misses by applications running on the platform.
2078           It corresponds to the "perf.cache_misses" field in the *Stats APIs.
2079
2080       Sys::Virt::Domain::PERF_PARAM_CACHE_REFERENCES
2081           The cache_references perf event counter which can be used to
2082           measure the count of cache hits by applications running on the
2083           platform. It corresponds to the "perf.cache_references" field in
2084           the *Stats APIs.
2085
2086       Sys::Virt::Domain::PERF_PARAM_CPU_CYCLES
2087           The cpu_cycles perf event counter which can be used to measure how
2088           many cpu cycles one instruction needs.  It corresponds to the
2089           "perf.cpu_cycles" field in the *Stats APIs.
2090
2091       Sys::Virt::Domain::PERF_PARAM_INSTRUCTIONS
2092           The instructions perf event counter which can be used to measure
2093           the count of instructions by applications running on the platform.
2094           It corresponds to the "perf.instructions" field in the *Stats APIs.
2095
2096       Sys::Virt::Domain::PERF_PARAM_BRANCH_INSTRUCTIONS
2097           The branch_instructions perf event counter which can be used to
2098           measure the count of instructions by applications running on the
2099           platform. It corresponds to the "perf.branch_instructions" field in
2100           the *Stats APIs.
2101
2102       Sys::Virt::Domain::PERF_PARAM_BRANCH_MISSES
2103           The branch_misses perf event which can be used to measure the count
2104           of branch misses by applications running on the platform.  It
2105           corresponds to the "perf.branch_misses" field in the *Stats APIs.
2106
2107       Sys::Virt::Domain::PERF_PARAM_BUS_CYCLES The bus_cycles perf event
2108       counter which can be used to measure the count of bus cycles by
2109       applications running on the platform. It corresponds to the
2110       "perf.bus_cycles" field in the *Stats APIs.
2111       Sys::Virt::Domain::PERF_PARAM_STALLED_CYCLES_FRONTEND The
2112       stalled_cycles_frontend perf event counter which can be used to measure
2113       the count of stalled cpu cycles in the frontend of the instruction
2114       processor pipeline by applications running on the platform. It
2115       corresponds to the "perf.stalled_cycles_frontend" field in the *Stats
2116       APIs.
2117       Sys::Virt::Domain::PERF_PARAM_STALLED_CYCLES_BACKEND The
2118       stalled_cycles_backend perf event counter which can be used to measure
2119       the count of stalled cpu cycles in the backend of the instruction
2120       processor pipeline by application running on the platform. It
2121       corresponds to the "perf.stalled_cycles_backend" field in the *Stats
2122       APIs.
2123       Sys::Virt::Domain::PERF_PARAM_REF_CPU_CYCLES The ref_cpu_cycles perf
2124       event counter which can be used to measure the count of total cpu
2125       cycles not affected by CPU frequency scaling by applications running on
2126       the platform. It corresponds to the "perf.ref_cpu_cycles" field in the
2127       *Stats APIs.
2128       Sys::Virt::Domain::PERF_PARAM_CPU_CLOCK The cpu_clock perf event
2129       counter which can be used to measure the count of cpu clock time by
2130       applications running on the platform. It corresponds to the
2131       "perf.cpu_clock" field in the *Stats APIs.
2132       Sys::Virt::Domain::PERF_PARAM_TASK_CLOCK The task_clock perf event
2133       counter which can be used to measure the count of task clock time by
2134       applications running on the platform. It corresponds to the
2135       "perf.task_clock" field in the *Stats APIs.
2136       Sys::Virt::Domain::PERF_PARAM_PAGE_FAULTS The page_faults perf event
2137       counter which can be used to measure the count of page faults by
2138       applications running on the platform. It corresponds to the
2139       "perf.page_faults" field in the *Stats APIs.
2140       Sys::Virt::Domain::PERF_PARAM_CONTEXT_SWITCHES The context_switches
2141       perf event counter which can be used to measure the count of context
2142       switches by applications running on the platform. It corresponds to the
2143       "perf.context_switches" field in the *Stats APIs.
2144       Sys::Virt::Domain::PERF_PARAM_CPU_MIGRATIONS The cpu_migrations perf
2145       event counter which can be used to measure the count of cpu migrations
2146       by applications running on the platform. It corresponds to the
2147       "perf.cpu_migrations" field in the *Stats APIs.
2148       Sys::Virt::Domain::PERF_PARAM_PAGE_FAULTS_MIN The page_faults_min perf
2149       event counter which can be used to measure the count of minor page
2150       faults by applications running on the platform. It corresponds to the
2151       "perf.page_faults_min" field in the *Stats APIs.
2152       Sys::Virt::Domain::PERF_PARAM_PAGE_FAULTS_MAJ The page_faults_maj perf
2153       event counter which can be used to measure the count of major page
2154       faults by applications running on the platform. It corresponds to the
2155       "perf.page_faults_maj" field in the *Stats APIs.
2156       Sys::Virt::Domain::PERF_PARAM_ALIGNMENT_FAULTS The alignment_faults
2157       perf event counter which can be used to measure the count of alignment
2158       faults by applications running on the platform. It corresponds to the
2159       "perf.alignment_faults" field in the *Stats APIs.
2160       Sys::Virt::Domain::PERF_PARAM_EMULATION_FAULTS The emulation_faults
2161       perf event counter which can be used to measure the count of emulation
2162       faults by applications running on the platform. It corresponds to the
2163       "perf.emulation_faults" field in the *Stats APIs.
2164
2165   IOTHREAD STATS
2166       The following constants defined IOThread statistics which can be
2167       monitored for a guest
2168
2169       Sys::Virt::Domain::IOTHREAD_PARAM_POLL_MAX_NS
2170           The maximum polling time that can be used by polling algorithm in
2171           ns.  The polling time starts at 0 (zero) and is the time spent by
2172           the guest to process IOThread data before returning the CPU to the
2173           host. The polling time will be dynamically modified over time based
2174           on the poll_grow and poll_shrink parameters provided.
2175
2176       Sys::Virt::Domain::IOTHREAD_PARAM_POLL_GROW
2177           This provides a value for the dynamic polling adjustment algorithm
2178           to use to grow its polling interval up to the poll_max_ns value.
2179
2180       Sys::Virt::Domain::IOTHREAD_PARAM_POLL_SHRINK
2181           This provides a value for the dynamic polling adjustment algorithm
2182           to use to shrink its polling interval when the polling interval
2183           exceeds the poll_max_ns value.
2184
2185   VCPU FLAGS
2186       The following constants are useful when getting/setting the VCPU count
2187       for a guest
2188
2189       Sys::Virt::Domain::VCPU_LIVE
2190           Flag to request the live value
2191
2192       Sys::Virt::Domain::VCPU_CONFIG
2193           Flag to request the persistent config value
2194
2195       Sys::Virt::Domain::VCPU_CURRENT
2196           Flag to request the current config value
2197
2198       Sys::Virt::Domain::VCPU_MAXIMUM
2199           Flag to request adjustment of the maximum vCPU value
2200
2201       Sys::Virt::Domain::VCPU_GUEST
2202           Flag to request the guest VCPU mask
2203
2204       Sys::Virt::Domain::VCPU_HOTPLUGGABLE
2205           Flag to make vcpus added hot(un)pluggable
2206
2207   STATE CHANGE EVENTS
2208       The following constants allow domain state change events to be
2209       interpreted. The events contain both a state change, and a reason.
2210
2211       Sys::Virt::Domain::EVENT_DEFINED
2212           Indicates that a persistent configuration has been defined for the
2213           domain.
2214
2215           Sys::Virt::Domain::EVENT_DEFINED_ADDED
2216               The defined configuration is newly added
2217
2218           Sys::Virt::Domain::EVENT_DEFINED_UPDATED
2219               The defined configuration is an update to an existing
2220               configuration
2221
2222           Sys::Virt::Domain::EVENT_DEFINED_RENAMED
2223               The defined configuration is a rename of an existing
2224               configuration
2225
2226           Sys::Virt::Domain::EVENT_DEFINED_FROM_SNAPSHOT
2227               The defined configuration was restored from a snapshot
2228
2229       Sys::Virt::Domain::EVENT_RESUMED
2230           The domain has resumed execution
2231
2232           Sys::Virt::Domain::EVENT_RESUMED_MIGRATED
2233               The domain resumed because migration has completed. This is
2234               emitted on the destination host.
2235
2236           Sys::Virt::Domain::EVENT_RESUMED_UNPAUSED
2237               The domain resumed because the admin unpaused it.
2238
2239           Sys::Virt::Domain::EVENT_RESUMED_FROM_SNAPSHOT
2240               The domain resumed because it was restored from a snapshot
2241
2242           Sys::Virt::Domain::EVENT_RESUMED_POSTCOPY
2243               The domain resumed but post-copy is running in background
2244
2245       Sys::Virt::Domain::EVENT_STARTED
2246           The domain has started running
2247
2248           Sys::Virt::Domain::EVENT_STARTED_BOOTED
2249               The domain was booted from shutoff state
2250
2251           Sys::Virt::Domain::EVENT_STARTED_MIGRATED
2252               The domain started due to an incoming migration
2253
2254           Sys::Virt::Domain::EVENT_STARTED_RESTORED
2255               The domain was restored from saved state file
2256
2257           Sys::Virt::Domain::EVENT_STARTED_FROM_SNAPSHOT
2258               The domain was restored from a snapshot
2259
2260           Sys::Virt::Domain::EVENT_STARTED_WAKEUP
2261               The domain was woken up from suspend
2262
2263       Sys::Virt::Domain::EVENT_STOPPED
2264           The domain has stopped running
2265
2266           Sys::Virt::Domain::EVENT_STOPPED_CRASHED
2267               The domain stopped because guest operating system has crashed
2268
2269           Sys::Virt::Domain::EVENT_STOPPED_DESTROYED
2270               The domain stopped because administrator issued a destroy
2271               command.
2272
2273           Sys::Virt::Domain::EVENT_STOPPED_FAILED
2274               The domain stopped because of a fault in the host
2275               virtualization environment.
2276
2277           Sys::Virt::Domain::EVENT_STOPPED_MIGRATED
2278               The domain stopped because it was migrated to another machine.
2279
2280           Sys::Virt::Domain::EVENT_STOPPED_SAVED
2281               The domain was saved to a state file
2282
2283           Sys::Virt::Domain::EVENT_STOPPED_SHUTDOWN
2284               The domain stopped due to graceful shutdown of the guest.
2285
2286           Sys::Virt::Domain::EVENT_STOPPED_FROM_SNAPSHOT
2287               The domain was stopped due to a snapshot
2288
2289       Sys::Virt::Domain::EVENT_SHUTDOWN
2290           The domain has shutdown but is not yet stopped
2291
2292           Sys::Virt::Domain::EVENT_SHUTDOWN_FINISHED
2293               The domain finished shutting down
2294
2295           Sys::Virt::Domain::EVENT_SHUTDOWN_HOST
2296               The domain shutdown due to host trigger
2297
2298           Sys::Virt::Domain::EVENT_SHUTDOWN_GUEST
2299               The domain shutdown due to guest trigger
2300
2301       Sys::Virt::Domain::EVENT_SUSPENDED
2302           The domain has stopped executing, but still exists
2303
2304           Sys::Virt::Domain::EVENT_SUSPENDED_MIGRATED
2305               The domain has been suspended due to offline migration
2306
2307           Sys::Virt::Domain::EVENT_SUSPENDED_PAUSED
2308               The domain has been suspended due to administrator pause
2309               request.
2310
2311           Sys::Virt::Domain::EVENT_SUSPENDED_IOERROR
2312               The domain has been suspended due to a block device I/O error.
2313
2314           Sys::Virt::Domain::EVENT_SUSPENDED_FROM_SNAPSHOT
2315               The domain has been suspended due to resume from snapshot
2316
2317           Sys::Virt::Domain::EVENT_SUSPENDED_WATCHDOG
2318               The domain has been suspended due to the watchdog triggering
2319
2320           Sys::Virt::Domain::EVENT_SUSPENDED_RESTORED
2321               The domain has been suspended due to restore from saved state
2322
2323           Sys::Virt::Domain::EVENT_SUSPENDED_API_ERROR
2324               The domain has been suspended due to an API error
2325
2326           Sys::Virt::Domain::EVENT_SUSPENDED_POSTCOPY
2327               The domain has been suspended for post-copy migration
2328
2329           Sys::Virt::Domain::EVENT_SUSPENDED_POSTCOPY_FAILED
2330               The domain has been suspended due post-copy migration failing
2331
2332       Sys::Virt::Domain::EVENT_UNDEFINED
2333           The persistent configuration has gone away
2334
2335           Sys::Virt::Domain::EVENT_UNDEFINED_REMOVED
2336               The domain configuration has gone away due to it being removed
2337               by administrator.
2338
2339           Sys::Virt::Domain::EVENT_UNDEFINED_RENAMED
2340               The undefined configuration is a rename of an existing
2341               configuration
2342
2343       Sys::Virt::Domain::EVENT_PMSUSPENDED
2344           The domain has stopped running
2345
2346           Sys::Virt::Domain::EVENT_PMSUSPENDED_MEMORY
2347               The domain has suspend to RAM.
2348
2349           Sys::Virt::Domain::EVENT_PMSUSPENDED_DISK
2350               The domain has suspend to Disk.
2351
2352       Sys::Virt::Domain::EVENT_CRASHED
2353           The domain has crashed
2354
2355           Sys::Virt::Domain::EVENT_CRASHED_PANICKED
2356               The domain has crashed due to a kernel panic
2357
2358           Sys::Virt::Domain::EVENT_CRASHED_CRASHLOADED
2359               The domain has crashed and reloaded itself
2360
2361   EVENT ID CONSTANTS
2362       Sys::Virt::Domain::EVENT_ID_LIFECYCLE
2363           Domain lifecycle events
2364
2365       Sys::Virt::Domain::EVENT_ID_REBOOT
2366           Soft / warm reboot events
2367
2368       Sys::Virt::Domain::EVENT_ID_RTC_CHANGE
2369           RTC clock adjustments
2370
2371       Sys::Virt::Domain::EVENT_ID_IO_ERROR
2372           File IO errors, typically from disks
2373
2374       Sys::Virt::Domain::EVENT_ID_WATCHDOG
2375           Watchdog device triggering
2376
2377       Sys::Virt::Domain::EVENT_ID_GRAPHICS
2378           Graphics client connections.
2379
2380       Sys::Virt::Domain::EVENT_ID_IO_ERROR_REASON
2381           File IO errors, typically from disks, with a root cause
2382
2383       Sys::Virt::Domain::EVENT_ID_CONTROL_ERROR
2384           Errors from the virtualization control channel
2385
2386       Sys::Virt::Domain::EVENT_ID_BLOCK_JOB
2387           Completion status of asynchronous block jobs, identified by source
2388           file name.
2389
2390       Sys::Virt::Domain::EVENT_ID_BLOCK_JOB_2
2391           Completion status of asynchronous block jobs, identified by target
2392           device name.
2393
2394       Sys::Virt::Domain::EVENT_ID_DISK_CHANGE
2395           Changes in disk media
2396
2397       Sys::Virt::Domain::EVENT_ID_TRAY_CHANGE
2398           CDROM media tray state
2399
2400       Sys::Virt::Domain::EVENT_ID_PMSUSPEND
2401           Power management initiated suspend to RAM
2402
2403       Sys::Virt::Domain::EVENT_ID_PMSUSPEND_DISK
2404           Power management initiated suspend to Disk
2405
2406       Sys::Virt::Domain::EVENT_ID_PMWAKEUP
2407           Power management initiated wakeup
2408
2409       Sys::Virt::Domain::EVENT_ID_BALLOON_CHANGE
2410           Balloon target changes
2411
2412       Sys::Virt::Domain::EVENT_ID_DEVICE_ADDED
2413           Asynchronous guest device addition
2414
2415       Sys::Virt::Domain::EVENT_ID_DEVICE_REMOVED
2416           Asynchronous guest device removal
2417
2418       Sys::Virt::Domain::EVENT_ID_TUNABLE
2419           Changes of any domain tuning parameters. The callback will be
2420           provided with a hash listing all changed parameters.  The later
2421           DOMAIN TUNABLE constants can be useful when accessing the hash keys
2422
2423       Sys::Virt::Domain::EVENT_ID_AGENT_LIFECYCLE
2424           Domain guest agent lifecycle events. The "state" parameter to the
2425           callback will match one of the constants
2426
2427           Sys::Virt::Domain::EVENT_AGENT_LIFECYCLE_STATE_CONNECTED
2428               The agent is now connected
2429
2430           Sys::Virt::Domain::EVENT_AGENT_LIFECYCLE_STATE_DISCONNECTED
2431               The agent is now disconnected
2432
2433           The second parameter, "reason", matches one of the following
2434           constants
2435
2436       Sys::Virt::Domain::EVENT_ID_MIGRATION_ITERATION
2437           Domain migration progress iteration. The "iteration" parameter to
2438           the callback will specify the number of iterations migration has
2439           made over guest RAM.
2440
2441           Sys::Virt::Domain::EVENT_AGENT_LIFECYCLE_REASON_UNKNOWN
2442               The reason is unknown
2443
2444           Sys::Virt::Domain::EVENT_AGENT_LIFECYCLE_REASON_DOMAIN_STARTED
2445               The domain was initially booted
2446
2447           Sys::Virt::Domain::EVENT_AGENT_LIFECYCLE_REASON_CHANNEL
2448               The channel on a running guest changed state
2449
2450       Sys::Virt::Domain::EVENT_ID_JOB_COMPLETED
2451           Domain background job completion notification. The callback
2452           provides a hash containing the job stats. The keyus in the hash are
2453           the same as those used with the
2454           "Sys::Virt::Domain::get_job_stats()" method.
2455
2456       Sys::Virt::Domain::EVENT_ID_DEVICE_REMOVAL_FAILED
2457           Guest device removal has failed.
2458
2459       Sys::Virt::Domain::EVENT_ID_METADATA_CHANGE
2460           The domain metadata has changed
2461
2462       Sys::Virt::Domain::EVENT_ID_BLOCK_THRESHOLD
2463           The event occurs when the hypervisor detects that the given storage
2464           element was written beyond the point specified by threshold. The
2465           event is useful for thin-provisioned storage.
2466
2467   IO ERROR EVENT CONSTANTS
2468       These constants describe what action was taken due to the IO error.
2469
2470       Sys::Virt::Domain::EVENT_IO_ERROR_NONE
2471           No action was taken, the error was ignored & reported as success to
2472           guest
2473
2474       Sys::Virt::Domain::EVENT_IO_ERROR_PAUSE
2475           The guest is paused since the error occurred
2476
2477       Sys::Virt::Domain::EVENT_IO_ERROR_REPORT
2478           The error has been reported to the guest OS
2479
2480   WATCHDOG EVENT CONSTANTS
2481       These constants describe what action was taken due to the watchdog
2482       firing
2483
2484       Sys::Virt::Domain::EVENT_WATCHDOG_NONE
2485           No action was taken, the watchdog was ignored
2486
2487       Sys::Virt::Domain::EVENT_WATCHDOG_PAUSE
2488           The guest is paused since the watchdog fired
2489
2490       Sys::Virt::Domain::EVENT_WATCHDOG_POWEROFF
2491           The guest is powered off after the watchdog fired
2492
2493       Sys::Virt::Domain::EVENT_WATCHDOG_RESET
2494           The guest is reset after the watchdog fired
2495
2496       Sys::Virt::Domain::EVENT_WATCHDOG_SHUTDOWN
2497           The guest attempted to gracefully shutdown after the watchdog fired
2498
2499       Sys::Virt::Domain::EVENT_WATCHDOG_DEBUG
2500           No action was taken, the watchdog was logged
2501
2502       Sys::Virt::Domain::EVENT_WATCHDOG_INJECTNMI
2503           An NMI was injected into the guest after the watchdog fired
2504
2505   GRAPHICS EVENT PHASE CONSTANTS
2506       These constants describe the phase of the graphics connection
2507
2508       Sys::Virt::Domain::EVENT_GRAPHICS_CONNECT
2509           The initial client connection
2510
2511       Sys::Virt::Domain::EVENT_GRAPHICS_INITIALIZE
2512           The client has been authenticated & the connection is running
2513
2514       Sys::Virt::Domain::EVENT_GRAPHICS_DISCONNECT
2515           The client has disconnected
2516
2517   GRAPHICS EVENT ADDRESS CONSTANTS
2518       These constants describe the format of the address
2519
2520       Sys::Virt::Domain::EVENT_GRAPHICS_ADDRESS_IPV4
2521           An IPv4 address
2522
2523       Sys::Virt::Domain::EVENT_GRAPHICS_ADDRESS_IPV6
2524           An IPv6 address
2525
2526       Sys::Virt::Domain::EVENT_GRAPHICS_ADDRESS_UNIX
2527           An UNIX socket path address
2528
2529   DISK CHANGE EVENT CONSTANTS
2530       These constants describe the reason for a disk change event
2531
2532       Sys::Virt::Domain::EVENT_DISK_CHANGE_MISSING_ON_START
2533           The disk media was cleared, as its source was missing when
2534           attempting to start the guest
2535
2536       Sys::Virt::Domain::EVENT_DISK_DROP_MISSING_ON_START
2537           The disk device was dropped, as its source was missing when
2538           attempting to start the guest
2539
2540   TRAY CHANGE CONSTANTS
2541       These constants describe the reason for a tray change event
2542
2543       Sys::Virt::Domain::EVENT_TRAY_CHANGE_CLOSE
2544           The tray was closed
2545
2546       Sys::Virt::Domain::EVENT_TRAY_CHANGE_OPEN
2547           The tray was opened
2548
2549   DOMAIN BLOCK JOB TYPE CONSTANTS
2550       The following constants identify the different types of domain block
2551       jobs
2552
2553       Sys::Virt::Domain::BLOCK_JOB_TYPE_UNKNOWN
2554           An unknown block job type
2555
2556       Sys::Virt::Domain::BLOCK_JOB_TYPE_PULL
2557           The block pull job type
2558
2559       Sys::Virt::Domain::BLOCK_JOB_TYPE_COPY
2560           The block copy job type
2561
2562       Sys::Virt::Domain::BLOCK_JOB_TYPE_COMMIT
2563           The block commit job type
2564
2565       Sys::Virt::Domain::BLOCK_JOB_TYPE_ACTIVE_COMMIT
2566           The block active commit job type
2567
2568       Sys::Virt::Domain::BLOCK_JOB_TYPE_BACKUP
2569           The block backup job type
2570
2571   DOMAIN BLOCK JOB COMPLETION CONSTANTS
2572       The following constants can be used to determine the completion status
2573       of a block job
2574
2575       Sys::Virt::Domain::BLOCK_JOB_COMPLETED
2576           A successfully completed block job
2577
2578       Sys::Virt::Domain::BLOCK_JOB_FAILED
2579           An unsuccessful block job
2580
2581       Sys::Virt::Domain::BLOCK_JOB_CANCELED
2582           A block job canceled byy the user
2583
2584       Sys::Virt::Domain::BLOCK_JOB_READY
2585           A block job is running
2586
2587   DOMAIN BLOCK REBASE CONSTANTS
2588       The following constants are useful when rebasing block devices
2589
2590       Sys::Virt::Domain::BLOCK_REBASE_SHALLOW
2591           Limit copy to top of source backing chain
2592
2593       Sys::Virt::Domain::BLOCK_REBASE_REUSE_EXT
2594           Reuse existing external file for copy
2595
2596       Sys::Virt::Domain::BLOCK_REBASE_COPY_RAW
2597           Make destination file raw
2598
2599       Sys::Virt::Domain::BLOCK_REBASE_COPY
2600           Start a copy job
2601
2602       Sys::Virt::Domain::BLOCK_REBASE_COPY_DEV
2603           Treat destination as a block device instead of file
2604
2605       Sys::Virt::Domain::BLOCK_REBASE_RELATIVE
2606           Keep backing chain referenced using relative names
2607
2608   DOMAIN BLOCK COPY CONSTANTS
2609       The following constants are useful when copying block devices
2610
2611       Sys::Virt::Domain::BLOCK_COPY_SHALLOW
2612           Limit copy to top of source backing chain
2613
2614       Sys::Virt::Domain::BLOCK_COPY_REUSE_EXT
2615           Reuse existing external file for copy
2616
2617       Sys::Virt::Domain::BLOCK_COPY_TRANSIENT_JOB
2618           Don't force usage of recoverable job for the copy operation
2619
2620   DOMAIN BLOCK JOB ABORT CONSTANTS
2621       The following constants are useful when aborting job copy jobs
2622
2623       Sys::Virt::Domain::BLOCK_JOB_ABORT_ASYNC
2624           Request only, do not wait for completion
2625
2626       Sys::Virt::Domain::BLOCK_JOB_ABORT_PIVOT
2627           Pivot to mirror when ending a copy job
2628
2629   DOMAIN BLOCK COMMIT JOB CONSTANTS
2630       The following constants are useful with block commit job types
2631
2632       Sys::Virt::Domain::BLOCK_COMMIT_DELETE
2633           Delete any files that are invalid after commit
2634
2635       Sys::Virt::Domain::BLOCK_COMMIT_SHALLOW
2636           NULL base means next backing file, not whole chain
2637
2638       Sys::Virt::Domain::BLOCK_COMMIT_ACTIVE
2639           Allow two phase commit when top is active layer
2640
2641       Sys::Virt::Domain::BLOCK_COMMIT_RELATIVE
2642           Keep backing chain referenced using relative names
2643
2644   DOMAIN SAVE / RESTORE CONSTANTS
2645       The following constants can be used when saving or restoring virtual
2646       machines
2647
2648       Sys::Virt::Domain::SAVE_BYPASS_CACHE
2649           Do not use OS I/O cache when saving state.
2650
2651       Sys::Virt::Domain::SAVE_PAUSED
2652           Mark the saved state as paused to prevent the guest CPUs starting
2653           upon restore.
2654
2655       Sys::Virt::Domain::SAVE_RUNNING
2656           Mark the saved state as running to allow the guest CPUs to start
2657           upon restore.
2658
2659   DOMAIN CORE DUMP CONSTANTS
2660       The following constants can be used when triggering domain core dumps
2661
2662       Sys::Virt::Domain::DUMP_LIVE
2663           Do not pause execution while dumping the guest
2664
2665       Sys::Virt::Domain::DUMP_CRASH
2666           Crash the guest after completing the core dump
2667
2668       Sys::Virt::Domain::DUMP_BYPASS_CACHE
2669           Do not use OS I/O cache when writing core dump
2670
2671       Sys::Virt::Domain::DUMP_RESET
2672           Reset the virtual machine after finishing the dump
2673
2674       Sys::Virt::Domain::DUMP_MEMORY_ONLY
2675           Only include guest RAM in the dump, not the device state
2676
2677   DESTROY CONSTANTS
2678       The following constants are useful when terminating guests using the
2679       "destroy" API.
2680
2681       Sys::Virt::Domain::DESTROY_DEFAULT
2682           Destroy the guest using the default approach
2683
2684       Sys::Virt::Domain::DESTROY_GRACEFUL
2685           Destroy the guest in a graceful manner
2686
2687   SHUTDOWN CONSTANTS
2688       The following constants are useful when requesting that a guest
2689       terminate using the "shutdown" API
2690
2691       Sys::Virt::Domain::SHUTDOWN_DEFAULT
2692           Shutdown using the hypervisor's default mechanism
2693
2694       Sys::Virt::Domain::SHUTDOWN_GUEST_AGENT
2695           Shutdown by issuing a command to a guest agent
2696
2697       Sys::Virt::Domain::SHUTDOWN_ACPI_POWER_BTN
2698           Shutdown by injecting an ACPI power button press
2699
2700       Sys::Virt::Domain::SHUTDOWN_INITCTL
2701           Shutdown by talking to initctl (containers only)
2702
2703       Sys::Virt::Domain::SHUTDOWN_SIGNAL
2704           Shutdown by sending SIGTERM to the init process
2705
2706       Sys::Virt::Domain::SHUTDOWN_PARAVIRT
2707           Shutdown by issuing a paravirt power control command
2708
2709   REBOOT CONSTANTS
2710       The following constants are useful when requesting that a guest
2711       terminate using the "reboot" API
2712
2713       Sys::Virt::Domain::REBOOT_DEFAULT
2714           Reboot using the hypervisor's default mechanism
2715
2716       Sys::Virt::Domain::REBOOT_GUEST_AGENT
2717           Reboot by issuing a command to a guest agent
2718
2719       Sys::Virt::Domain::REBOOT_ACPI_POWER_BTN
2720           Reboot by injecting an ACPI power button press
2721
2722       Sys::Virt::Domain::REBOOT_INITCTL
2723           Reboot by talking to initctl (containers only)
2724
2725       Sys::Virt::Domain::REBOOT_SIGNAL
2726           Reboot by sending SIGHUP to the init process
2727
2728       Sys::Virt::Domain::REBOOT_PARAVIRT
2729           Reboot by issuing a paravirt power control command
2730
2731   METADATA CONSTANTS
2732       The following constants are useful when reading/writing metadata about
2733       a guest
2734
2735       Sys::Virt::Domain::METADATA_TITLE
2736           The short human friendly title of the guest
2737
2738       Sys::Virt::Domain::METADATA_DESCRIPTION
2739           The long free text description of the guest
2740
2741       Sys::Virt::Domain::METADATA_ELEMENT
2742           The structured metadata elements for the guest
2743
2744   DISK ERROR CONSTANTS
2745       The following constants are useful when interpreting disk error codes
2746
2747       Sys::Virt::Domain::DISK_ERROR_NONE
2748           No error
2749
2750       Sys::Virt::Domain::DISK_ERROR_NO_SPACE
2751           The host storage has run out of free space
2752
2753       Sys::Virt::Domain::DISK_ERROR_UNSPEC
2754           An unspecified error has occurred.
2755
2756   MEMORY STATISTIC CONSTANTS
2757       Sys::Virt::Domain::MEMORY_STAT_SWAP_IN
2758           Swap in
2759
2760       Sys::Virt::Domain::MEMORY_STAT_SWAP_OUT
2761           Swap out
2762
2763       Sys::Virt::Domain::MEMORY_STAT_MINOR_FAULT
2764           Minor faults
2765
2766       Sys::Virt::Domain::MEMORY_STAT_MAJOR_FAULT
2767           Major faults
2768
2769       Sys::Virt::Domain::MEMORY_STAT_RSS
2770           Resident memory
2771
2772       Sys::Virt::Domain::MEMORY_STAT_UNUSED
2773           Unused memory
2774
2775       Sys::Virt::Domain::MEMORY_STAT_AVAILABLE
2776           Available memory
2777
2778       Sys::Virt::Domain::MEMORY_STAT_ACTUAL_BALLOON
2779           Actual balloon limit
2780
2781       Sys::Virt::Domain::MEMORY_STAT_USABLE
2782           Amount of usable memory
2783
2784       Sys::Virt::Domain::MEMORY_STAT_LAST_UPDATE
2785           Time of last stats refresh from guest
2786
2787       Sys::Virt::Domain::MEMORY_STAT_DISK_CACHES
2788           Disk cache size
2789
2790       Sys::Virt::Domain::MEMORY_STAT_HUGETLB_PGALLOC
2791           The amount of successful huge page allocations
2792
2793       Sys::Virt::Domain::MEMORY_STAT_HUGETLB_PGFAIL
2794           The amount of failed huge page allocations
2795
2796   DOMAIN LIST CONSTANTS
2797       The following constants can be used when listing domains
2798
2799       Sys::Virt::Domain::LIST_ACTIVE
2800           Only list domains that are currently active (running, or paused)
2801
2802       Sys::Virt::Domain::LIST_AUTOSTART
2803           Only list domains that are set to automatically start on boot
2804
2805       Sys::Virt::Domain::LIST_HAS_SNAPSHOT
2806           Only list domains that have a stored snapshot
2807
2808       Sys::Virt::Domain::LIST_INACTIVE
2809           Only list domains that are currently inactive (shutoff, saved)
2810
2811       Sys::Virt::Domain::LIST_MANAGEDSAVE
2812           Only list domains that have current managed save state
2813
2814       Sys::Virt::Domain::LIST_NO_AUTOSTART
2815           Only list domains that are not set to automatically start on boto
2816
2817       Sys::Virt::Domain::LIST_NO_MANAGEDSAVE
2818           Only list domains that do not have any managed save state
2819
2820       Sys::Virt::Domain::LIST_NO_SNAPSHOT
2821           Only list domains that do not have a stored snapshot
2822
2823       Sys::Virt::Domain::LIST_OTHER
2824           Only list domains that are not running, paused or shutoff
2825
2826       Sys::Virt::Domain::LIST_PAUSED
2827           Only list domains that are paused
2828
2829       Sys::Virt::Domain::LIST_PERSISTENT
2830           Only list domains which have a persistent config
2831
2832       Sys::Virt::Domain::LIST_RUNNING
2833           Only list domains that are currently running
2834
2835       Sys::Virt::Domain::LIST_SHUTOFF
2836           Only list domains that are currently shutoff
2837
2838       Sys::Virt::Domain::LIST_TRANSIENT
2839           Only list domains that do not have a persistent config
2840
2841       Sys::Virt::Domain::LIST_HAS_CHECKPOINT
2842           Only list domains that have a stored checkpoint
2843
2844       Sys::Virt::Domain::LIST_NO_CHECKPOINT
2845           Only list domains that do not have a stored checkpoint
2846
2847   SEND KEY CONSTANTS
2848       The following constants are to be used with the "send_key" API
2849
2850       Sys::Virt::Domain::SEND_KEY_MAX_KEYS
2851           The maximum number of keys that can be sent in a single call to
2852           "send_key"
2853
2854   BLOCK STATS CONSTANTS
2855       The following constants provide the names of well known block stats
2856       fields
2857
2858       Sys::Virt::Domain::BLOCK_STATS_ERRS
2859           The number of I/O errors
2860
2861       Sys::Virt::Domain::BLOCK_STATS_FLUSH_REQ
2862           The number of flush requests
2863
2864       Sys::Virt::Domain::BLOCK_STATS_FLUSH_TOTAL_TIMES
2865           The time spent processing flush requests
2866
2867       Sys::Virt::Domain::BLOCK_STATS_READ_BYTES
2868           The amount of data read
2869
2870       Sys::Virt::Domain::BLOCK_STATS_READ_REQ
2871           The number of read requests
2872
2873       Sys::Virt::Domain::BLOCK_STATS_READ_TOTAL_TIMES
2874           The time spent processing read requests
2875
2876       Sys::Virt::Domain::BLOCK_STATS_WRITE_BYTES
2877           The amount of data written
2878
2879       Sys::Virt::Domain::BLOCK_STATS_WRITE_REQ
2880           The number of write requests
2881
2882       Sys::Virt::Domain::BLOCK_STATS_WRITE_TOTAL_TIMES
2883           The time spent processing write requests
2884
2885   CPU STATS CONSTANTS
2886       The following constants provide the names of well known cpu stats
2887       fields
2888
2889       Sys::Virt::Domain::CPU_STATS_CPUTIME
2890           The total CPU time, including both hypervisor and vCPU time.
2891
2892       Sys::Virt::Domain::CPU_STATS_USERTIME
2893           THe total time in kernel
2894
2895       Sys::Virt::Domain::CPU_STATS_SYSTEMTIME
2896           The total time in userspace
2897
2898       Sys::Virt::Domain::CPU_STATS_VCPUTIME
2899           The total vCPU time.
2900
2901   CPU STATS CONSTANTS
2902       The following constants provide the names of well known schedular
2903       parameters
2904
2905       Sys::Virt::SCHEDULER_EMULATOR_PERIOD
2906           The duration of the time period for scheduling the emulator
2907
2908       Sys::Virt::SCHEDULER_EMULATOR_QUOTA
2909           The quota for the emulator in one schedular time period
2910
2911       Sys::Virt::SCHEDULER_IOTHREAD_PERIOD
2912           The duration of the time period for scheduling the iothread
2913
2914       Sys::Virt::SCHEDULER_IOTHREAD_QUOTA
2915           The quota for the iothread in one schedular time period
2916
2917   DOMAIN STATS FLAG CONSTANTS
2918       The following constants are used as flags when requesting bulk domain
2919       stats from "Sys::Virt::get_all_domain_stats".
2920
2921       Sys::Virt::Domain::GET_ALL_STATS_ACTIVE
2922           Include stats for active domains
2923
2924       Sys::Virt::Domain::GET_ALL_STATS_INACTIVE
2925           Include stats for inactive domains
2926
2927       Sys::Virt::Domain::GET_ALL_STATS_OTHER
2928           Include stats for other domains
2929
2930       Sys::Virt::Domain::GET_ALL_STATS_PAUSED
2931           Include stats for paused domains
2932
2933       Sys::Virt::Domain::GET_ALL_STATS_PERSISTENT
2934           Include stats for persistent domains
2935
2936       Sys::Virt::Domain::GET_ALL_STATS_RUNNING
2937           Include stats for running domains
2938
2939       Sys::Virt::Domain::GET_ALL_STATS_SHUTOFF
2940           Include stats for shutoff domains
2941
2942       Sys::Virt::Domain::GET_ALL_STATS_TRANSIENT
2943           Include stats for transient domains
2944
2945       Sys::Virt::Domain::GET_ALL_STATS_ENFORCE_STATS
2946           Require that all requested stats fields are returned
2947
2948       Sys::Virt::Domain::GET_ALL_STATS_BACKING
2949           Get stats for image backing files too
2950
2951       Sys::Virt::Domain::GET_ALL_STATS_NOWAIT
2952           Skip stats if they can't be acquired without waiting
2953
2954   DOMAIN STATS FIELD CONSTANTS
2955       The following constants are used to control which fields are returned
2956       for stats queries.
2957
2958       Sys::Virt::Domain::STATS_BALLOON
2959           Balloon statistics
2960
2961       Sys::Virt::Domain::STATS_BLOCK
2962           Block device info
2963
2964       Sys::Virt::Domain::STATS_CPU_TOTAL
2965           CPU usage info
2966
2967       Sys::Virt::Domain::STATS_INTERFACE
2968           Network interface info
2969
2970       Sys::Virt::Domain::STATS_STATE
2971           General lifecycle state
2972
2973       Sys::Virt::Domain::STATS_VCPU
2974           Virtual CPU info
2975
2976       Sys::Virt::Domain::STATS_PERF
2977           Performance event counter values
2978
2979       Sys::Virt::Domain::STATS_IOTHREAD
2980           IOThread performance statistics values
2981
2982       Sys::Virt::Domain::STATS_MEMORY
2983           Memory bandwidth statistics values
2984
2985   PROCESS SIGNALS
2986       The following constants provide the names of signals which can be sent
2987       to guest processes. They mostly correspond to POSIX signal names.
2988
2989       Sys::Virt::Domain::PROCESS_SIGNAL_NOP
2990           SIGNOP
2991
2992       Sys::Virt::Domain::PROCESS_SIGNAL_HUP
2993           SIGHUP
2994
2995       Sys::Virt::Domain::PROCESS_SIGNAL_INT
2996           SIGINT
2997
2998       Sys::Virt::Domain::PROCESS_SIGNAL_QUIT
2999           SIGQUIT
3000
3001       Sys::Virt::Domain::PROCESS_SIGNAL_ILL
3002           SIGILL
3003
3004       Sys::Virt::Domain::PROCESS_SIGNAL_TRAP
3005           SIGTRAP
3006
3007       Sys::Virt::Domain::PROCESS_SIGNAL_ABRT
3008           SIGABRT
3009
3010       Sys::Virt::Domain::PROCESS_SIGNAL_BUS
3011           SIGBUS
3012
3013       Sys::Virt::Domain::PROCESS_SIGNAL_FPE
3014           SIGFPE
3015
3016       Sys::Virt::Domain::PROCESS_SIGNAL_KILL
3017           SIGKILL
3018
3019       Sys::Virt::Domain::PROCESS_SIGNAL_USR1
3020           SIGUSR1
3021
3022       Sys::Virt::Domain::PROCESS_SIGNAL_SEGV
3023           SIGSEGV
3024
3025       Sys::Virt::Domain::PROCESS_SIGNAL_USR2
3026           SIGUSR2
3027
3028       Sys::Virt::Domain::PROCESS_SIGNAL_PIPE
3029           SIGPIPE
3030
3031       Sys::Virt::Domain::PROCESS_SIGNAL_ALRM
3032           SIGALRM
3033
3034       Sys::Virt::Domain::PROCESS_SIGNAL_TERM
3035           SIGTERM
3036
3037       Sys::Virt::Domain::PROCESS_SIGNAL_STKFLT
3038           SIGSTKFLT
3039
3040       Sys::Virt::Domain::PROCESS_SIGNAL_CHLD
3041           SIGCHLD
3042
3043       Sys::Virt::Domain::PROCESS_SIGNAL_CONT
3044           SIGCONT
3045
3046       Sys::Virt::Domain::PROCESS_SIGNAL_STOP
3047           SIGSTOP
3048
3049       Sys::Virt::Domain::PROCESS_SIGNAL_TSTP
3050           SIGTSTP
3051
3052       Sys::Virt::Domain::PROCESS_SIGNAL_TTIN
3053           SIGTTIN
3054
3055       Sys::Virt::Domain::PROCESS_SIGNAL_TTOU
3056           SIGTTOU
3057
3058       Sys::Virt::Domain::PROCESS_SIGNAL_URG
3059           SIGURG
3060
3061       Sys::Virt::Domain::PROCESS_SIGNAL_XCPU
3062           SIGXCPU
3063
3064       Sys::Virt::Domain::PROCESS_SIGNAL_XFSZ
3065           SIGXFSZ
3066
3067       Sys::Virt::Domain::PROCESS_SIGNAL_VTALRM
3068           SIGVTALRM
3069
3070       Sys::Virt::Domain::PROCESS_SIGNAL_PROF
3071           SIGPROF
3072
3073       Sys::Virt::Domain::PROCESS_SIGNAL_WINCH
3074           SIGWINCH
3075
3076       Sys::Virt::Domain::PROCESS_SIGNAL_POLL
3077           SIGPOLL
3078
3079       Sys::Virt::Domain::PROCESS_SIGNAL_PWR
3080           SIGPWR
3081
3082       Sys::Virt::Domain::PROCESS_SIGNAL_SYS
3083           SIGSYS
3084
3085       Sys::Virt::Domain::PROCESS_SIGNAL_RT0
3086           SIGRT0
3087
3088       Sys::Virt::Domain::PROCESS_SIGNAL_RT1
3089           SIGRT1
3090
3091       Sys::Virt::Domain::PROCESS_SIGNAL_RT2
3092           SIGRT2
3093
3094       Sys::Virt::Domain::PROCESS_SIGNAL_RT3
3095           SIGRT3
3096
3097       Sys::Virt::Domain::PROCESS_SIGNAL_RT4
3098           SIGRT4
3099
3100       Sys::Virt::Domain::PROCESS_SIGNAL_RT5
3101           SIGRT5
3102
3103       Sys::Virt::Domain::PROCESS_SIGNAL_RT6
3104           SIGRT6
3105
3106       Sys::Virt::Domain::PROCESS_SIGNAL_RT7
3107           SIGRT7
3108
3109       Sys::Virt::Domain::PROCESS_SIGNAL_RT8
3110           SIGRT8
3111
3112       Sys::Virt::Domain::PROCESS_SIGNAL_RT9
3113           SIGRT9
3114
3115       Sys::Virt::Domain::PROCESS_SIGNAL_RT10
3116           SIGRT10
3117
3118       Sys::Virt::Domain::PROCESS_SIGNAL_RT11
3119           SIGRT11
3120
3121       Sys::Virt::Domain::PROCESS_SIGNAL_RT12
3122           SIGRT12
3123
3124       Sys::Virt::Domain::PROCESS_SIGNAL_RT13
3125           SIGRT13
3126
3127       Sys::Virt::Domain::PROCESS_SIGNAL_RT14
3128           SIGRT14
3129
3130       Sys::Virt::Domain::PROCESS_SIGNAL_RT15
3131           SIGRT15
3132
3133       Sys::Virt::Domain::PROCESS_SIGNAL_RT16
3134           SIGRT16
3135
3136       Sys::Virt::Domain::PROCESS_SIGNAL_RT17
3137           SIGRT17
3138
3139       Sys::Virt::Domain::PROCESS_SIGNAL_RT18
3140           SIGRT18
3141
3142       Sys::Virt::Domain::PROCESS_SIGNAL_RT19
3143           SIGRT19
3144
3145       Sys::Virt::Domain::PROCESS_SIGNAL_RT20
3146           SIGRT20
3147
3148       Sys::Virt::Domain::PROCESS_SIGNAL_RT21
3149           SIGRT21
3150
3151       Sys::Virt::Domain::PROCESS_SIGNAL_RT22
3152           SIGRT22
3153
3154       Sys::Virt::Domain::PROCESS_SIGNAL_RT23
3155           SIGRT23
3156
3157       Sys::Virt::Domain::PROCESS_SIGNAL_RT24
3158           SIGRT24
3159
3160       Sys::Virt::Domain::PROCESS_SIGNAL_RT25
3161           SIGRT25
3162
3163       Sys::Virt::Domain::PROCESS_SIGNAL_RT26
3164           SIGRT26
3165
3166       Sys::Virt::Domain::PROCESS_SIGNAL_RT27
3167           SIGRT27
3168
3169       Sys::Virt::Domain::PROCESS_SIGNAL_RT28
3170           SIGRT28
3171
3172       Sys::Virt::Domain::PROCESS_SIGNAL_RT29
3173           SIGRT29
3174
3175       Sys::Virt::Domain::PROCESS_SIGNAL_RT30
3176           SIGRT30
3177
3178       Sys::Virt::Domain::PROCESS_SIGNAL_RT31
3179           SIGRT31
3180
3181       Sys::Virt::Domain::PROCESS_SIGNAL_RT32
3182           SIGRT32
3183
3184   DOMAIN TUNABLE CONSTANTS
3185       The following constants are useful when accessing domain tuning
3186       parameters in APIs and events
3187
3188       Sys::Virt::Domain::TUNABLE_CPU_CPU_SHARES
3189           Proportional CPU weight
3190
3191       Sys::Virt::Domain::TUNABLE_CPU_EMULATORPIN
3192           Emulator thread CPU pinning mask
3193
3194       Sys::Virt::Domain::TUNABLE_CPU_EMULATOR_PERIOD
3195           Emulator thread CPU period
3196
3197       Sys::Virt::Domain::TUNABLE_CPU_EMULATOR_QUOTA
3198           Emulator thread CPU quota
3199
3200       Sys::Virt::Domain::TUNABLE_CPU_IOTHREAD_PERIOD
3201           Iothread thread CPU period
3202
3203       Sys::Virt::Domain::TUNABLE_CPU_IOTHREAD_QUOTA
3204           Iothread thread CPU quota
3205
3206       Sys::Virt::Domain::TUNABLE_CPU_VCPUPIN
3207           VCPU thread pinning mask
3208
3209       Sys::Virt::Domain::TUNABLE_CPU_VCPU_PERIOD
3210           VCPU thread period
3211
3212       Sys::Virt::Domain::TUNABLE_CPU_VCPU_QUOTA
3213           VCPU thread quota
3214
3215       Sys::Virt::Domain::TUNABLE_CPU_GLOBAL_PERIOD
3216           VM global period
3217
3218       Sys::Virt::Domain::TUNABLE_CPU_GLOBAL_QUOTA
3219           VM global quota
3220
3221       Sys::Virt::Domain::TUNABLE_BLKDEV_DISK
3222           The name of guest disks
3223
3224       Sys::Virt::Domain::TUNABLE_BLKDEV_READ_BYTES_SEC
3225           Read throughput in bytes per sec
3226
3227       Sys::Virt::Domain::TUNABLE_BLKDEV_READ_IOPS_SEC
3228           Read throughput in I/O operations per sec
3229
3230       Sys::Virt::Domain::TUNABLE_BLKDEV_TOTAL_BYTES_SEC
3231           Total throughput in bytes per sec
3232
3233       Sys::Virt::Domain::TUNABLE_BLKDEV_TOTAL_IOPS_SEC
3234           Total throughput in I/O operations per sec
3235
3236       Sys::Virt::Domain::TUNABLE_BLKDEV_WRITE_BYTES_SEC
3237           Write throughput in bytes per sec
3238
3239       Sys::Virt::Domain::TUNABLE_BLKDEV_WRITE_IOPS_SEC
3240           Write throughput in I/O operations per sec
3241
3242       Sys::Virt::Domain::TUNABLE_BLKDEV_READ_BYTES_SEC_MAX
3243           Maximum read throughput in bytes per sec
3244
3245       Sys::Virt::Domain::TUNABLE_BLKDEV_READ_IOPS_SEC_MAX
3246           Maximum read throughput in I/O operations per sec
3247
3248       Sys::Virt::Domain::TUNABLE_BLKDEV_TOTAL_BYTES_SEC_MAX
3249           Maximum total throughput in bytes per sec
3250
3251       Sys::Virt::Domain::TUNABLE_BLKDEV_TOTAL_IOPS_SEC_MAX
3252           Maximum total throughput in I/O operations per sec
3253
3254       Sys::Virt::Domain::TUNABLE_BLKDEV_WRITE_BYTES_SEC_MAX
3255           Maximum write throughput in bytes per sec
3256
3257       Sys::Virt::Domain::TUNABLE_BLKDEV_WRITE_IOPS_SEC_MAX
3258           Maximum write throughput in I/O operations per sec
3259
3260       Sys::Virt::Domain::TUNABLE_BLKDEV_SIZE_IOPS_SEC
3261           The maximum I/O operations per second
3262
3263       Sys::Virt::Domain::TUNABLE_BLKDEV_TOTAL_BYTES_SEC_MAX_LENGTH
3264           The duration in seconds allowed for maximum total bytes processed
3265           per second.
3266
3267       Sys::Virt::Domain::TUNABLE_BLKDEV_READ_BYTES_SEC_MAX_LENGTH
3268           The duration in seconds allowed for maximum bytes read per second.
3269
3270       Sys::Virt::Domain::TUNABLE_BLKDEV_WRITE_BYTES_SEC_MAX_LENGTH
3271           The duration in seconds allowed for maximum bytes written per
3272           second.
3273
3274       Sys::Virt::Domain::TUNABLE_BLKDEV_TOTAL_IOPS_SEC_MAX_LENGTH
3275           The duration in seconds allowed for maximum total I/O operations
3276           processed per second.
3277
3278       Sys::Virt::Domain::TUNABLE_BLKDEV_READ_IOPS_SEC_MAX_LENGTH
3279           The duration in seconds allowed for maximum I/O operations read per
3280           second.
3281
3282       Sys::Virt::Domain::TUNABLE_BLKDEV_WRITE_IOPS_SEC_MAX_LENGTH
3283           The duration in seconds allowed for maximum I/O operations written
3284           per second.
3285
3286       Sys::Virt::Domain::TUNABLE_BLKDEV_GROUP_NAME
3287           The name of the blkdev group
3288
3289       Sys::Virt::Domain::TUNABLE_IOTHREADSPIN
3290           The I/O threads pinning
3291
3292   DOMAIN LIFECYCLE CONSTANTS
3293       The following constants are useful when setting action for lifecycle
3294       events.
3295
3296       Sys::Virt::Domain::LIFECYCLE_POWEROFF
3297           The poweroff lifecycle event type
3298
3299       Sys::Virt::Domain::LIFECYCLE_REBOOT
3300           The reboot lifecycle event type
3301
3302       Sys::Virt::Domain::LIFECYCLE_CRASH
3303           The crash lifecycle event type
3304
3305   DOMAIN LIFECYCLE ACTION CONSTANTS
3306       Sys::Virt::Domain::LIFECYCLE_ACTION_DESTROY
3307           The destroy lifecycle action
3308
3309       Sys::Virt::Domain::LIFECYCLE_ACTION_RESTART
3310           The restart lifecycle action
3311
3312       Sys::Virt::Domain::LIFECYCLE_ACTION_RESTART_RENAME
3313           The restart-rename lifecycle action
3314
3315       Sys::Virt::Domain::LIFECYCLE_ACTION_PRESERVE
3316           The preserve lifecycle action
3317
3318       Sys::Virt::Domain::LIFECYCLE_ACTION_COREDUMP_DESTROY
3319           The coredump-destroy lifecycle action
3320
3321       Sys::Virt::Domain::LIFECYCLE_ACTION_COREDUMP_RESTART
3322           The coredump-restart lifecycle action
3323

AUTHORS

3325       Daniel P. Berrange <berrange@redhat.com>
3326
3328       Copyright (C) 2006 Red Hat Copyright (C) 2006-2007 Daniel P. Berrange
3329

LICENSE

3331       This program is free software; you can redistribute it and/or modify it
3332       under the terms of either the GNU General Public License as published
3333       by the Free Software Foundation (either version 2 of the License, or at
3334       your option any later version), or, the Artistic License, as specified
3335       in the Perl README file.
3336

SEE ALSO

3338       Sys::Virt, Sys::Virt::Error, "http://libvirt.org"
3339
3340
3341
3342perl v5.30.1                      2020-03-10              Sys::Virt::Domain(3)
Impressum