Guido Günther
5acdb5761d
Prefer xenstore driver for listDomains, since xen HV reports ghost ids of
...
already shutdown domains in some xen versions
2008-11-28 15:25:04 +00:00
Daniel P. Berrange
618276de19
Push URI probing logic down into individual drivers
2008-11-17 11:44:51 +00:00
Daniel Veillard
df93e1ee24
add new logging module, and move existing definitions there
...
* src/logging.c src/logging.h proxy/Makefile.am proxy/libvirt_proxy.c
src/Makefile.am src/cgroup.c src/datatypes.c src/domain_event.c
src/internal.h src/libvirt.c src/lxc_container.c src/lxc_controller.c
src/lxc_driver.c src/proxy_internal.c src/qemu_driver.c
src/remote_internal.c src/storage_backend_disk.c src/util.c
src/veth.c src/xen_internal.c src/xen_unified.c src/xend_internal.c:
add new logging module, and move existing definitions there
Daniel
2008-11-06 16:36:07 +00:00
Daniel P. Berrange
6ace5a39c3
Move some API declarations out of internal.h & hash.c into dedicated files
2008-11-04 23:22:06 +00:00
Daniel P. Berrange
d714b2afae
Move internal error APIs into virterror_internal.h & drop leading __ prefix
2008-11-04 22:30:33 +00:00
Jim Meyering
05589b72c4
use ARRAY_CARDINALITY more
...
* tests/nodeinfotest.c: Include "util.h".
* src/xen_internal.c: Likewise.
* src/qemu_conf.c (qemudCapsInit): Use ARRAY_CARDINALITY.
* src/storage_backend.c (virStorageBackendForType): Likewise.
* src/storage_backend_fs.c (virStorageBackendProbeFile): Likewise.
* src/xen_internal.c (xenHypervisorMakeCapabilitiesInternal): Likewise.
* src/xend_internal.c (xenDaemonParseSxpr): Likewise.
* tests/nodeinfotest.c (mymain): Likewise.
* tests/qparamtest.c (DO_TEST): Likewise.
2008-10-28 17:43:24 +00:00
Daniel P. Berrange
bdd50bc7f3
Centralize domain mac address handling in domain_conf.c/util.c
2008-10-24 11:20:08 +00:00
Jim Meyering
fd52c6ff67
avoid many format string warnings
...
Building with --disable-nls exposed many new warnings like these:
virsh.c:4952: warning: format not a string literal and no format ...
util.c:163: warning: format not a string literal and no format arguments
All but one of the following changes add a "%s" argument before
the offending _(...) argument.
This was the only manual change:
* src/lxc_driver.c (lxcVersion): Use %s and strerror(errno)
rather than %m, to avoid a warning from gcc -Wformat-security.
Add "%s" before each warned about format-string-with-no-%-directive:
* src/domain_conf.c (virDomainHostdevSubsysUsbDefParseXML)
(virDomainDefParseString, virDomainDefParseFile):
* src/hash.c (virGetConnect, __virGetDomain, virReleaseDomain)
(__virGetNetwork, virReleaseNetwork, __virGetStoragePool)
(virReleaseStoragePool, __virGetStorageVol, virReleaseStorageVol):
* src/lxc_container.c (lxcContainerChild):
* src/lxc_driver.c (lxcDomainDefine, lxcDomainUndefine)
(lxcDomainGetInfo, lxcGetOSType, lxcDomainDumpXML)
(lxcSetupInterfaces, lxcDomainStart, lxcDomainCreateAndStart)
(lxcVersion, lxcGetSchedulerParameters):
* src/network_conf.c (virNetworkDefParseString)
(virNetworkDefParseFile):
* src/openvz_conf.c (openvzReadNetworkConf, openvzLoadDomains):
* src/openvz_driver.c (openvzDomainDefineCmd)
(openvzDomainGetInfo, openvzDomainDumpXML, openvzDomainShutdown)
(openvzDomainReboot, ADD_ARG_LIT, openvzDomainDefineXML)
(openvzDomainCreateXML, openvzDomainCreate, openvzDomainUndefine)
(openvzDomainSetAutostart, openvzDomainGetAutostart)
(openvzDomainSetVcpus):
* src/qemu_driver.c (qemudDomainBlockPeek, qemudDomainMemoryPeek):
* src/remote_internal.c (remoteDomainBlockPeek)
(remoteDomainMemoryPeek, remoteAuthPolkit):
* src/sexpr.c (sexpr_new, _string2sexpr):
* src/storage_backend_disk.c (virStorageBackendDiskMakeDataVol)
(virStorageBackendDiskCreateVol):
* src/storage_backend_fs.c
(virStorageBackendFileSystemNetFindPoolSources):
* src/storage_backend_logical.c (virStorageBackendLogicalFindLVs)
(virStorageBackendLogicalFindPoolSources):
* src/test.c (testOpenDefault, testOpenFromFile, testOpen)
(testGetDomainInfo, testDomainRestore)
(testNodeGetCellsFreeMemory):
* src/util.c (virExec):
* src/virsh.c (cmdAttachDevice, cmdDetachDevice)
(cmdAttachInterface, cmdDetachInterface, cmdAttachDisk)
(cmdDetachDisk, cmdEdit):
* src/xend_internal.c (do_connect, wr_sync, xend_op_ext)
(urlencode, xenDaemonDomainCreateXML)
(xenDaemonDomainLookupByName_ids, xenDaemonDomainLookupByID)
(xenDaemonParseSxprOS, xend_parse_sexp_desc_char)
(xenDaemonParseSxprChar, xenDaemonParseSxprDisks)
(xenDaemonParseSxpr, sexpr_to_xend_topology, sexpr_to_domain)
(xenDaemonDomainFetch, xenDaemonDomainGetAutostart)
(xenDaemonDomainSetAutostart, xenDaemonDomainMigratePerform)
(xenDaemonDomainDefineXML, xenDaemonGetSchedulerType)
(xenDaemonGetSchedulerParameters)
(xenDaemonSetSchedulerParameters, xenDaemonDomainBlockPeek)
(xenDaemonFormatSxprChr, virDomainXMLDevID):
* src/xm_internal.c (xenXMConfigCacheRefresh, xenXMDomainPinVcpu)
(xenXMDomainCreate, xenXMDomainDefineXML)
(xenXMDomainAttachDevice, xenXMDomainDetachDevice):
* src/xml.c (virXPathString, virXPathNumber, virXPathLong)
(virXPathULong, virXPathBoolean, virXPathNode, virXPathNodeSet):
* src/xs_internal.c (xenStoreOpen):
2008-10-13 16:46:28 +00:00
Daniel P. Berrange
427f7a8b09
Switch domain device objects to array instead of linked list
2008-10-10 16:08:01 +00:00
Daniel Veillard
f6803c960f
virDomainDefineXML, and a few additional cleanups
...
* include/libvirt/libvirt.h[.in] include/libvirt/virterror.h
qemud/remote* src/driver.h src/libvirt.c src/libvirt_sym.version
src/lxc_driver.c src/openvz_driver.c src/proxy_internal.c
src/qemu_driver.c src/remote_internal.c src/test.c src/virsh.c
src/xen_internal.c src/xen_unified.c src/xen_unified.h
src/xend_internal.c src/xend_internal.h src/xm_internal.c
src/xs_internal.c docs/*: cleanup virDomainCreateLinux into
virDomainDefineXML, and a few additional cleanups
Daniel
2008-10-10 09:32:27 +00:00
Cole Robinson
02fc93d624
Centralize majority of error reporting logic.
2008-10-09 15:38:31 +00:00
Cole Robinson
e2a43cdb87
Move DEBUG macros to central location.
2008-10-06 19:53:06 +00:00
Daniel Veillard
3bc324139e
Xen interface order and fix python parallel build
...
* src/xend_internal.c: fix ordering when parsing multiple Xen
interfaces, patch by Jim Fehlig
* python/Makefile.am: fix parallel build
Daniel
2008-10-01 15:31:02 +00:00
Cole Robinson
a82bd0784b
Fix reading vncdisplay from xend, add several test cases for xen vnc corner case
...
s.
2008-09-09 13:53:58 +00:00
Daniel Veillard
18626bd225
when dumping code don't keep Xen domain live
...
* src/xend_internal.c: patch from John Levon shutting down a live
domain is just more hazardous
Daniel
2008-09-04 09:11:37 +00:00
Daniel Veillard
584ff19452
* src/xend_internal.c src/xs_internal.c: use poweroff instead of halt
...
when shutting down a xen domain, patch by John Levon
Daniel
2008-09-04 09:07:42 +00:00
Daniel P. Berrange
8f762e34f3
Fix lookup of xen VM after define (Cole Robinson)
2008-08-28 11:59:07 +00:00
Daniel P. Berrange
bb16f4a25d
Do conditional driver config in Makefile.am, not source files
2008-08-20 20:48:35 +00:00
Chris Lalancette
b8fb68be37
DanB pointed out that my sexpr xend_internal patch from yesterday broke one of
...
the regression tests. The problem is that the xenDaemonFormatSxpr{Disk,Net}
functions are shared between domain creation time and attaching disk time.
Unfortunately, though, Xend expects something different during these two times.
During domain creation time, it wants the "(device" in front of the sexpr,
while during attach time it does not. To remedy this situation, I added a flag
to these two functions to differentiate between these two modes. With this
patch in place, all of the regression tests pass.
Signed-off-by: Chris Lalancette <clalance@redhat.com>
2008-08-06 11:26:47 +00:00
Chris Lalancette
6335c2a0cc
With the recent refactoring of the domain code, plus the changes with the Xend
...
code, a couple of bugs were introduced into the attach-disk and attach-interface
functionality. This patch fixes 3 bugs:
1) In xenDaemonAttachDevice(), there is a switch statement to determine which
of the xenDaemonFormatSxpr{Disk,Net} functions to call. Unfortunately, the case
statements are all missing the corresponding "break", so we always fall-through
to the default error case. This patch just adds the appropriate break statements.
2) (minor) In xenDaemonDomainDefineXML (that's a mouthful!), there is a stray
"fprintf". This is now converted to a proper virXendError().
3) xenDaemonFormatSxpr{Disk,Net} were adding an extra (device to the front of
the sexpr expressions that xend did not expect (this is Xend on RHEL 5.2).
Because of this, the attaches would fail. The patch fixes this by removing the
(device from the front, which makes attach-disk and attach-interface work again.
Signed-off-by: Chris Lalancette <clalance@redhat.com>
2008-08-05 16:45:07 +00:00
Atsushi SAKAI
adc1d93f97
fix syntax-check error (replace TAB to space)
2008-08-04 06:33:25 +00:00
Jim Meyering
deefaf1891
src/xend_internal.c (xenDaemonParseSxpr): Add const to "root" parameter.
...
This piece was mistakenly omitted from the previous patch.
2008-08-01 15:32:28 +00:00
Jim Meyering
07f8a8b34a
xend_internal.c, sexpr.c: const-correctness fixes
2008-08-01 14:43:12 +00:00
Daniel P. Berrange
cb29913fb1
Switch XM config file driver to use new domain APIs for XML to config conversion
2008-07-25 14:10:49 +00:00
Daniel P. Berrange
547bd71a4a
Switch XM config file driver to use new domain APIs for XML generation
2008-07-25 13:50:08 +00:00
Daniel P. Berrange
8c6f5a546b
Convert XenD XML->SEXPR conversion to new domain XML APIs
2008-07-25 13:17:27 +00:00
Daniel P. Berrange
31ac8125b8
Convert XenD SEXPR->XML convesion to new domain XML APIs
2008-07-25 10:49:33 +00:00
Daniel P. Berrange
d9383fe158
Remove unused/no-op Xen driver code
2008-07-25 09:51:23 +00:00
Daniel Veillard
1ec7cccbd3
fix a couple of List functions for max = 0 issues
...
* src/xen_internal.c src/xend_internal.c: fix a couple of issues
for List functions where max given is 0
Daniel
2008-06-19 14:39:49 +00:00
Richard W.M. Jones
787e44a1d0
Better error messages in xend driver.
...
* src/xend_internal.c: Change virXendError function to take
varargs. Better error messages throughout.
2008-06-09 12:16:03 +00:00
Daniel P. Berrange
d789ef5a88
Switch over remaining driver code to use memory alloc apis
2008-06-06 11:09:57 +00:00
Richard W.M. Jones
a73a88a19f
virDomainBlockPeek QEMU and remote support
...
* qemud/remote.c, qemud/remote_protocol.x, src/remote_internal.c:
Remote support.
* qemud/remote_dispatch_localvars.h,
qemud/remote_dispatch_proc_switch.h,
qemud/remote_dispatch_prototypes.h,
qemud/remote_protocol.c,
qemud/remote_protocol.h:
Generated files for remote support.
* src/xen_unified.c, src/driver.h, src/libvirt.c: Small fix -
pass flags around internally.
* src/qemu_driver.c: Support for QEMU.
* src/xend_internal.c: Remove redundant fstat call from Xen.
2008-06-05 21:12:26 +00:00
Richard W.M. Jones
8354895e68
virDomainBlockPeek call
...
* configure.in: Document AC_SYS_LARGEFILE.
* docs/hvsupport.html.in: Document HV support for virDomainBlockPeek.
* include/libvirt/libvirt.h.in, src/driver.h, src/libvirt.c,
src/libvirt_sym.version: Add virDomainBlockPeek infrastructure.
* src/qemu_driver.c, src/test.c: Null versions of this call.
* src/xen_unified.c, src/xend_internal.c, src/xend_internal.h,
src/xm_internal.c, src/xm_internal.h: Xen implementation.
* tests/sexpr2xmldata/sexpr2xml-curmem.xml,
tests/sexpr2xmldata/sexpr2xml-no-source-cdrom.xml: XML output
has been reordered slightly in the Xen driver, but should be
functionally the same.
2008-06-05 13:17:45 +00:00
Daniel P. Berrange
895d0fdf5b
Convert to use new memory allocation APIs
2008-05-29 19:20:22 +00:00
Daniel P. Berrange
489da1c4b1
Fix missing check for memory allocation failure
2008-05-29 18:45:07 +00:00
Richard W.M. Jones
1d8d4f86b6
Standardize use of header files, making internal.h primary.
...
* qemud/internal.h, qemud/qemud.h: Rename this file so it
doesn't conflict with src/internal.h.
* HACKING: Document how header files should be used.
* qemud/Makefile.am: Add src/ directory to includes.
* qemud/event.c, qemud/mdns.c, qemud/qemud.c, qemud/remote.c,
qemud/remote_protocol.c, qemud/remote_protocol.h,
qemud/remote_protocol.x, src/buf.c, src/libvirt.c,
src/nodeinfo.c, src/qemu_conf.c, src/qemu_driver.c,
src/stats_linux.c, src/storage_backend.c, src/storage_backend_fs.c,
src/storage_backend_iscsi.c, src/storage_backend_logical.c,
src/storage_conf.c, src/storage_driver.c, src/util.c,
src/util.h, src/virsh.c, src/virterror.c, src/xend_internal.c,
src/xml.c, tests/reconnect.c, tests/xmlrpctest.c,
tests/qparamtest.c: Standardize use of header files.
* docs/*, po/*: Rebuild docs.
2008-05-23 08:24:41 +00:00
Jim Meyering
6049594045
avoid using STREQLEN with a literal; use STRPREFIX instead
...
Likewise for STRNEQLEN -> !STRPREFIX.
* src/nodeinfo.c (linuxNodeInfoCPUPopulate):
* src/qemu_conf.c (qemudNetworkIfaceConnect):
(qemudParseInterfaceXML):
* src/qemu_driver.c (qemudDomainBlockStats):
* src/remote_internal.c (call):
* src/stats_linux.c (xenLinuxDomainDeviceID):
* src/xend_internal.c (xend_parse_sexp_desc):
(xend_get, sexpr_to_xend_topology):
* src/xm_internal.c (xenXMConfigCacheRefresh)
(xenXMDomainFormatXML):
2008-05-15 14:21:34 +00:00
Daniel P. Berrange
1d73398e8f
Remove all use of strcmp, strncmp in favour of STREQ, STREQLEN, STRPREFIX
2008-05-14 19:51:24 +00:00
Jim Meyering
25534052bc
Use gnulib's c-ctype.h, not <ctype.h>.
...
# Convert uses of isspace to c_isspace, isdigit to c_isdigit, etc.
re=$(man isspace|grep is.....,.is|sed 's/ -.*//' \
|tr -s ', \n' \||sed 's/^|//;s/|$//')
git grep -l -E "$re"|grep -Ev 'Chan|gnulib' \
|xargs perl -pi -e 's/\b('"$re"')\b/c_$1/g'
# Remove all uses of to_uchar
git grep -l to_uchar|xargs perl -pi -e 's/to_uchar\((.*?)\)/$1/g'
* src/util.h (to_uchar): Remove definition.
(TOLOWER): Remove definition.
(__virMacAddrCompare): Use c_tolower, not TOLOWER.
Globally:
Where needed, change <ctype.h> to <c-ctype.h>.
Remove unnecessary inclusion of <ctype.h>.
Ensure the global changes are never needed again:
* Makefile.maint (sc_avoid_ctype_macros): Prohibit use of ctype
macros. Recommend c-ctype.h instead.
(sc_prohibit_c_ctype_without_use): New rule.
(sc_prohibit_ctype_h): New rule. Disallow use of <ctype.h>.
2008-05-09 13:50:14 +00:00
Daniel Veillard
5e1bd04692
autostart for running Xen domains
...
* src/xen_unified.c src/xend_internal.c src/xend_internal.h: patch
from Cole Robinson implementing autostart for running Xen domains
Daniel
2008-05-09 08:17:18 +00:00
Jim Meyering
712251009b
add "const" and "static" attributes to file-scoped globals
...
* src/storage_backend_fs.c (fileTypeInfo): Add "static" and two
"const" attributes.
(FileTypeInfo): Name the previously anonymous struct,
so the declaration of fileTypeInfo looks more conventional.
* src/xend_internal.c (sound_models): Mark as static, and
as an array of "const" entries.
These were relatively new additions to the list from here:
nm src/*.o|grep ' D '
2008-05-09 08:02:44 +00:00
Daniel P. Berrange
021bd31706
Added disk target bus type to Xen driver
2008-05-08 14:41:56 +00:00
Daniel P. Berrange
31b17e6d44
Disable sound functions when in proxy
2008-05-07 18:50:23 +00:00
Daniel Veillard
70f446631f
Sound support for QEmu and Xen
...
* src/qemu_conf.c src/qemu_conf.h src/xend_internal.c
src/xend_internal.h src/xm_internal.c src/xml.c src/xml.h:
Patch from Cole Robinson adding sound support for QEmu and Xen
* tests/qemuxml2argvtest.c tests/sexpr2xmltest.c
tests/xmconfigtest.c tests/xml2sexprtest.c:
Associated regression tests
Daniel
2008-05-07 14:04:40 +00:00
Daniel P. Berrange
159cb2b97c
Added support for network interface model setting
2008-04-30 12:30:55 +00:00
Daniel P. Berrange
642b26fab2
Change virBuffer API to prevent common usage errors. Update all users of APIs
2008-04-28 15:14:59 +00:00
Daniel P. Berrange
e6f1123819
Added full support for serial and parallel devices to Xen drivers
2008-04-26 14:22:02 +00:00
Jim Meyering
5bf824ea10
convert TAB-based indentation in C sources to use only spaces
...
Done using this command (also includes .c.in and .h.in files):
for i in $(g ls-files|grep -E '\.[ch](\.in)?$'|grep -v gnulib); do
expand -i $i > j && mv j $i;done
2008-04-10 16:54:54 +00:00
Jim Meyering
dc42a9d2de
remove Vim and Emacs variable settings from C source files
...
Done with these commands:
git grep -l Local.variab|xargs \
perl -0x3b -pi -e 's,\n+/\*\n \* vim:(.|\n)*,\n,'
git grep -l Local.variab|xargs \
perl -0x3b -pi -e 's,\n+/\*\n \* Local variables:\n(.|\n)*,\n,'
2008-04-10 16:53:29 +00:00
Daniel Veillard
c863713742
Ask xend to remove device in the config file too
...
* src/xend_internal.c: applied a patch from Ryan Scott to ask
xend to save the device removal change in the config file
Daniel
2008-04-10 13:30:17 +00:00