diff --git a/ChangeLog b/ChangeLog index ba7d14f463..e4d7efff8f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +Thu Mar 8 09:22:29 CET 2007 Daniel Veillard + + * include/libvirt/libvirt.h include/libvirt/libvirt.h.in + src/driver.h src/libvirt.c src/libvirt_sym.version + src/proxy_internal.c src/qemu_internal.c src/test.c src/virsh.c + src/xen_internal.c src/xen_internal.h src/xend_internal.c + src/xm_internal.c src/xs_internal.c: applied patch from + Masayuki Sunou to add and entry point to check the maximum + number of virtual CPU supported by a virtualization mechanism + * doc/*.html doc/libvirt-*.xml: regenerated the interfaces descriptions + and associated docs. + Wed Mar 07 11:53:22 IST 2007 Mark McLoughlin * qemud/default-network.xml: add a default network diff --git a/docs/APIchunk0.html b/docs/APIchunk0.html index 95a535a89c..2458c142e9 100644 --- a/docs/APIchunk0.html +++ b/docs/APIchunk0.html @@ -1,11 +1,12 @@ -API Alphabetic Index A-a for libvirt

API Alphabetic Index A-a for libvirt

A-a -b-e -f-m -n-r -s-u -v-z +API Alphabetic Index A-X for libvirt

API Alphabetic Index A-X for libvirt

A-X +a-c +d-i +j-n +o-s +t-w +x-z

Letter A:

API
VIR_COPY_CPUMAP
VIR_CPU_MAPLEN
VIR_CPU_USABLE
@@ -25,6 +26,8 @@ _virVcpuInfo
cpu
vcpu
+virConnectGetMaxVcpus
+virDomainGetMaxVcpus
virDomainGetVcpus
virDomainPinVcpu
virDomainSuspend
@@ -35,11 +38,15 @@ _virNodeInfo
cpu
cpumap
+virConnectGetMaxVcpus
+virDomainGetMaxVcpus
virDomainGetVcpus
virDomainPinVcpu
virDomainSetVcpus
Collect
virConnectListDomains
virConnectListNetworks
+
Configure
virDomainSetAutostart
+virNetworkSetAutostart
Copy
virConnCopyLastError
virCopyLastError
Create
virDomainAttachDevice
@@ -120,7 +127,11 @@ virResetLastError
Resume
virDomainResume
Retrieve
virDomainGetMaxMemory
-
Returns
virNetworkGetBridgeName
+
Returns
virConnectGetMaxVcpus
+virDomainGetAutostart
+virDomainGetMaxVcpus
+virNetworkGetAutostart
+virNetworkGetBridgeName

Letter S:

Set
virConnSetErrorFunc
virSetErrorFunc
Shutdown
virDomainShutdown
@@ -186,7 +197,8 @@
VIR_UUID_STRING_BUFLEN
virDomainGetUUIDString
virNetworkGetUUIDString

Letter W:

What
_virError
-

Letter X:

XML
virDomainAttachDevice
+

Letter X:

XML
virConnectGetMaxVcpus
+virDomainAttachDevice
virDomainCreateLinux
virDomainDefineXML
virDomainDetachDevice
@@ -198,99 +210,11 @@ virDomainGetVcpus
virDomainPinVcpu
virGetVersion
-

Letter a:

about
virDomainGetInfo
-virDomainGetUUIDString
-virDomainGetVcpus
-virNetworkGetUUIDString
-virNodeGetInfo
-
access
_virNodeInfo
-virConnectGetVersion
-virDomainCreateLinux
-virDomainDestroy
-virDomainPinVcpu
-virDomainResume
-virDomainSetMaxMemory
-virDomainSetMemory
-virDomainSetVcpus
-virDomainSuspend
-virNetworkDestroy
-
accesses
virConnGetLastError
-virGetLastError
-
active
VIR_NODEINFO_MAXCPUS
-_virNodeInfo
-virConnectListDomains
-virConnectListNetworks
-virConnectNumOfDefinedDomains
-virConnectNumOfDomains
-virConnectNumOfNetworks
-virDomainSuspend
-
add
virDomainShutdown
-
after
virDomainReboot
-virDomainSave
-virDomainShutdown
-
against
virGetVersion
-
alive
virDomainFree
-virNetworkFree
-
all
VIR_CPU_MAPLEN
-virDomainDestroy
-virDomainGetVcpus
-virNetworkDestroy
-
allocated
cpumap
-virDomainGetInfo
-virDomainGetMaxMemory
-virDomainGetVcpus
-virDomainPinVcpu
-virDomainSetMaxMemory
-virDomainSetMemory
-virDomainSuspend
-virNodeGetInfo
-
allowed
_virDomainInfo
-
already
virDomainDestroy
-virNetworkDestroy
-
also
virDomainGetVcpus
-
amount
virDomainGetMaxMemory
-virDomainSetMaxMemory
-virDomainSetMemory
-
analysis
virDomainCoreDump
-
anymore
virDomainSave
-
application
virConnectClose
-virDomainGetMaxMemory
-virDomainSetMaxMemory
-virDomainSetMemory
-
applications
virInitialize
-
arbitrary
virDomainSetVcpus
-
are
virConnectClose
-virConnectOpenReadOnly
-virDomainDestroy
-virDomainPinVcpu
-virNetworkDestroy
-virSetErrorFunc
-
argument
virConnectOpen
-virConnectOpenReadOnly
-
array
VIR_COPY_CPUMAP
-VIR_GET_CPUMAP
-cpumaps
-virConnectListDefinedDomains
-virConnectListDefinedNetworks
-virConnectListDomains
-virConnectListNetworks
-virDomainGetUUID
-virDomainGetUUIDString
-virDomainGetVcpus
-virNetworkGetUUID
-virNetworkGetUUIDString
-
assumed
virDomainGetVcpus
-virGetVersion
-
attachment
virDomainAttachDevice
-virDomainDetachDevice
-
available
_virError
-virConnectOpenReadOnly
-
availble
virGetVersion
-
avoid
virInitialize
-

A-a -b-e -f-m -n-r -s-u -v-z +

A-X +a-c +d-i +j-n +o-s +t-w +x-z

diff --git a/docs/APIchunk1.html b/docs/APIchunk1.html index c7ef6847e7..539813b57c 100644 --- a/docs/APIchunk1.html +++ b/docs/APIchunk1.html @@ -1,12 +1,107 @@ -API Alphabetic Index b-e for libvirt

API Alphabetic Index b-e for libvirt

A-a -b-e -f-m -n-r -s-u -v-z -

Letter b:

back
virConnSetErrorFunc
+API Alphabetic Index a-c for libvirt

API Alphabetic Index a-c for libvirt

A-X +a-c +d-i +j-n +o-s +t-w +x-z +

Letter a:

about
virDomainGetInfo
+virDomainGetUUIDString
+virDomainGetVcpus
+virNetworkGetUUIDString
+virNodeGetInfo
+
access
_virNodeInfo
+virConnectGetVersion
+virDomainCreateLinux
+virDomainDestroy
+virDomainPinVcpu
+virDomainResume
+virDomainSetMaxMemory
+virDomainSetMemory
+virDomainSetVcpus
+virDomainSuspend
+virNetworkDestroy
+
accesses
virConnGetLastError
+virGetLastError
+
active
VIR_NODEINFO_MAXCPUS
+_virNodeInfo
+virConnectListDomains
+virConnectListNetworks
+virConnectNumOfDefinedDomains
+virConnectNumOfDomains
+virConnectNumOfNetworks
+virDomainSuspend
+
add
virDomainShutdown
+
after
virDomainReboot
+virDomainSave
+virDomainShutdown
+
against
virGetVersion
+
alive
virDomainFree
+virNetworkFree
+
all
VIR_CPU_MAPLEN
+virDomainDestroy
+virDomainGetVcpus
+virNetworkDestroy
+
allocated
cpumap
+virDomainGetInfo
+virDomainGetMaxMemory
+virDomainGetVcpus
+virDomainPinVcpu
+virDomainSetMaxMemory
+virDomainSetMemory
+virDomainSuspend
+virNodeGetInfo
+
allowed
_virDomainInfo
+
already
virDomainDestroy
+virNetworkDestroy
+
also
virDomainGetVcpus
+
amount
virDomainGetMaxMemory
+virDomainSetMaxMemory
+virDomainSetMemory
+
analysis
virDomainCoreDump
+
anymore
virDomainSave
+
application
virConnectClose
+virDomainGetMaxMemory
+virDomainSetMaxMemory
+virDomainSetMemory
+
applications
virInitialize
+
arbitrary
virDomainSetVcpus
+
are
virConnectClose
+virConnectOpenReadOnly
+virDomainDestroy
+virDomainPinVcpu
+virNetworkDestroy
+virSetErrorFunc
+
argument
virConnectOpen
+virConnectOpenReadOnly
+
array
VIR_COPY_CPUMAP
+VIR_GET_CPUMAP
+cpumaps
+virConnectListDefinedDomains
+virConnectListDefinedNetworks
+virConnectListDomains
+virConnectListNetworks
+virDomainGetUUID
+virDomainGetUUIDString
+virDomainGetVcpus
+virNetworkGetUUID
+virNetworkGetUUIDString
+
assumed
virDomainGetVcpus
+virGetVersion
+
attachment
virDomainAttachDevice
+virDomainDetachDevice
+
attribute
virConnectGetMaxVcpus
+
automatically
virDomainGetAutostart
+virDomainSetAutostart
+virNetworkGetAutostart
+virNetworkSetAutostart
+
available
_virError
+virConnectOpenReadOnly
+
availble
virGetVersion
+
avoid
virInitialize
+

Letter b:

back
virConnSetErrorFunc
virDomainDestroy
virGetVersion
virNetworkDestroy
@@ -21,6 +116,7 @@ virNetworkLookupByName
virNetworkLookupByUUID
virNetworkLookupByUUIDString
+
basically
virDomainGetMaxVcpus
being
virDomainReboot
virDomainShutdown
virErrorFunc
@@ -33,6 +129,13 @@ virDomainGetVcpus
virDomainPinVcpu
block
_virDomainKernel
+
boolean
virDomainGetAutostart
+virNetworkGetAutostart
+
booted
virDomainGetMaxVcpus
+
boots
virDomainGetAutostart
+virDomainSetAutostart
+virNetworkGetAutostart
+virNetworkSetAutostart
bridge
virNetworkGetBridgeName
buffer
VIR_UUID_STRING_BUFLEN
but
VIR_NODEINFO_MAXCPUS
@@ -108,6 +211,8 @@
command
_virDomainKernel
compiled
virGetVersion
complete
VIR_CPU_MAPLEN
+
configured
virDomainGetAutostart
+virNetworkGetAutostart
conjonction
VIR_COPY_CPUMAP
VIR_CPU_MAPLEN
VIR_CPU_USABLE
@@ -126,6 +231,7 @@
core
_virNodeInfo
virDomainCoreDump
corresponding
virDomainPinVcpu
+
corresponds
virConnectGetMaxVcpus
could
virSetErrorFunc
cpu
VIR_CPU_USABLE
VIR_UNUSE_CPU
@@ -147,72 +253,11 @@
currently
virConnectOpen
virConnectOpenReadOnly
virDomainCoreDump
-

Letter d:

data
virConnSetErrorFunc
-virDomainDestroy
-virDomainFree
-virErrorFunc
-virNetworkDestroy
-virNetworkFree
-virSetErrorFunc
-
deallocated
virDomainGetName
-virNetworkGetName
-
default
virConnSetErrorFunc
-virSetErrorFunc
-
define
virDomainDefineXML
-
defined
virConnectListDefinedDomains
-virDomainCreate
-virDomainUndefine
-virNetworkCreate
-virNetworkUndefine
-
described
virDomainGetVcpus
-
description
virDomainAttachDevice
-virDomainCreateLinux
-virDomainDefineXML
-virDomainDetachDevice
-virDomainGetXMLDesc
-virNetworkCreateXML
-virNetworkDefineXML
-virNetworkGetXMLDesc
-
device
_virDomainKernel
-virDomainAttachDevice
-virDomainDetachDevice
-
disk
virDomainRestore
-virDomainSave
-
doable
virDomainShutdown
-
does
virDomainDefineXML
-virDomainDestroy
-virDomainSetVcpus
-virDomainUndefine
-virNetworkDefineXML
-virNetworkDestroy
-virNetworkUndefine
-
domains
virConnectListDefinedDomains
-virConnectListDomains
-virConnectNumOfDefinedDomains
-virConnectNumOfDomains
-virConnectOpenReadOnly
-virDomainCreate
-
down
virDomainDestroy
-virNetworkDestroy
-
driver
virGetVersion
-
dump
virDomainCoreDump
-

Letter e:

each
virDomainPinVcpu
-
encoded
virDomainGetXMLDesc
-virNetworkGetXMLDesc
-
especially
virConnectClose
-
expected
_virNodeInfo
-
extra
_virError
-virDomainCoreDump
-virDomainReboot
-
extract
VIR_COPY_CPUMAP
-
extracted
virConnectGetVersion
-virDomainGetInfo
-
extraction
virDomainGetXMLDesc
-virNetworkGetXMLDesc
-

A-a -b-e -f-m -n-r -s-u -v-z +

A-X +a-c +d-i +j-n +o-s +t-w +x-z

diff --git a/docs/APIchunk2.html b/docs/APIchunk2.html index 500f56e56b..855d07d7b3 100644 --- a/docs/APIchunk2.html +++ b/docs/APIchunk2.html @@ -1,12 +1,76 @@ -API Alphabetic Index f-m for libvirt

API Alphabetic Index f-m for libvirt

A-a -b-e -f-m -n-r -s-u -v-z -

Letter f:

fail
virDomainSetVcpus
+API Alphabetic Index d-i for libvirt

API Alphabetic Index d-i for libvirt

A-X +a-c +d-i +j-n +o-s +t-w +x-z +

Letter d:

data
virConnSetErrorFunc
+virDomainDestroy
+virDomainFree
+virErrorFunc
+virNetworkDestroy
+virNetworkFree
+virSetErrorFunc
+
deallocated
virDomainGetName
+virNetworkGetName
+
default
virConnSetErrorFunc
+virSetErrorFunc
+
define
virDomainDefineXML
+
defined
virConnectListDefinedDomains
+virDomainCreate
+virDomainUndefine
+virNetworkCreate
+virNetworkUndefine
+
described
virDomainGetVcpus
+
description
virDomainAttachDevice
+virDomainCreateLinux
+virDomainDefineXML
+virDomainDetachDevice
+virDomainGetXMLDesc
+virNetworkCreateXML
+virNetworkDefineXML
+virNetworkGetXMLDesc
+
device
_virDomainKernel
+virDomainAttachDevice
+virDomainDetachDevice
+
disk
virDomainRestore
+virDomainSave
+
doable
virDomainShutdown
+
does
virDomainDefineXML
+virDomainDestroy
+virDomainSetVcpus
+virDomainUndefine
+virNetworkDefineXML
+virNetworkDestroy
+virNetworkUndefine
+
domains
virConnectListDefinedDomains
+virConnectListDomains
+virConnectNumOfDefinedDomains
+virConnectNumOfDomains
+virConnectOpenReadOnly
+virDomainCreate
+
down
virDomainDestroy
+virNetworkDestroy
+
driver
virGetVersion
+
dump
virDomainCoreDump
+

Letter e:

each
virDomainPinVcpu
+
element
virConnectGetMaxVcpus
+
encoded
virDomainGetXMLDesc
+virNetworkGetXMLDesc
+
especially
virConnectClose
+
expected
_virNodeInfo
+
extra
_virError
+virDomainCoreDump
+virDomainReboot
+
extract
VIR_COPY_CPUMAP
+
extracted
virConnectGetVersion
+virDomainGetInfo
+
extraction
virDomainGetXMLDesc
+virNetworkGetXMLDesc
+

Letter f:

fail
virDomainSetVcpus
file
virDomainCoreDump
virDomainSave
filename
_virDomainKernel
@@ -86,7 +150,9 @@
global
virConnSetErrorFunc
virSetErrorFunc
growing
virDomainSetVcpus
-
guest
virDomainCreateLinux
+
guest
virConnectGetMaxVcpus
+virDomainCreateLinux
+virDomainGetMaxVcpus
virDomainReboot
virDomainShutdown

Letter h:

handler
virConnSetErrorFunc
@@ -96,8 +162,13 @@
hardware
virNodeGetInfo
has
virDomainGetVcpus
have
virGetVersion
+
here
virConnectGetMaxVcpus
host
VIR_NODEINFO_MAXCPUS
virDomainCoreDump
+virDomainGetAutostart
+virDomainSetAutostart
+virNetworkGetAutostart
+virNetworkSetAutostart
how
_virError
human-readable
_virError

Letter i:

ie:
cpumap
@@ -107,7 +178,10 @@
image
_virDomainKernel
inactive
virConnectListDefinedNetworks
virConnectNumOfDefinedNetworks
+virDomainGetMaxVcpus
indicating
_virNodeInfo
+virDomainGetAutostart
+virNetworkGetAutostart
info
virDomainGetVcpus
information
_virError
virDomainGetInfo
@@ -141,143 +215,11 @@ virNetworkLookupByName
virNetworkLookupByUUID
virNetworkLookupByUUIDString
-

Letter j:

join
virNetworkGetBridgeName
-

Letter k:

kept
virDomainFree
-virNetworkFree
-
kernel
_virDomainKernel
-
kilobytes
_virNodeInfo
-virDomainGetMaxMemory
-virDomainSetMaxMemory
-virDomainSetMemory
-
knowing
virDomainShutdown
-

Letter l:

lack
virConnectGetVersion
-
last
virConnCopyLastError
-virConnGetLastError
-virConnResetLastError
-virCopyLastError
-virGetLastError
-virResetLastError
-
later
VIR_COPY_CPUMAP
-virDomainGetXMLDesc
-virNetworkGetXMLDesc
-
launch
virDomainCreate
-
least
virDomainPinVcpu
-
length
VIR_CPU_MAPLEN
-VIR_UUID_STRING_BUFLEN
-maplen
-
level
virConnectGetVersion
-virCopyLastError
-virDomainSuspend
-virGetLastError
-virResetLastError
-virSetErrorFunc
-
libbrary
virConnectOpenReadOnly
-
library
LIBVIR_VERSION_NUMBER
-_virError
-virConnSetErrorFunc
-virCopyLastError
-virErrorFunc
-virGetLastError
-virGetVersion
-virInitialize
-virResetLastError
-virSetErrorFunc
-
lifetime
virDomainGetName
-virNetworkGetName
-
limited
virDomainGetInfo
-virDomainSetVcpus
-
line
_virDomainKernel
-
list
virConnectListDefinedDomains
-virConnectListDefinedNetworks
-virConnectListDomains
-virConnectListNetworks
-
listed
virDomainSave
-
little-endian
virDomainPinVcpu
-
looked
virGetVersion
-
lookup
virDomainLookupByName
-virDomainLookupByUUID
-virDomainLookupByUUIDString
-virNetworkLookupByName
-virNetworkLookupByUUID
-virNetworkLookupByUUIDString
-
lowest
virDomainPinVcpu
-

Letter m:

macro
VIR_COPY_CPUMAP
-VIR_CPU_MAPLEN
-VIR_CPU_USABLE
-VIR_GET_CPUMAP
-VIR_NODEINFO_MAXCPUS
-VIR_UNUSE_CPU
-VIR_USE_CPU
-VIR_UUID_STRING_BUFLEN
-
major
virConnectGetVersion
-virGetVersion
-
malloc
cpumap
-
map
VIR_CPU_MAPLEN
-cpumap
-virDomainGetVcpus
-virDomainPinVcpu
-
maplen
cpumap
-virDomainGetVcpus
-virDomainPinVcpu
-
maximum
_virDomainInfo
-virDomainGetMaxMemory
-virDomainSetMaxMemory
-
maxinfo
virDomainGetVcpus
-
may
virConnGetLastError
-virConnectGetVersion
-virDomainCreateLinux
-virDomainDestroy
-virDomainGetXMLDesc
-virDomainReboot
-virDomainResume
-virDomainSave
-virDomainSetMemory
-virDomainSetVcpus
-virDomainShutdown
-virDomainSuspend
-virGetLastError
-virNetworkDestroy
-virNetworkGetBridgeName
-virNetworkGetXMLDesc
-
means
virDomainPinVcpu
-
mem
_virNodeInfo
-
memory
_virDomainInfo
-_virNodeInfo
-virDomainGetMaxMemory
-virDomainGetVcpus
-virDomainSave
-virDomainSetMaxMemory
-virDomainSetMemory
-virDomainSuspend
-
message
_virError
-
method
virDomainCoreDump
-virDomainRestore
-virDomainSave
-
methods
virConnectOpenReadOnly
-
micro
LIBVIR_VERSION_NUMBER
-
minor
LIBVIR_VERSION_NUMBER
-virConnectGetVersion
-virGetVersion
-
missing
virDomainPinVcpu
-
model
_virNodeInfo
-
monitoring
virConnectClose
-
more
virDomainGetUUIDString
-virNetworkGetUUIDString
-
moves
virDomainCreate
-virNetworkCreate
-
multithreaded
virConnGetLastError
-virGetLastError
-virInitialize
-
must
cpumap
-virDomainGetOSType
-virDomainGetVcpus
-virDomainGetXMLDesc
-virNetworkGetBridgeName
-virNetworkGetXMLDesc
-

A-a -b-e -f-m -n-r -s-u -v-z +

A-X +a-c +d-i +j-n +o-s +t-w +x-z

diff --git a/docs/APIchunk3.html b/docs/APIchunk3.html index b41e5c065d..77b808ba0a 100644 --- a/docs/APIchunk3.html +++ b/docs/APIchunk3.html @@ -1,12 +1,152 @@ -API Alphabetic Index n-r for libvirt

API Alphabetic Index n-r for libvirt

A-a -b-e -f-m -n-r -s-u -v-z -

Letter n:

name
virConnectGetType
+API Alphabetic Index j-n for libvirt

API Alphabetic Index j-n for libvirt

A-X +a-c +d-i +j-n +o-s +t-w +x-z +

Letter j:

join
virNetworkGetBridgeName
+

Letter k:

kept
virDomainFree
+virNetworkFree
+
kernel
_virDomainKernel
+
kilobytes
_virNodeInfo
+virDomainGetMaxMemory
+virDomainSetMaxMemory
+virDomainSetMemory
+
knowing
virDomainShutdown
+

Letter l:

lack
virConnectGetVersion
+
last
virConnCopyLastError
+virConnGetLastError
+virConnResetLastError
+virCopyLastError
+virGetLastError
+virResetLastError
+
later
VIR_COPY_CPUMAP
+virDomainGetXMLDesc
+virNetworkGetXMLDesc
+
launch
virDomainCreate
+
least
virDomainPinVcpu
+
length
VIR_CPU_MAPLEN
+VIR_UUID_STRING_BUFLEN
+maplen
+
level
virConnectGetVersion
+virCopyLastError
+virDomainSuspend
+virGetLastError
+virResetLastError
+virSetErrorFunc
+
libbrary
virConnectOpenReadOnly
+
library
LIBVIR_VERSION_NUMBER
+_virError
+virConnSetErrorFunc
+virCopyLastError
+virErrorFunc
+virGetLastError
+virGetVersion
+virInitialize
+virResetLastError
+virSetErrorFunc
+
lifetime
virDomainGetName
+virNetworkGetName
+
limited
virDomainGetInfo
+virDomainSetVcpus
+
line
_virDomainKernel
+
list
virConnectListDefinedDomains
+virConnectListDefinedNetworks
+virConnectListDomains
+virConnectListNetworks
+
listed
virDomainSave
+
little-endian
virDomainPinVcpu
+
looked
virGetVersion
+
lookup
virDomainLookupByName
+virDomainLookupByUUID
+virDomainLookupByUUIDString
+virNetworkLookupByName
+virNetworkLookupByUUID
+virNetworkLookupByUUIDString
+
lowest
virDomainPinVcpu
+

Letter m:

machine
virDomainGetAutostart
+virDomainSetAutostart
+virNetworkGetAutostart
+virNetworkSetAutostart
+
macro
VIR_COPY_CPUMAP
+VIR_CPU_MAPLEN
+VIR_CPU_USABLE
+VIR_GET_CPUMAP
+VIR_NODEINFO_MAXCPUS
+VIR_UNUSE_CPU
+VIR_USE_CPU
+VIR_UUID_STRING_BUFLEN
+
major
virConnectGetVersion
+virGetVersion
+
malloc
cpumap
+
map
VIR_CPU_MAPLEN
+cpumap
+virDomainGetVcpus
+virDomainPinVcpu
+
maplen
cpumap
+virDomainGetVcpus
+virDomainPinVcpu
+
maximum
_virDomainInfo
+virConnectGetMaxVcpus
+virDomainGetMaxMemory
+virDomainGetMaxVcpus
+virDomainSetMaxMemory
+
maxinfo
virDomainGetVcpus
+
may
virConnGetLastError
+virConnectGetVersion
+virDomainCreateLinux
+virDomainDestroy
+virDomainGetXMLDesc
+virDomainReboot
+virDomainResume
+virDomainSave
+virDomainSetMemory
+virDomainSetVcpus
+virDomainShutdown
+virDomainSuspend
+virGetLastError
+virNetworkDestroy
+virNetworkGetBridgeName
+virNetworkGetXMLDesc
+
means
virDomainPinVcpu
+
mem
_virNodeInfo
+
memory
_virDomainInfo
+_virNodeInfo
+virDomainGetMaxMemory
+virDomainGetVcpus
+virDomainSave
+virDomainSetMaxMemory
+virDomainSetMemory
+virDomainSuspend
+
message
_virError
+
method
virDomainCoreDump
+virDomainRestore
+virDomainSave
+
methods
virConnectOpenReadOnly
+
micro
LIBVIR_VERSION_NUMBER
+
minor
LIBVIR_VERSION_NUMBER
+virConnectGetVersion
+virGetVersion
+
missing
virDomainPinVcpu
+
model
_virNodeInfo
+
monitoring
virConnectClose
+
more
virDomainGetUUIDString
+virNetworkGetUUIDString
+
moves
virDomainCreate
+virNetworkCreate
+
multithreaded
virConnGetLastError
+virGetLastError
+virInitialize
+
must
cpumap
+virDomainGetOSType
+virDomainGetVcpus
+virDomainGetXMLDesc
+virNetworkGetBridgeName
+virNetworkGetXMLDesc
+

Letter n:

name
virConnectGetType
virDomainGetName
virDomainLookupByName
virNetworkGetBridgeName
@@ -68,179 +208,11 @@ virNetworkGetName
virNetworkGetXMLDesc
virNetworkUndefine
-

Letter o:

occured
virConnGetLastError
-virGetLastError
-
offline
_virVcpuInfo
-
one
_virDomainInfo
-maplen
-virDomainAttachDevice
-virDomainCreateLinux
-virDomainDetachDevice
-virDomainGetVcpus
-virNetworkCreateXML
-
only
virConnectGetVersion
-virDomainGetInfo
-
operation
virDomainGetOSType
-virDomainReboot
-
option
virDomainShutdown
-
optional
_virDomainKernel
-virConnectOpen
-virConnectOpenReadOnly
-virDomainCreateLinux
-
order
virNetworkGetBridgeName
-
order:
virDomainPinVcpu
-
otherwise
VIR_CPU_USABLE
-virConnCopyLastError
-virConnectGetType
-virConnectGetVersion
-virCopyLastError
-virDomainDefineXML
-virGetVersion
-virNetworkDefineXML
-
output
virDomainSave
-

Letter p:

parameter
virConnCopyLastError
-virCopyLastError
-
parameters
_virDomainKernel
-
part
_virError
-
partial
virDomainGetInfo
-
pass
virConnSetErrorFunc
-virConnectOpen
-virConnectOpenReadOnly
-
path
virDomainCoreDump
-virDomainRestore
-virDomainSave
-
per
_virNodeInfo
-
physical
VIR_CPU_MAPLEN
-cpu
-virDomainGetMaxMemory
-virDomainSetMaxMemory
-virDomainSetMemory
-
pointed
virResetError
-
pointers
virConnectListDefinedDomains
-virConnectListDefinedNetworks
-
pointing
_virDomainKernel
-
pools
virDomainCreate
-virNetworkCreate
-
potential
virInitialize
-
preferably
virDomainDefineXML
-virNetworkDefineXML
-
previously
cpumap
-
printing
virSetErrorFunc
-
priviledged
virConnectGetVersion
-virDomainCreateLinux
-virDomainDestroy
-virDomainPinVcpu
-virDomainResume
-virDomainSetMaxMemory
-virDomainSetMemory
-virDomainSetVcpus
-virDomainSuspend
-virNetworkDestroy
-
problem
virDomainSave
-
process
virDomainResume
-virDomainSuspend
-
provided
virConnSetErrorFunc
-virConnectListDefinedDomains
-virConnectListDefinedNetworks
-virErrorFunc
-virSetErrorFunc
-
provides
VIR_UUID_STRING_BUFLEN
-
providing
LIBVIR_VERSION_NUMBER
-
public
virDomainGetName
-virNetworkGetName
-

Letter r:

race
virInitialize
-
raised
_virError
-virErrorFunc
-virSetErrorFunc
-
ramdisk
_virDomainKernel
-
raw
virDomainLookupByUUID
-virNetworkLookupByUUID
-
reactivate
virDomainSuspend
-
real
_virVcpuInfo
-cpumap
-virDomainGetVcpus
-virDomainPinVcpu
-
reboot
virDomainReboot
-virDomainShutdown
-
receive
virConnCopyLastError
-virCopyLastError
-
related
VIR_UNUSE_CPU
-VIR_USE_CPU
-
relaunch
virDomainGetXMLDesc
-virNetworkGetXMLDesc
-
release
virConnectGetVersion
-virGetVersion
-
remote
virDomainCoreDump
-
reporting
virDefaultErrorFunc
-
request
virDomainReboot
-virDomainShutdown
-
required
VIR_CPU_MAPLEN
-VIR_UUID_STRING_BUFLEN
-
requires
virDomainCreateLinux
-virDomainDestroy
-virDomainPinVcpu
-virDomainResume
-virDomainSetMaxMemory
-virDomainSetMemory
-virDomainSetVcpus
-virDomainSuspend
-virNetworkDestroy
-
reserved
virDomainGetMaxMemory
-virDomainSetMaxMemory
-virDomainSetMemory
-
reset
VIR_UNUSE_CPU
-virConnSetErrorFunc
-virSetErrorFunc
-
resources
virDomainDestroy
-virDomainSuspend
-virNetworkDestroy
-
restart
virDomainReboot
-
restarted
virDomainResume
-
restore
virDomainRestore
-virDomainSave
-
restricted
virConnectOpenReadOnly
-
result
virConnCopyLastError
-virCopyLastError
-
return
virConnectGetVersion
-virDomainDestroy
-virGetVersion
-virNetworkDestroy
-
returned
virDomainCreateLinux
-virDomainGetVcpus
-virDomainGetXMLDesc
-virDomainPinVcpu
-virGetVersion
-virNetworkCreateXML
-virNetworkGetBridgeName
-virNetworkGetXMLDesc
-
returns
VIR_CPU_MAPLEN
-VIR_CPU_USABLE
-VIR_GET_CPUMAP
-virConnectGetVersion
-
reused
virDomainGetXMLDesc
-virNetworkGetXMLDesc
-
root
_virDomainKernel
-
routine
virDefaultErrorFunc
-virInitialize
-
running
_virDomainInfo
-virConnectClose
-virConnectGetVersion
-virDomainCreate
-virDomainDestroy
-virDomainFree
-virDomainSave
-virDomainUndefine
-virNetworkCreate
-virNetworkDestroy
-virNetworkFree
-virNetworkUndefine
-
runs
virDomainGetMaxMemory
-virDomainSetMaxMemory
-virDomainSetMemory
-

A-a -b-e -f-m -n-r -s-u -v-z +

A-X +a-c +d-i +j-n +o-s +t-w +x-z

diff --git a/docs/APIchunk4.html b/docs/APIchunk4.html index 05ef1c0f2e..cfe07aa3e5 100644 --- a/docs/APIchunk4.html +++ b/docs/APIchunk4.html @@ -1,12 +1,186 @@ -API Alphabetic Index s-u for libvirt

API Alphabetic Index s-u for libvirt

A-a -b-e -f-m -n-r -s-u -v-z -

Letter s:

same
virDomainGetName
+API Alphabetic Index o-s for libvirt

API Alphabetic Index o-s for libvirt

A-X +a-c +d-i +j-n +o-s +t-w +x-z +

Letter o:

occured
virConnGetLastError
+virGetLastError
+
offline
_virVcpuInfo
+
one
_virDomainInfo
+maplen
+virDomainAttachDevice
+virDomainCreateLinux
+virDomainDetachDevice
+virDomainGetVcpus
+virNetworkCreateXML
+
only
virConnectGetVersion
+virDomainGetInfo
+
operation
virDomainGetOSType
+virDomainReboot
+
option
virDomainShutdown
+
optional
_virDomainKernel
+virConnectOpen
+virConnectOpenReadOnly
+virDomainCreateLinux
+
order
virNetworkGetBridgeName
+
order:
virDomainPinVcpu
+
otherwise
VIR_CPU_USABLE
+virConnCopyLastError
+virConnectGetType
+virConnectGetVersion
+virCopyLastError
+virDomainDefineXML
+virGetVersion
+virNetworkDefineXML
+
output
virDomainSave
+

Letter p:

parameter
virConnCopyLastError
+virConnectGetMaxVcpus
+virCopyLastError
+
parameters
_virDomainKernel
+
part
_virError
+
partial
virDomainGetInfo
+
pass
virConnSetErrorFunc
+virConnectOpen
+virConnectOpenReadOnly
+
path
virDomainCoreDump
+virDomainRestore
+virDomainSave
+
per
_virNodeInfo
+
physical
VIR_CPU_MAPLEN
+cpu
+virDomainGetMaxMemory
+virDomainSetMaxMemory
+virDomainSetMemory
+
pointed
virResetError
+
pointers
virConnectListDefinedDomains
+virConnectListDefinedNetworks
+
pointing
_virDomainKernel
+
pools
virDomainCreate
+virNetworkCreate
+
potential
virInitialize
+
preferably
virDomainDefineXML
+virNetworkDefineXML
+
previously
cpumap
+
printing
virSetErrorFunc
+
priviledged
virConnectGetVersion
+virDomainCreateLinux
+virDomainDestroy
+virDomainPinVcpu
+virDomainResume
+virDomainSetMaxMemory
+virDomainSetMemory
+virDomainSetVcpus
+virDomainSuspend
+virNetworkDestroy
+
problem
virDomainSave
+
process
virDomainResume
+virDomainSuspend
+
provided
virConnSetErrorFunc
+virConnectListDefinedDomains
+virConnectListDefinedNetworks
+virErrorFunc
+virSetErrorFunc
+
provides
VIR_UUID_STRING_BUFLEN
+
providing
LIBVIR_VERSION_NUMBER
+
public
virDomainGetName
+virNetworkGetName
+

Letter r:

race
virInitialize
+
raised
_virError
+virErrorFunc
+virSetErrorFunc
+
ramdisk
_virDomainKernel
+
raw
virDomainLookupByUUID
+virNetworkLookupByUUID
+
reactivate
virDomainSuspend
+
real
_virVcpuInfo
+cpumap
+virDomainGetVcpus
+virDomainPinVcpu
+
reboot
virDomainReboot
+virDomainShutdown
+
receive
virConnCopyLastError
+virCopyLastError
+
reflect
virDomainGetMaxVcpus
+
related
VIR_UNUSE_CPU
+VIR_USE_CPU
+
relaunch
virDomainGetXMLDesc
+virNetworkGetXMLDesc
+
release
virConnectGetVersion
+virGetVersion
+
remote
virDomainCoreDump
+
reporting
virDefaultErrorFunc
+
request
virDomainReboot
+virDomainShutdown
+
required
VIR_CPU_MAPLEN
+VIR_UUID_STRING_BUFLEN
+
requires
virDomainCreateLinux
+virDomainDestroy
+virDomainPinVcpu
+virDomainResume
+virDomainSetMaxMemory
+virDomainSetMemory
+virDomainSetVcpus
+virDomainSuspend
+virNetworkDestroy
+
reserved
virDomainGetMaxMemory
+virDomainSetMaxMemory
+virDomainSetMemory
+
reset
VIR_UNUSE_CPU
+virConnSetErrorFunc
+virSetErrorFunc
+
resources
virDomainDestroy
+virDomainSuspend
+virNetworkDestroy
+
restart
virDomainReboot
+
restarted
virDomainResume
+
restore
virDomainRestore
+virDomainSave
+
restricted
virConnectOpenReadOnly
+
result
virConnCopyLastError
+virCopyLastError
+
return
virConnectGetVersion
+virDomainDestroy
+virGetVersion
+virNetworkDestroy
+
returned
virDomainCreateLinux
+virDomainGetVcpus
+virDomainGetXMLDesc
+virDomainPinVcpu
+virGetVersion
+virNetworkCreateXML
+virNetworkGetBridgeName
+virNetworkGetXMLDesc
+
returns
VIR_CPU_MAPLEN
+VIR_CPU_USABLE
+VIR_GET_CPUMAP
+virConnectGetVersion
+
reused
virDomainGetXMLDesc
+virNetworkGetXMLDesc
+
root
_virDomainKernel
+
routine
virDefaultErrorFunc
+virInitialize
+
running
_virDomainInfo
+virConnectClose
+virConnectGetVersion
+virDomainCreate
+virDomainDestroy
+virDomainFree
+virDomainGetMaxVcpus
+virDomainSave
+virDomainUndefine
+virNetworkCreate
+virNetworkDestroy
+virNetworkFree
+virNetworkUndefine
+
runs
virDomainGetMaxMemory
+virDomainSetMaxMemory
+virDomainSetMemory
+

Letter s:

same
virDomainGetMaxVcpus
+virDomainGetName
virNetworkGetName
save
virDomainSave
saved
virDomainRestore
@@ -46,11 +220,16 @@ virDomainSetMemory
socket
_virNodeInfo
software
virConnectGetType
+
specific
virConnectGetMaxVcpus
specified
VIR_COPY_CPUMAP
VIR_GET_CPUMAP
start
virDomainDefineXML
virNetworkCreate
virNetworkCreateXML
+
started
virDomainGetAutostart
+virDomainSetAutostart
+virNetworkGetAutostart
+virNetworkSetAutostart
startup
virInitialize
state
_virDomainInfo
virDomainResume
@@ -93,146 +272,23 @@
structures
virDomainGetVcpus
succeed
virDomainCreate
virNetworkCreate
-
success
virConnectClose
-virDomainAttachDevice
-virDomainCoreDump
-virDomainCreate
-virDomainDestroy
-virDomainDetachDevice
-virDomainFree
-virDomainGetInfo
-virDomainGetUUID
-virDomainGetUUIDString
-virDomainGetVcpus
-virDomainPinVcpu
-virDomainReboot
-virDomainRestore
-virDomainResume
-virDomainSave
-virDomainSetMaxMemory
-virDomainSetMemory
-virDomainSetVcpus
-virDomainShutdown
-virDomainSuspend
-virDomainUndefine
-virInitialize
-virNetworkCreate
-virNetworkDestroy
-virNetworkFree
-virNetworkGetUUID
-virNetworkGetUUIDString
-virNetworkUndefine
-virNodeGetInfo
successful
virDomainSave
suitable
virConnGetLastError
virGetLastError
support
virDomainSetVcpus
supported
VIR_NODEINFO_MAXCPUS
+virConnectGetMaxVcpus
+virDomainGetMaxVcpus
suspend
virDomainSave
suspended
virDomainResume
system
virDomainGetOSType
virDomainGetVcpus
virDomainPinVcpu
-

Letter t:

target
virConnCopyLastError
-virCopyLastError
-virDomainSetMemory
-
terminated
virConnectGetType
-virDomainGetXMLDesc
-virNetworkGetBridgeName
-virNetworkGetXMLDesc
-
that
virConnCopyLastError
-virConnGetLastError
-virConnResetLastError
-virDomainCoreDump
-virDomainGetInfo
-virDomainGetName
-virDomainPinVcpu
-virDomainReboot
-virDomainSetVcpus
-virDomainShutdown
-virNetworkGetName
-
their
virConnectListDomains
-virConnectListNetworks
-
then
virConnectOpenReadOnly
-virDomainGetMaxMemory
-virDomainGetVcpus
-virDomainSetMaxMemory
-virDomainSetMemory
-
there
virConnectClose
-virDomainGetVcpus
-virDomainReboot
-virDomainShutdown
-virErrorFunc
-virSetErrorFunc
-
thereafter
virDomainDestroy
-virDomainFree
-virNetworkDestroy
-virNetworkFree
-
this
_virError
-virDomainGetMaxMemory
-virDomainGetVcpus
-virDomainSave
-virDomainSetMaxMemory
-virDomainSetMemory
-virDomainSetVcpus
-virInitialize
-
those
virSetErrorFunc
-
threads
_virNodeInfo
-
time
_virDomainInfo
-_virVcpuInfo
-
total
VIR_NODEINFO_MAXCPUS
-
true
VIR_CPU_USABLE
-
two
virGetVersion
-
type
virDomainGetOSType
-virGetVersion
-

Letter u:

undefine
virDomainUndefine
-
underlying
virDomainGetVcpus
-virDomainPinVcpu
-virDomainSetVcpus
-
uniform
_virNodeInfo
-
unknown
virGetVersion
-
unsigned
virDomainGetID
-
unused
virConnectOpen
-virConnectOpenReadOnly
-virDomainCoreDump
-
usable
VIR_CPU_USABLE
-VIR_UNUSE_CPU
-VIR_USE_CPU
-virConnectOpenReadOnly
-virDomainPinVcpu
-virDomainReboot
-virDomainShutdown
-
use
virConnGetLastError
-virErrorFunc
-virGetLastError
-
used
VIR_COPY_CPUMAP
-VIR_CPU_MAPLEN
-VIR_CPU_USABLE
-VIR_GET_CPUMAP
-VIR_UNUSE_CPU
-VIR_USE_CPU
-_virDomainInfo
-_virVcpuInfo
-virConnectGetType
-virDomainDestroy
-virDomainFree
-virDomainGetInfo
-virDomainGetXMLDesc
-virDomainReboot
-virDomainSetVcpus
-virDomainSuspend
-virNetworkDestroy
-virNetworkFree
-virNetworkGetXMLDesc
-
user
virConnSetErrorFunc
-virDomainGetInfo
-virErrorFunc
-virNodeGetInfo
-virSetErrorFunc
-

A-a -b-e -f-m -n-r -s-u -v-z +

A-X +a-c +d-i +j-n +o-s +t-w +x-z

diff --git a/docs/APIfiles.html b/docs/APIfiles.html index ff54362e51..c02cc049bc 100644 --- a/docs/APIfiles.html +++ b/docs/APIfiles.html @@ -35,6 +35,7 @@ _virVcpuInfo
virConnect
virConnectClose
+virConnectGetMaxVcpus
virConnectGetType
virConnectGetVersion
virConnectListDefinedDomains
@@ -59,9 +60,11 @@ virDomainDestroy
virDomainDetachDevice
virDomainFree
+virDomainGetAutostart
virDomainGetID
virDomainGetInfo
virDomainGetMaxMemory
+virDomainGetMaxVcpus
virDomainGetName
virDomainGetOSType
virDomainGetUUID
@@ -83,6 +86,7 @@ virDomainRestore
virDomainResume
virDomainSave
+virDomainSetAutostart
virDomainSetMaxMemory
virDomainSetMemory
virDomainSetVcpus
@@ -98,6 +102,7 @@ virNetworkDefineXML
virNetworkDestroy
virNetworkFree
+virNetworkGetAutostart
virNetworkGetBridgeName
virNetworkGetName
virNetworkGetUUID
@@ -107,6 +112,7 @@ virNetworkLookupByUUID
virNetworkLookupByUUIDString
virNetworkPtr
+virNetworkSetAutostart
virNetworkUndefine
virNodeGetInfo
virNodeInfo
diff --git a/docs/APIfunctions.html b/docs/APIfunctions.html index 8ebbe265df..ba0060f21f 100644 --- a/docs/APIfunctions.html +++ b/docs/APIfunctions.html @@ -1,11 +1,13 @@ -List of function manipulating types in libvirt

List of function manipulating types in libvirt

Type const char **:

virConnectListDefinedDomains
+List of function manipulating types in libvirt

List of function manipulating types in libvirt

Type char ** const:

virConnectListDefinedDomains
virConnectListDefinedNetworks
virConnectListNetworks

Type const unsigned char *:

virDomainLookupByUUID
virNetworkLookupByUUID

Type int *:

virConnectListDomains
+virDomainGetAutostart
+virNetworkGetAutostart

Type unsigned char *:

virDomainGetUUID
virDomainGetVcpus
virDomainPinVcpu
@@ -23,6 +25,7 @@ virConnResetLastError
virConnSetErrorFunc
virConnectClose
+virConnectGetMaxVcpus
virConnectGetType
virConnectGetVersion
virConnectListDefinedDomains
@@ -53,9 +56,11 @@ virDomainDestroy
virDomainDetachDevice
virDomainFree
+virDomainGetAutostart
virDomainGetID
virDomainGetInfo
virDomainGetMaxMemory
+virDomainGetMaxVcpus
virDomainGetName
virDomainGetOSType
virDomainGetUUID
@@ -66,6 +71,7 @@ virDomainReboot
virDomainResume
virDomainSave
+virDomainSetAutostart
virDomainSetMaxMemory
virDomainSetMemory
virDomainSetVcpus
@@ -82,11 +88,13 @@

Type virNetworkPtr:

virNetworkCreate
virNetworkDestroy
virNetworkFree
+virNetworkGetAutostart
virNetworkGetBridgeName
virNetworkGetName
virNetworkGetUUID
virNetworkGetUUIDString
virNetworkGetXMLDesc
+virNetworkSetAutostart
virNetworkUndefine

Type virNodeInfoPtr:

virNodeGetInfo

Type virVcpuInfoPtr:

virDomainGetVcpus
diff --git a/docs/APIsymbols.html b/docs/APIsymbols.html index 1af44ef354..c8c7eb78b0 100644 --- a/docs/APIsymbols.html +++ b/docs/APIsymbols.html @@ -93,6 +93,7 @@ virConnSetErrorFunc
virConnect
virConnectClose
+virConnectGetMaxVcpus
virConnectGetType
virConnectGetVersion
virConnectListDefinedDomains
@@ -119,9 +120,11 @@ virDomainDestroy
virDomainDetachDevice
virDomainFree
+virDomainGetAutostart
virDomainGetID
virDomainGetInfo
virDomainGetMaxMemory
+virDomainGetMaxVcpus
virDomainGetName
virDomainGetOSType
virDomainGetUUID
@@ -143,6 +146,7 @@ virDomainRestore
virDomainResume
virDomainSave
+virDomainSetAutostart
virDomainSetMaxMemory
virDomainSetMemory
virDomainSetVcpus
@@ -165,6 +169,7 @@ virNetworkDefineXML
virNetworkDestroy
virNetworkFree
+virNetworkGetAutostart
virNetworkGetBridgeName
virNetworkGetName
virNetworkGetUUID
@@ -174,6 +179,7 @@ virNetworkLookupByUUID
virNetworkLookupByUUIDString
virNetworkPtr
+virNetworkSetAutostart
virNetworkUndefine
virNodeGetInfo
virNodeInfo
diff --git a/docs/devhelp/libvirt-libvirt.html b/docs/devhelp/libvirt-libvirt.html index 117fd28ac5..c68f8eba58 100644 --- a/docs/devhelp/libvirt-libvirt.html +++ b/docs/devhelp/libvirt-libvirt.html @@ -71,13 +71,16 @@ int virDomainGetInfo (virNetworkFree (virNetworkPtr network); const char * virNetworkGetName (virNetworkPtr network); const char * virDomainGetName (virDomainPtr domain); +int virNetworkGetAutostart (virNetworkPtr network,
int * autostart); virDomainPtr virDomainDefineXML (virConnectPtr conn,
const char * xml); int virDomainShutdown (virDomainPtr domain); int virNetworkUndefine (virNetworkPtr network); int virGetVersion (unsigned long * libVer,
const char * type,
unsigned long * typeVer); -int virConnectListDefinedDomains (virConnectPtr conn,
const char ** names,
int maxnames); +int virConnectListDefinedDomains (virConnectPtr conn,
char ** const names,
int maxnames); +int virDomainSetMaxMemory (virDomainPtr domain,
unsigned long memory); int virNetworkGetUUID (virNetworkPtr network,
unsigned char * uuid); virDomainPtr virDomainLookupByName (virConnectPtr conn,
const char * name); +virNetworkPtr virNetworkLookupByUUID (virConnectPtr conn,
const unsigned char * uuid); char * virNetworkGetBridgeName (virNetworkPtr network); int virDomainPinVcpu (virDomainPtr domain,
unsigned int vcpu,
unsigned char * cpumap,
int maplen); int virDomainRestore (virConnectPtr conn,
const char * from); @@ -92,18 +95,21 @@ int virDomainCoreDump (virConnectNumOfDefinedNetworks (virConnectPtr conn); int virDomainUndefine (virDomainPtr domain); char * virDomainGetOSType (virDomainPtr domain); -int virConnectListDefinedNetworks (virConnectPtr conn,
const char ** names,
int maxnames); +int virConnectListDefinedNetworks (virConnectPtr conn,
char ** const names,
int maxnames); int virNodeGetInfo (virConnectPtr conn,
virNodeInfoPtr info); int virDomainGetUUID (virDomainPtr domain,
unsigned char * uuid); virNetworkPtr virNetworkCreateXML (virConnectPtr conn,
const char * xmlDesc); +int virNetworkSetAutostart (virNetworkPtr network,
int autostart); int virConnectNumOfDomains (virConnectPtr conn); int virDomainGetUUIDString (virDomainPtr domain,
char * buf); unsigned long virDomainGetMaxMemory (virDomainPtr domain); int virDomainAttachDevice (virDomainPtr domain,
char * xml); -int virDomainSetMaxMemory (virDomainPtr domain,
unsigned long memory); +int virDomainGetMaxVcpus (virDomainPtr domain); int virDomainFree (virDomainPtr domain); virConnectPtr virConnectOpen (const char * name); +int virDomainSetAutostart (virDomainPtr domain,
int autostart); int virDomainSuspend (virDomainPtr domain); +int virConnectGetMaxVcpus (virConnectPtr conn,
const char * type); int virConnectNumOfDefinedDomains (virConnectPtr conn); virNetworkPtr virNetworkDefineXML (virConnectPtr conn,
const char * xml); int virNetworkCreate (virNetworkPtr network); @@ -122,11 +128,11 @@ int virNetworkDestroy (virDomainDestroy (virDomainPtr domain); int virConnectNumOfNetworks (virConnectPtr conn); int virDomainDetachDevice (virDomainPtr domain,
char * xml); -virNetworkPtr virNetworkLookupByUUID (virConnectPtr conn,
const unsigned char * uuid); +int virDomainGetAutostart (virDomainPtr domain,
int * autostart); int virDomainGetVcpus (virDomainPtr domain,
virVcpuInfoPtr info,
int maxinfo,
unsigned char * cpumaps,
int maplen); char * virDomainGetXMLDesc (virDomainPtr domain,
int flags); int virConnectGetVersion (virConnectPtr conn,
unsigned long * hvVer); -int virConnectListNetworks (virConnectPtr conn,
const char ** names,
int maxnames); +int virConnectListNetworks (virConnectPtr conn,
char ** const names,
int maxnames); virDomainPtr virDomainLookupByID (virConnectPtr conn,
int id); virConnectPtr virConnectOpenReadOnly (const char * name); @@ -311,6 +317,10 @@ The content of this structure is not made public by the API.

virConnectClose ()

int	virConnectClose			(virConnectPtr conn)

This function closes the connection to the Hypervisor. This should not be called if further interaction with the Hypervisor are needed especially if there is running domain which need further monitoring by the application.

conn:pointer to the hypervisor connection
Returns:0 in case of success or -1 in case of error.
+
+

virConnectGetMaxVcpus ()

int	virConnectGetMaxVcpus		(virConnectPtr conn, 
const char * type)
+

+

conn:pointer to the hypervisor connection
type:value of the 'type' attribute in the <domain> element
Returns:the maximum number of virtual CPUs supported for a guest VM of a specific type. The 'type' parameter here corresponds to the 'type' attribute in the <domain> element of the XML. Returns the maximum of virtual CPU or -1 in case of error.

virConnectGetType ()

const char *	virConnectGetType	(virConnectPtr conn)

Get the name of the Hypervisor software used.

@@ -320,11 +330,11 @@ The content of this structure is not made public by the API.

Get the version level of the Hypervisor running. This may work only with hypervisor call, i.e. with priviledged access to the hypervisor, not with a Read-Only connection.

conn:pointer to the hypervisor connection
hvVer:return value for the version of the running hypervisor (OUT)
Returns:-1 in case of error, 0 otherwise. if the version can't be extracted by lack of capacities returns 0 and @hvVer is 0, otherwise @hvVer value is major * 1,000,000 + minor * 1,000 + release

-

virConnectListDefinedDomains ()

int	virConnectListDefinedDomains	(virConnectPtr conn, 
const char ** names,
int maxnames)
+

virConnectListDefinedDomains ()

int	virConnectListDefinedDomains	(virConnectPtr conn, 
char ** const names,
int maxnames)

list the defined domains, stores the pointers to the names in @names

conn:pointer to the hypervisor connection
names:pointer to an array to store the names
maxnames:size of the array
Returns:the number of names provided in the array or -1 in case of error

-

virConnectListDefinedNetworks ()

int	virConnectListDefinedNetworks	(virConnectPtr conn, 
const char ** names,
int maxnames)
+

virConnectListDefinedNetworks ()

int	virConnectListDefinedNetworks	(virConnectPtr conn, 
char ** const names,
int maxnames)

list the inactive networks, stores the pointers to the names in @names

conn:pointer to the hypervisor connection
names:pointer to an array to store the names
maxnames:size of the array
Returns:the number of names provided in the array or -1 in case of error

@@ -332,7 +342,7 @@ The content of this structure is not made public by the API.

Collect the list of active domains, and store their ID in @maxids

conn:pointer to the hypervisor connection
ids:array to collect the list of IDs of active domains
maxids:size of @ids
Returns:the number of domain found or -1 in case of error

-

virConnectListNetworks ()

int	virConnectListNetworks		(virConnectPtr conn, 
const char ** names,
int maxnames)
+

virConnectListNetworks ()

int	virConnectListNetworks		(virConnectPtr conn, 
char ** const names,
int maxnames)

Collect the list of active networks, and store their names in @names

conn:pointer to the hypervisor connection
names:array to collect the list of names of active networks
maxnames:size of @names
Returns:the number of networks found or -1 in case of error

@@ -391,6 +401,10 @@ The content of this structure is not made public by the API.

virDomainFree ()

int	virDomainFree			(virDomainPtr domain)

Free the domain object. The running instance is kept alive. The data structure is freed and should not be used thereafter.

domain:a domain object
Returns:0 in case of success and -1 in case of failure.
+
+

virDomainGetAutostart ()

int	virDomainGetAutostart		(virDomainPtr domain, 
int * autostart)
+

+

domain:a domain object
autostart:
Returns:a boolean value indicating whether the domain configured to be automatically started when the host machine boots. Returns -1 in case of error, 0 in case of success

virDomainGetID ()

unsigned int	virDomainGetID		(virDomainPtr domain)

Get the hypervisor ID number for the domain

@@ -403,6 +417,10 @@ The content of this structure is not made public by the API.

virDomainGetMaxMemory ()

unsigned long	virDomainGetMaxMemory	(virDomainPtr domain)

Retrieve the maximum amount of physical memory allocated to a domain. If domain is NULL, then this get the amount of memory reserved to Domain0 i.e. the domain where the application runs.

domain:a domain object or NULL
Returns:the memory size in kilobytes or 0 in case of error.
+
+

virDomainGetMaxVcpus ()

int	virDomainGetMaxVcpus		(virDomainPtr domain)
+

+

domain:pointer to domain object
Returns:the maximum number of virtual CPUs supported for the guest VM. If the guest is inactive, this is basically the same as virConnectGetMaxVcpus. If the guest is running this will reflect the maximum number of virtual CPUs the guest was booted with. Returns the maximum of virtual CPU or -1 in case of error.

virDomainGetName ()

const char *	virDomainGetName	(virDomainPtr domain)

Get the public name for that domain

@@ -463,6 +481,10 @@ The content of this structure is not made public by the API.

virDomainSave ()

int	virDomainSave			(virDomainPtr domain, 
const char * to)

This method will suspend a domain and save its memory contents to a file on disk. After the call, if successful, the domain is not listed as running anymore (this may be a problem). Use virDomainRestore() to restore a domain after saving.

domain:a domain object
to:path for the output file
Returns:0 in case of success and -1 in case of failure.
+
+

virDomainSetAutostart ()

int	virDomainSetAutostart		(virDomainPtr domain, 
int autostart)
+

Configure the domain to be automatically started when the host machine boots.

+
domain:a domain object
autostart:
Returns:-1 in case of error, 0 in case of success

virDomainSetMaxMemory ()

int	virDomainSetMaxMemory		(virDomainPtr domain, 
unsigned long memory)

Dynamically change the maximum amount of physical memory allocated to a domain. If domain is NULL, then this change the amount of memory reserved to Domain0 i.e. the domain where the application runs. This function requires priviledged access to the hypervisor.

@@ -515,6 +537,10 @@ The content of this structure is not made public by the API.

virNetworkFree ()

int	virNetworkFree			(virNetworkPtr network)

Free the network object. The running instance is kept alive. The data structure is freed and should not be used thereafter.

network:a network object
Returns:0 in case of success and -1 in case of failure.
+
+

virNetworkGetAutostart ()

int	virNetworkGetAutostart		(virNetworkPtr network, 
int * autostart)
+

+

network:a network object
autostart:
Returns:a boolean value indicating whether the network configured to be automatically started when the host machine boots. Returns -1 in case of error, 0 in case of success

virNetworkGetBridgeName ()

char *	virNetworkGetBridgeName		(virNetworkPtr network)

@@ -547,6 +573,10 @@ The content of this structure is not made public by the API.

virNetworkLookupByUUIDString ()

virNetworkPtr	virNetworkLookupByUUIDString	(virConnectPtr conn, 
const char * uuidstr)

Try to lookup a network on the given hypervisor based on its UUID.

conn:pointer to the hypervisor connection
uuidstr:the string UUID for the network
Returns:a new network object or NULL in case of failure
+
+

virNetworkSetAutostart ()

int	virNetworkSetAutostart		(virNetworkPtr network, 
int autostart)
+

Configure the network to be automatically started when the host machine boots.

+
network:a network object
autostart:
Returns:-1 in case of error, 0 in case of success

virNetworkUndefine ()

int	virNetworkUndefine		(virNetworkPtr network)

Undefine a network but does not stop it if it is running

diff --git a/docs/libvirt-api.xml b/docs/libvirt-api.xml index 2bb7044d34..24ab373daa 100644 --- a/docs/libvirt-api.xml +++ b/docs/libvirt-api.xml @@ -61,13 +61,16 @@ + + + @@ -86,14 +89,17 @@ + - + + + @@ -112,7 +118,7 @@ - + @@ -417,6 +423,12 @@ + + + + + + Get the name of the Hypervisor software used. @@ -432,14 +444,14 @@ list the defined domains, stores the pointers to the names in @names - + list the inactive networks, stores the pointers to the names in @names - + @@ -453,7 +465,7 @@ Collect the list of active networks, and store their names in @names - + @@ -543,6 +555,12 @@ + + + + + + Get the hypervisor ID number for the domain @@ -559,6 +577,11 @@ + + + + + Get the public name for that domain @@ -651,6 +674,12 @@ + + Configure the domain to be automatically started when the host machine boots. + + + + Dynamically change the maximum amount of physical memory allocated to a domain. If domain is NULL, then this change the amount of memory reserved to Domain0 i.e. the domain where the application runs. This function requires priviledged access to the hypervisor. @@ -732,6 +761,12 @@ + + + + + + @@ -778,6 +813,12 @@ + + Configure the network to be automatically started when the host machine boots. + + + + Undefine a network but does not stop it if it is running diff --git a/docs/libvirt-refs.xml b/docs/libvirt-refs.xml index 2bac5b6b91..217156127e 100644 --- a/docs/libvirt-refs.xml +++ b/docs/libvirt-refs.xml @@ -94,6 +94,7 @@ + @@ -120,9 +121,11 @@ + + @@ -144,6 +147,7 @@ + @@ -166,6 +170,7 @@ + @@ -175,6 +180,7 @@ + @@ -287,6 +293,7 @@ + @@ -313,9 +320,11 @@ + + @@ -337,6 +346,7 @@ + @@ -359,6 +369,7 @@ + @@ -368,6 +379,7 @@ + @@ -412,7 +424,7 @@ - + @@ -423,6 +435,8 @@ + + @@ -450,6 +464,7 @@ + @@ -484,9 +499,11 @@ + + @@ -497,6 +514,7 @@ + @@ -519,11 +537,13 @@ + + @@ -575,6 +595,7 @@ + @@ -599,9 +620,11 @@ + + @@ -623,6 +646,7 @@ + @@ -638,6 +662,7 @@ + @@ -647,6 +672,7 @@ + @@ -763,6 +789,8 @@ + + @@ -777,6 +805,8 @@ + + @@ -785,6 +815,10 @@ + + + + @@ -956,6 +990,10 @@ + + + + @@ -1074,6 +1112,7 @@ + @@ -1090,6 +1129,8 @@ + + @@ -1224,6 +1265,15 @@ + + + + + + + + + @@ -1235,8 +1285,6 @@ - - @@ -1259,6 +1307,9 @@ + + + @@ -1281,6 +1332,19 @@ + + + + + + + + + + + + + @@ -1406,6 +1470,10 @@ + + + + @@ -1442,6 +1510,9 @@ + + + @@ -1478,6 +1549,8 @@ + + @@ -1563,6 +1636,9 @@ + + + @@ -1590,8 +1666,6 @@ - - @@ -1720,7 +1794,9 @@ + + @@ -1743,9 +1819,16 @@ + + + + + + + @@ -1769,9 +1852,12 @@ + + + @@ -1833,6 +1919,8 @@ + + @@ -1946,6 +2034,12 @@ + + + + + + @@ -1976,7 +2070,9 @@ + + @@ -2066,8 +2162,6 @@ - - @@ -2156,6 +2250,8 @@ + + @@ -2213,6 +2309,7 @@ + @@ -2341,6 +2438,9 @@ + + + @@ -2450,6 +2550,7 @@ + @@ -2463,10 +2564,9 @@ - - + @@ -2534,6 +2634,9 @@ + + + @@ -2543,6 +2646,12 @@ + + + + + + @@ -2615,38 +2724,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2659,6 +2736,8 @@ + + @@ -2672,6 +2751,8 @@ + + @@ -2725,6 +2806,7 @@ + @@ -2752,6 +2834,7 @@ + @@ -2822,15 +2905,16 @@ - - + + + @@ -2853,6 +2937,9 @@ + + + @@ -2928,8 +3015,10 @@ + + @@ -2945,12 +3034,17 @@ + + + + + @@ -2958,6 +3052,10 @@ + + + + @@ -2976,6 +3074,7 @@ + @@ -2995,6 +3094,7 @@ + @@ -3005,6 +3105,8 @@ + + @@ -3026,12 +3128,13 @@ - - - - - - + + + + + + + diff --git a/include/libvirt/libvirt.h b/include/libvirt/libvirt.h index e00b2d6a5a..46f2545212 100644 --- a/include/libvirt/libvirt.h +++ b/include/libvirt/libvirt.h @@ -231,6 +231,8 @@ int virConnectClose (virConnectPtr conn); const char * virConnectGetType (virConnectPtr conn); int virConnectGetVersion (virConnectPtr conn, unsigned long *hvVer); +int virConnectGetMaxVcpus (virConnectPtr conn, + const char *type); int virNodeGetInfo (virConnectPtr conn, virNodeInfoPtr info); @@ -310,6 +312,8 @@ int virDomainSetMaxMemory (virDomainPtr domain, unsigned long memory); int virDomainSetMemory (virDomainPtr domain, unsigned long memory); +int virDomainGetMaxVcpus (virDomainPtr domain); + /* * XML domain description */ diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in index 48f815267b..5a86c5bf96 100644 --- a/include/libvirt/libvirt.h.in +++ b/include/libvirt/libvirt.h.in @@ -231,6 +231,8 @@ int virConnectClose (virConnectPtr conn); const char * virConnectGetType (virConnectPtr conn); int virConnectGetVersion (virConnectPtr conn, unsigned long *hvVer); +int virConnectGetMaxVcpus (virConnectPtr conn, + const char *type); int virNodeGetInfo (virConnectPtr conn, virNodeInfoPtr info); @@ -310,6 +312,8 @@ int virDomainSetMaxMemory (virDomainPtr domain, unsigned long memory); int virDomainSetMemory (virDomainPtr domain, unsigned long memory); +int virDomainGetMaxVcpus (virDomainPtr domain); + /* * XML domain description */ diff --git a/src/driver.h b/src/driver.h index 872524aeee..4351f029f5 100644 --- a/src/driver.h +++ b/src/driver.h @@ -43,6 +43,8 @@ typedef const char * typedef int (*virDrvGetVersion) (virConnectPtr conn, unsigned long *hvVer); +typedef int + (*virDrvGetMaxVcpus) (virConnectPtr conn); typedef int (*virDrvNodeGetInfo) (virConnectPtr conn, virNodeInfoPtr info); @@ -128,6 +130,8 @@ typedef int int maxinfo, unsigned char *cpumaps, int maplen); +typedef int + (*virDrvDomainGetMaxVcpus) (virDomainPtr domain); typedef int (*virDrvDomainAttachDevice) (virDomainPtr domain, char *xml); @@ -158,6 +162,7 @@ struct _virDriver { virDrvClose close; virDrvGetType type; virDrvGetVersion version; + virDrvGetMaxVcpus getMaxVcpus; virDrvNodeGetInfo nodeGetInfo; virDrvListDomains listDomains; virDrvNumOfDomains numOfDomains; @@ -181,6 +186,7 @@ struct _virDriver { virDrvDomainSetVcpus domainSetVcpus; virDrvDomainPinVcpu domainPinVcpu; virDrvDomainGetVcpus domainGetVcpus; + virDrvDomainGetMaxVcpus domainGetMaxVcpus; virDrvDomainDumpXML domainDumpXML; virDrvListDefinedDomains listDefinedDomains; virDrvNumOfDefinedDomains numOfDefinedDomains; diff --git a/src/libvirt.c b/src/libvirt.c index 6f87d49d0a..9030ce3fad 100644 --- a/src/libvirt.c +++ b/src/libvirt.c @@ -522,6 +522,44 @@ virConnectGetVersion(virConnectPtr conn, unsigned long *hvVer) return (-1); } +/** + * virConnectGetMaxVcpus: + * @conn: pointer to the hypervisor connection + * @type: value of the 'type' attribute in the element + * + * Returns the maximum number of virtual CPUs supported for a guest VM of a + * specific type. The 'type' parameter here corresponds to the 'type' + * attribute in the element of the XML. + * + * Returns the maximum of virtual CPU or -1 in case of error. + */ +int +virConnectGetMaxVcpus(virConnectPtr conn, + const char *type) +{ + int ret = -1; + int i; + + if (!VIR_IS_CONNECT(conn)) { + virLibConnError(conn, VIR_ERR_INVALID_CONN, __FUNCTION__); + return (-1); + } + + if (type == NULL) + type = "Xen"; + for (i = 0;i < MAX_DRIVERS;i++) { + if ((virDriverTab[i] != NULL) && + (!strcmp(virDriverTab[i]->name, type))) { + ret = conn->drivers[i]->getMaxVcpus(conn); + if (ret >= 0) + return(ret); + } + } + + return (-1); + +} + /** * virConnectListDomains: * @conn: pointer to the hypervisor connection @@ -2109,6 +2147,44 @@ virDomainGetVcpus(virDomainPtr domain, virVcpuInfoPtr info, int maxinfo, return (-1); } +/** + * virDomainGetMaxVcpus: + * @domain: pointer to domain object + * + * Returns the maximum number of virtual CPUs supported for + * the guest VM. If the guest is inactive, this is basically + * the same as virConnectGetMaxVcpus. If the guest is running + * this will reflect the maximum number of virtual CPUs the + * guest was booted with. + * + * Returns the maximum of virtual CPU or -1 in case of error. + */ +int +virDomainGetMaxVcpus(virDomainPtr domain) { + int i; + int ret = 0; + virConnectPtr conn; + + if (!VIR_IS_CONNECTED_DOMAIN(domain)) { + virLibDomainError(domain, VIR_ERR_INVALID_DOMAIN, __FUNCTION__); + return (-1); + } + + conn = domain->conn; + + for (i = 0;i < conn->nb_drivers;i++) { + if ((conn->drivers[i] != NULL) && + (conn->drivers[i]->domainGetMaxVcpus != NULL)) { + ret = conn->drivers[i]->domainGetMaxVcpus(domain); + if (ret != 0) + return(ret); + } + } + virLibConnError(conn, VIR_ERR_CALL_FAILED, __FUNCTION__); + return (-1); +} + + /** * virDomainAttachDevice: * @domain: pointer to domain object diff --git a/src/libvirt_sym.version b/src/libvirt_sym.version index 6f38fb3167..b8d82ccc1e 100644 --- a/src/libvirt_sym.version +++ b/src/libvirt_sym.version @@ -36,6 +36,7 @@ virDomainSuspend; virConnectListDefinedDomains; virConnectNumOfDefinedDomains; + virConnectGetMaxVcpus; virDomainUndefine; virDomainGetAutostart; virDomainSetAutostart; @@ -56,6 +57,7 @@ virDomainSetVcpus; virDomainPinVcpu; virDomainGetVcpus; + virDomainGetMaxVcpus; virDomainAttachDevice; virDomainDetachDevice; diff --git a/src/proxy_internal.c b/src/proxy_internal.c index dabaad8738..ca156058fc 100644 --- a/src/proxy_internal.c +++ b/src/proxy_internal.c @@ -50,6 +50,7 @@ static virDriver xenProxyDriver = { xenProxyClose, /* close */ NULL, /* type */ xenProxyGetVersion, /* version */ + NULL, /* getMaxVcpus */ xenProxyNodeGetInfo, /* nodeGetInfo */ xenProxyListDomains, /* listDomains */ xenProxyNumOfDomains, /* numOfDomains */ @@ -73,6 +74,7 @@ static virDriver xenProxyDriver = { NULL, /* domainSetVcpus */ NULL, /* domainPinVcpu */ NULL, /* domainGetVcpus */ + NULL, /* domainGetMaxVcpus */ xenProxyDomainDumpXML, /* domainDumpXML */ NULL, /* listDefinedDomains */ NULL, /* numOfDefinedDomains */ diff --git a/src/qemu_internal.c b/src/qemu_internal.c index 2349a1b1c8..d37753b1ee 100644 --- a/src/qemu_internal.c +++ b/src/qemu_internal.c @@ -1167,6 +1167,7 @@ static virDriver qemuDriver = { qemuClose, /* close */ NULL, /* type */ qemuGetVersion, /* version */ + NULL, /* getMaxVcpus */ qemuNodeGetInfo, /* nodeGetInfo */ qemuListDomains, /* listDomains */ qemuNumOfDomains, /* numOfDomains */ @@ -1190,6 +1191,7 @@ static virDriver qemuDriver = { NULL, /* domainSetVcpus */ NULL, /* domainPinVcpu */ NULL, /* domainGetVcpus */ + NULL, /* domainGetMaxVcpus */ qemuDomainDumpXML, /* domainDumpXML */ qemuListDefinedDomains, /* listDomains */ qemuNumOfDefinedDomains, /* numOfDomains */ diff --git a/src/test.c b/src/test.c index ac096581f4..cb2496e3a2 100644 --- a/src/test.c +++ b/src/test.c @@ -94,6 +94,7 @@ static virDriver testDriver = { testClose, /* close */ NULL, /* type */ testGetVersion, /* version */ + NULL, /* getMaxVcpus */ testNodeGetInfo, /* nodeGetInfo */ testListDomains, /* listDomains */ testNumOfDomains, /* numOfDomains */ @@ -117,6 +118,7 @@ static virDriver testDriver = { testSetVcpus, /* domainSetVcpus */ NULL, /* domainPinVcpu */ NULL, /* domainGetVcpus */ + NULL, /* domainGetMaxVcpus */ testDomainDumpXML, /* domainDumpXML */ testListDefinedDomains, /* listDefinedDomains */ testNumOfDefinedDomains, /* numOfDefinedDomains */ diff --git a/src/virsh.c b/src/virsh.c index 291d155e20..9434dbd37b 100644 --- a/src/virsh.c +++ b/src/virsh.c @@ -1383,6 +1383,7 @@ cmdSetvcpus(vshControl * ctl, vshCmd * cmd) { virDomainPtr dom; int count; + int maxcpu; int ret = TRUE; if (!vshConnectionUsability(ctl, ctl->conn, TRUE)) @@ -1397,6 +1398,18 @@ cmdSetvcpus(vshControl * ctl, vshCmd * cmd) return FALSE; } + maxcpu = virDomainGetMaxVcpus(dom); + if (!maxcpu) { + virDomainFree(dom); + return FALSE; + } + + if (count > maxcpu) { + vshError(ctl, FALSE, _("Too many virtual CPU's.")); + virDomainFree(dom); + return FALSE; + } + if (virDomainSetVcpus(dom, count) != 0) { ret = FALSE; } diff --git a/src/xen_internal.c b/src/xen_internal.c index 54571d93d1..4c73cd11ee 100644 --- a/src/xen_internal.c +++ b/src/xen_internal.c @@ -190,6 +190,11 @@ typedef union xen_getdomaininfolist xen_getdomaininfolist; dominfo.v0.nr_online_vcpus : \ dominfo.v2.nr_online_vcpus) +#define XEN_GETDOMAININFO_MAXCPUID(dominfo) \ + (hypervisor_version < 2 ? \ + dominfo.v0.max_vcpu_id : \ + dominfo.v2.max_vcpu_id) + #define XEN_GETDOMAININFO_FLAGS(dominfo) \ (hypervisor_version < 2 ? \ dominfo.v0.flags : \ @@ -423,6 +428,7 @@ static virDriver xenHypervisorDriver = { xenHypervisorClose, /* close */ xenHypervisorGetType, /* type */ xenHypervisorGetVersion, /* version */ + xenHypervisorNumOfMaxVcpus, /* getMaxVcpus */ NULL, /* nodeGetInfo */ xenHypervisorListDomains, /* listDomains */ xenHypervisorNumOfDomains, /* numOfDomains */ @@ -446,6 +452,7 @@ static virDriver xenHypervisorDriver = { xenHypervisorSetVcpus, /* domainSetVcpus */ xenHypervisorPinVcpu, /* domainPinVcpu */ xenHypervisorGetVcpus, /* domainGetVcpus */ + xenHypervisorGetVcpuMax, /* domainGetMaxVcpus */ NULL, /* domainDumpXML */ NULL, /* listDefinedDomains */ NULL, /* numOfDefinedDomains */ @@ -1447,6 +1454,20 @@ xenHypervisorListDomains(virConnectPtr conn, int *ids, int maxids) return (nbids); } +/** + * xenHypervisorNumOfMaxVcpus: + * + * Returns the maximum of CPU defined by Xen. + */ +int +xenHypervisorNumOfMaxVcpus(virConnectPtr conn) +{ + if ((conn == NULL) || (conn->handle < 0)) + return (-1); + + return MAX_VIRT_CPUS; +} + /** * xenHypervisorGetDomMaxMemory: * @conn: connection data @@ -1824,6 +1845,41 @@ xenHypervisorGetVcpus(virDomainPtr domain, virVcpuInfoPtr info, int maxinfo, } #endif +/** + * xenHypervisorGetVcpuMax: + * + * Returns the maximum number of virtual CPUs supported for + * the guest VM. If the guest is inactive, this is the maximum + * of CPU defined by Xen. If the guest is running this reflect + * the maximum number of virtual CPUs the guest was booted with. + */ +int +xenHypervisorGetVcpuMax(virDomainPtr domain) +{ + xen_getdomaininfo dominfo; + int ret; + int maxcpu; + + if ((domain == NULL) || (domain->conn == NULL) || + (domain->conn->handle < 0)) + return (-1); + + /* inactive domain */ + if (domain->id < 0) { + maxcpu = MAX_VIRT_CPUS; + } else { + XEN_GETDOMAININFO_CLEAR(dominfo); + ret = virXen_getdomaininfo(domain->conn->handle, domain->id, + &dominfo); + + if ((ret < 0) || (XEN_GETDOMAININFO_DOMAIN(dominfo) != domain->id)) + return (-1); + maxcpu = XEN_GETDOMAININFO_MAXCPUID(dominfo) + 1; + } + + return maxcpu; +} + /* * Local variables: * indent-tabs-mode: nil diff --git a/src/xen_internal.h b/src/xen_internal.h index 125b5b1435..e5d16d048e 100644 --- a/src/xen_internal.h +++ b/src/xen_internal.h @@ -32,6 +32,7 @@ int xenHypervisorNumOfDomains (virConnectPtr conn); int xenHypervisorListDomains (virConnectPtr conn, int *ids, int maxids); +int xenHypervisorNumOfMaxVcpus (virConnectPtr conn); int xenHypervisorDestroyDomain (virDomainPtr domain); int xenHypervisorResumeDomain (virDomainPtr domain); int xenHypervisorPauseDomain (virDomainPtr domain); @@ -55,6 +56,7 @@ int xenHypervisorGetVcpus (virDomainPtr domain, int maxinfo, unsigned char *cpumaps, int maplen); +int xenHypervisorGetVcpuMax (virDomainPtr domain); #ifdef __cplusplus } diff --git a/src/xend_internal.c b/src/xend_internal.c index 7341c1ea30..eda94bd6d2 100644 --- a/src/xend_internal.c +++ b/src/xend_internal.c @@ -66,6 +66,7 @@ static virDriver xenDaemonDriver = { xenDaemonClose, /* close */ xenDaemonGetType, /* type */ xenDaemonGetVersion, /* version */ + NULL, /* getMaxVcpus */ xenDaemonNodeGetInfo, /* nodeGetInfo */ xenDaemonListDomains, /* listDomains */ xenDaemonNumOfDomains, /* numOfDomains */ @@ -89,6 +90,7 @@ static virDriver xenDaemonDriver = { xenDaemonDomainSetVcpus, /* domainSetVcpus */ xenDaemonDomainPinVcpu, /* domainPinVcpu */ xenDaemonDomainGetVcpus, /* domainGetVcpus */ + NULL, /* domainGetMaxVcpus */ xenDaemonDomainDumpXML, /* domainDumpXML */ xenDaemonListDefinedDomains, /* listDefinedDomains */ xenDaemonNumOfDefinedDomains, /* numOfDefinedDomains */ diff --git a/src/xm_internal.c b/src/xm_internal.c index 40f69874cb..c23574ca7a 100644 --- a/src/xm_internal.c +++ b/src/xm_internal.c @@ -75,6 +75,7 @@ static virDriver xenXMDriver = { xenXMClose, /* close */ xenXMGetType, /* type */ NULL, /* version */ + NULL, /* getMaxVcpus */ NULL, /* nodeGetInfo */ NULL, /* listDomains */ NULL, /* numOfDomains */ @@ -98,6 +99,7 @@ static virDriver xenXMDriver = { xenXMDomainSetVcpus, /* domainSetVcpus */ NULL, /* domainPinVcpu */ NULL, /* domainGetVcpus */ + NULL, /* domainGetMaxVcpus */ xenXMDomainDumpXML, /* domainDumpXML */ xenXMListDefinedDomains, /* listDefinedDomains */ xenXMNumOfDefinedDomains, /* numOfDefinedDomains */ diff --git a/src/xs_internal.c b/src/xs_internal.c index c9b7346786..8f140cfdb0 100644 --- a/src/xs_internal.c +++ b/src/xs_internal.c @@ -44,6 +44,7 @@ static virDriver xenStoreDriver = { xenStoreClose, /* close */ NULL, /* type */ NULL, /* version */ + NULL, /* getMaxVcpus */ NULL, /* nodeGetInfo */ xenStoreListDomains, /* listDomains */ NULL, /* numOfDomains */ @@ -67,6 +68,7 @@ static virDriver xenStoreDriver = { NULL, /* domainSetVcpus */ NULL, /* domainPinVcpu */ NULL, /* domainGetVcpus */ + NULL, /* domainGetMaxVcpus */ NULL, /* domainDumpXML */ NULL, /* listDefinedDomains */ NULL, /* numOfDefinedDomains */