2012-04-10 13:42:47 +00:00
|
|
|
daemon/libvirtd-config.c
|
2009-09-16 16:26:27 +00:00
|
|
|
daemon/libvirtd.c
|
2011-05-05 16:31:58 +00:00
|
|
|
daemon/qemu_dispatch.h
|
2009-09-16 16:26:27 +00:00
|
|
|
daemon/remote.c
|
2011-06-28 19:38:27 +00:00
|
|
|
daemon/remote_dispatch.h
|
2009-08-24 19:53:48 +00:00
|
|
|
daemon/stream.c
|
2011-05-04 14:18:06 +00:00
|
|
|
gnulib/lib/gai_strerror.c
|
2012-04-04 10:56:04 +00:00
|
|
|
gnulib/lib/regcomp.c
|
2009-12-18 13:50:04 +00:00
|
|
|
src/conf/cpu_conf.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/conf/domain_conf.c
|
2010-01-13 18:11:33 +00:00
|
|
|
src/conf/domain_event.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/conf/interface_conf.c
|
Split src/util/network.{c,h} into 5 pieces
The src/util/network.c file is a dumping ground for many different
APIs. Split it up into 5 pieces, along functional lines
- src/util/virnetdevbandwidth.c: virNetDevBandwidth type & helper APIs
- src/util/virnetdevvportprofile.c: virNetDevVPortProfile type & helper APIs
- src/util/virsocketaddr.c: virSocketAddr and APIs
- src/conf/netdev_bandwidth_conf.c: XML parsing / formatting
for virNetDevBandwidth
- src/conf/netdev_vport_profile_conf.c: XML parsing / formatting
for virNetDevVPortProfile
* src/util/network.c, src/util/network.h: Split into 5 pieces
* src/conf/netdev_bandwidth_conf.c, src/conf/netdev_bandwidth_conf.h,
src/conf/netdev_vport_profile_conf.c, src/conf/netdev_vport_profile_conf.h,
src/util/virnetdevbandwidth.c, src/util/virnetdevbandwidth.h,
src/util/virnetdevvportprofile.c, src/util/virnetdevvportprofile.h,
src/util/virsocketaddr.c, src/util/virsocketaddr.h: New pieces
* daemon/libvirtd.h, daemon/remote.c, src/conf/domain_conf.c,
src/conf/domain_conf.h, src/conf/network_conf.c,
src/conf/network_conf.h, src/conf/nwfilter_conf.h,
src/esx/esx_util.h, src/network/bridge_driver.c,
src/qemu/qemu_conf.c, src/rpc/virnetsocket.c,
src/rpc/virnetsocket.h, src/util/dnsmasq.h, src/util/interface.h,
src/util/iptables.h, src/util/macvtap.c, src/util/macvtap.h,
src/util/virnetdev.h, src/util/virnetdevtap.c,
tools/virsh.c: Update include files
2011-11-02 15:40:08 +00:00
|
|
|
src/conf/netdev_bandwidth_conf.c
|
|
|
|
src/conf/netdev_vport_profile_conf.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/conf/network_conf.c
|
|
|
|
src/conf/node_device_conf.c
|
2010-03-25 17:46:07 +00:00
|
|
|
src/conf/nwfilter_conf.c
|
|
|
|
src/conf/nwfilter_params.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/conf/secret_conf.c
|
|
|
|
src/conf/storage_conf.c
|
|
|
|
src/conf/storage_encryption_conf.c
|
2011-11-25 15:25:14 +00:00
|
|
|
src/conf/virconsole.c
|
Adds CPU selection infrastructure
Each driver supporting CPU selection must fill in host CPU capabilities.
When filling them, drivers for hypervisors running on the same node as
libvirtd can use cpuNodeData() to obtain raw CPU data. Other drivers,
such as VMware, need to implement their own way of getting such data.
Raw data can be decoded into virCPUDefPtr using cpuDecode() function.
When implementing virConnectCompareCPU(), a hypervisor driver can just
call cpuCompareXML() function with host CPU capabilities.
For each guest for which a driver supports selecting CPU models, it must
set the appropriate feature in guest's capabilities:
virCapabilitiesAddGuestFeature(guest, "cpuselection", 1, 0)
Actions needed when a domain is being created depend on whether the
hypervisor understands raw CPU data (currently CPUID for i686, x86_64
architectures) or symbolic names has to be used.
Typical use by hypervisors which prefer CPUID (such as VMware and Xen):
- convert guest CPU configuration from domain's XML into a set of raw
data structures each representing one of the feature policies:
cpuEncode(conn, architecture, guest_cpu_config,
&forced_data, &required_data, &optional_data,
&disabled_data, &forbidden_data)
- create a mask or whatever the hypervisor expects to see and pass it
to the hypervisor
Typical use by hypervisors with symbolic model names (such as QEMU):
- get raw CPU data for a computed guest CPU:
cpuGuestData(conn, host_cpu, guest_cpu_config, &data)
- decode raw data into virCPUDefPtr with a possible restriction on
allowed model names:
cpuDecode(conn, guest, data, n_allowed_models, allowed_models)
- pass guest->model and guest->features to the hypervisor
* src/cpu/cpu.c src/cpu/cpu.h src/cpu/cpu_generic.c
src/cpu/cpu_generic.h src/cpu/cpu_map.c src/cpu/cpu_map.h
src/cpu/cpu_x86.c src/cpu/cpu_x86.h src/cpu/cpu_x86_data.h
* configure.in: check for CPUID instruction
* src/Makefile.am: glue the new files in
* src/libvirt_private.syms: add new private symbols
* po/POTFILES.in: add new cpu files containing translatable strings
2009-12-18 15:02:11 +00:00
|
|
|
src/cpu/cpu.c
|
2010-02-11 15:27:14 +00:00
|
|
|
src/cpu/cpu_generic.c
|
Adds CPU selection infrastructure
Each driver supporting CPU selection must fill in host CPU capabilities.
When filling them, drivers for hypervisors running on the same node as
libvirtd can use cpuNodeData() to obtain raw CPU data. Other drivers,
such as VMware, need to implement their own way of getting such data.
Raw data can be decoded into virCPUDefPtr using cpuDecode() function.
When implementing virConnectCompareCPU(), a hypervisor driver can just
call cpuCompareXML() function with host CPU capabilities.
For each guest for which a driver supports selecting CPU models, it must
set the appropriate feature in guest's capabilities:
virCapabilitiesAddGuestFeature(guest, "cpuselection", 1, 0)
Actions needed when a domain is being created depend on whether the
hypervisor understands raw CPU data (currently CPUID for i686, x86_64
architectures) or symbolic names has to be used.
Typical use by hypervisors which prefer CPUID (such as VMware and Xen):
- convert guest CPU configuration from domain's XML into a set of raw
data structures each representing one of the feature policies:
cpuEncode(conn, architecture, guest_cpu_config,
&forced_data, &required_data, &optional_data,
&disabled_data, &forbidden_data)
- create a mask or whatever the hypervisor expects to see and pass it
to the hypervisor
Typical use by hypervisors with symbolic model names (such as QEMU):
- get raw CPU data for a computed guest CPU:
cpuGuestData(conn, host_cpu, guest_cpu_config, &data)
- decode raw data into virCPUDefPtr with a possible restriction on
allowed model names:
cpuDecode(conn, guest, data, n_allowed_models, allowed_models)
- pass guest->model and guest->features to the hypervisor
* src/cpu/cpu.c src/cpu/cpu.h src/cpu/cpu_generic.c
src/cpu/cpu_generic.h src/cpu/cpu_map.c src/cpu/cpu_map.h
src/cpu/cpu_x86.c src/cpu/cpu_x86.h src/cpu/cpu_x86_data.h
* configure.in: check for CPUID instruction
* src/Makefile.am: glue the new files in
* src/libvirt_private.syms: add new private symbols
* po/POTFILES.in: add new cpu files containing translatable strings
2009-12-18 15:02:11 +00:00
|
|
|
src/cpu/cpu_map.c
|
|
|
|
src/cpu/cpu_x86.c
|
2008-11-04 23:22:06 +00:00
|
|
|
src/datatypes.c
|
2010-05-20 06:59:01 +00:00
|
|
|
src/driver.c
|
2010-04-02 19:34:31 +00:00
|
|
|
src/esx/esx_driver.c
|
2010-05-18 16:11:59 +00:00
|
|
|
src/esx/esx_storage_driver.c
|
2010-04-02 19:34:31 +00:00
|
|
|
src/esx/esx_util.c
|
|
|
|
src/esx/esx_vi.c
|
|
|
|
src/esx/esx_vi_methods.c
|
|
|
|
src/esx/esx_vi_types.c
|
2010-09-22 18:32:21 +00:00
|
|
|
src/fdstream.c
|
2011-07-13 14:47:01 +00:00
|
|
|
src/hyperv/hyperv_driver.c
|
2011-07-13 15:16:47 +00:00
|
|
|
src/hyperv/hyperv_util.c
|
2011-07-13 15:05:19 +00:00
|
|
|
src/hyperv/hyperv_wmi.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/interface/netcf_driver.c
|
2010-04-16 17:21:10 +00:00
|
|
|
src/internal.h
|
2008-01-29 18:19:46 +00:00
|
|
|
src/libvirt.c
|
Santize the reporting of VIR_ERR_INVALID_ERROR
To ensure consistent error reporting of invalid arguments,
provide a number of predefined helper methods & macros.
- An arg which must not be NULL:
virCheckNonNullArgReturn(argname, retvalue)
virCheckNonNullArgGoto(argname, label)
- An arg which must be NULL
virCheckNullArgGoto(argname, label)
- An arg which must be positive (ie 1 or greater)
virCheckPositiveArgGoto(argname, label)
- An arg which must not be 0
virCheckNonZeroArgGoto(argname, label)
- An arg which must be zero
virCheckZeroArgGoto(argname, label)
- An arg which must not be negative (ie 0 or greater)
virCheckNonNegativeArgGoto(argname, label)
* src/libvirt.c, src/libvirt-qemu.c,
src/nodeinfo.c, src/datatypes.c: Update to use
virCheckXXXX macros
* po/POTFILES.in: Add libvirt-qemu.c and virterror_internal.h
* src/internal.h: Define macros for checking invalid args
* src/util/virterror_internal.h: Define macros for reporting
invalid args
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2012-05-25 17:41:07 +00:00
|
|
|
src/libvirt-qemu.c
|
2011-01-18 18:37:45 +00:00
|
|
|
src/locking/lock_driver_sanlock.c
|
2010-09-13 13:02:58 +00:00
|
|
|
src/locking/lock_manager.c
|
2012-07-13 11:21:27 +00:00
|
|
|
src/lxc/lxc_cgroup.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/lxc/lxc_container.c
|
2010-05-25 14:33:51 +00:00
|
|
|
src/lxc/lxc_conf.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/lxc/lxc_controller.c
|
|
|
|
src/lxc/lxc_driver.c
|
2012-07-13 11:39:29 +00:00
|
|
|
src/lxc/lxc_process.c
|
2011-02-10 22:42:34 +00:00
|
|
|
src/libxl/libxl_driver.c
|
|
|
|
src/libxl/libxl_conf.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/network/bridge_driver.c
|
|
|
|
src/node_device/node_device_driver.c
|
2010-05-20 06:59:01 +00:00
|
|
|
src/node_device/node_device_hal.c
|
2009-11-12 21:48:24 +00:00
|
|
|
src/node_device/node_device_linux_sysfs.c
|
|
|
|
src/node_device/node_device_udev.c
|
2009-01-20 17:13:33 +00:00
|
|
|
src/nodeinfo.c
|
2012-06-01 23:32:06 +00:00
|
|
|
src/nwfilter/nwfilter_dhcpsnoop.c
|
2010-03-25 17:46:09 +00:00
|
|
|
src/nwfilter/nwfilter_driver.c
|
|
|
|
src/nwfilter/nwfilter_ebiptables_driver.c
|
|
|
|
src/nwfilter/nwfilter_gentech_driver.c
|
2010-04-08 11:01:00 +00:00
|
|
|
src/nwfilter/nwfilter_learnipaddr.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/openvz/openvz_conf.c
|
|
|
|
src/openvz/openvz_driver.c
|
2012-05-15 15:27:08 +00:00
|
|
|
src/openvz/openvz_util.c
|
2009-07-26 21:53:34 +00:00
|
|
|
src/phyp/phyp_driver.c
|
2011-10-05 17:31:54 +00:00
|
|
|
src/qemu/qemu_agent.c
|
2009-11-03 22:41:23 +00:00
|
|
|
src/qemu/qemu_bridge_filter.c
|
2010-12-16 15:07:07 +00:00
|
|
|
src/qemu/qemu_capabilities.c
|
2010-12-16 16:10:54 +00:00
|
|
|
src/qemu/qemu_cgroup.c
|
2010-12-16 15:07:07 +00:00
|
|
|
src/qemu/qemu_command.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/qemu/qemu_conf.c
|
2010-12-16 15:23:41 +00:00
|
|
|
src/qemu/qemu_domain.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/qemu/qemu_driver.c
|
2010-12-16 16:10:54 +00:00
|
|
|
src/qemu/qemu_hostdev.c
|
2010-12-16 16:10:54 +00:00
|
|
|
src/qemu/qemu_hotplug.c
|
2011-01-31 10:47:03 +00:00
|
|
|
src/qemu/qemu_migration.c
|
2009-10-09 18:07:55 +00:00
|
|
|
src/qemu/qemu_monitor.c
|
2009-11-03 18:59:18 +00:00
|
|
|
src/qemu/qemu_monitor_json.c
|
2009-09-22 17:48:40 +00:00
|
|
|
src/qemu/qemu_monitor_text.c
|
2011-02-14 16:09:39 +00:00
|
|
|
src/qemu/qemu_process.c
|
2011-05-04 14:18:06 +00:00
|
|
|
src/remote/remote_client_bodies.h
|
2009-09-16 16:26:27 +00:00
|
|
|
src/remote/remote_driver.c
|
2011-09-22 11:40:00 +00:00
|
|
|
src/rpc/virkeepalive.c
|
2010-12-01 16:35:50 +00:00
|
|
|
src/rpc/virnetclient.c
|
|
|
|
src/rpc/virnetclientprogram.c
|
|
|
|
src/rpc/virnetclientstream.c
|
2010-12-06 17:03:22 +00:00
|
|
|
src/rpc/virnetmessage.c
|
2010-12-10 12:21:18 +00:00
|
|
|
src/rpc/virnetsaslcontext.c
|
2010-12-06 17:03:35 +00:00
|
|
|
src/rpc/virnetsocket.c
|
2010-12-01 16:36:40 +00:00
|
|
|
src/rpc/virnetserver.c
|
|
|
|
src/rpc/virnetserverclient.c
|
2011-03-02 17:11:42 +00:00
|
|
|
src/rpc/virnetservermdns.c
|
2010-12-01 16:36:40 +00:00
|
|
|
src/rpc/virnetserverprogram.c
|
2010-11-23 20:17:41 +00:00
|
|
|
src/rpc/virnettlscontext.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/secret/secret_driver.c
|
2009-10-08 14:34:22 +00:00
|
|
|
src/security/security_apparmor.c
|
Refactor the security drivers to simplify usage
The current security driver usage requires horrible code like
if (driver->securityDriver &&
driver->securityDriver->domainSetSecurityHostdevLabel &&
driver->securityDriver->domainSetSecurityHostdevLabel(driver->securityDriver,
vm, hostdev) < 0)
This pair of checks for NULL clutters up the code, making the driver
calls 2 lines longer than they really need to be. The goal of the
patchset is to change the calling convention to simply
if (virSecurityManagerSetHostdevLabel(driver->securityDriver,
vm, hostdev) < 0)
The first check for 'driver->securityDriver' being NULL is removed
by introducing a 'no op' security driver that will always be present
if no real driver is enabled. This guarentees driver->securityDriver
!= NULL.
The second check for 'driver->securityDriver->domainSetSecurityHostdevLabel'
being non-NULL is hidden in a new abstraction called virSecurityManager.
This separates the driver callbacks, from main internal API. The addition
of a virSecurityManager object, that is separate from the virSecurityDriver
struct also allows for security drivers to carry state / configuration
information directly. Thus the DAC/Stack drivers from src/qemu which
used to pull config from 'struct qemud_driver' can now be moved into
the 'src/security' directory and store their config directly.
* src/qemu/qemu_conf.h, src/qemu/qemu_driver.c: Update to
use new virSecurityManager APIs
* src/qemu/qemu_security_dac.c, src/qemu/qemu_security_dac.h
src/qemu/qemu_security_stacked.c, src/qemu/qemu_security_stacked.h:
Move into src/security directory
* src/security/security_stack.c, src/security/security_stack.h,
src/security/security_dac.c, src/security/security_dac.h: Generic
versions of previous QEMU specific drivers
* src/security/security_apparmor.c, src/security/security_apparmor.h,
src/security/security_driver.c, src/security/security_driver.h,
src/security/security_selinux.c, src/security/security_selinux.h:
Update to take virSecurityManagerPtr object as the first param
in all callbacks
* src/security/security_nop.c, src/security/security_nop.h: Stub
implementation of all security driver APIs.
* src/security/security_manager.h, src/security/security_manager.c:
New internal API for invoking security drivers
* src/libvirt.c: Add missing debug for security APIs
2010-11-17 20:26:30 +00:00
|
|
|
src/security/security_dac.c
|
2010-05-20 06:59:01 +00:00
|
|
|
src/security/security_driver.c
|
Add two new security label types
Curently security labels can be of type 'dynamic' or 'static'.
If no security label is given, then 'dynamic' is assumed. The
current code takes advantage of this default, and avoids even
saving <seclabel> elements with type='dynamic' to disk. This
means if you temporarily change security driver, the guests
can all still start.
With the introduction of sVirt to LXC though, there needs to be
a new default of 'none' to allow unconfined LXC containers.
This patch introduces two new security label types
- default: the host configuration decides whether to run the
guest with type 'none' or 'dynamic' at guest start
- none: the guest will run unconfined by security policy
The 'none' label type will obviously be undesirable for some
deployments, so a new qemu.conf option allows a host admin to
mandate confined guests. It is also possible to turn off default
confinement
security_default_confined = 1|0 (default == 1)
security_require_confined = 1|0 (default == 0)
* src/conf/domain_conf.c, src/conf/domain_conf.h: Add new
seclabel types
* src/security/security_manager.c, src/security/security_manager.h:
Set default sec label types
* src/security/security_selinux.c: Handle 'none' seclabel type
* src/qemu/qemu.conf, src/qemu/qemu_conf.c, src/qemu/qemu_conf.h,
src/qemu/libvirtd_qemu.aug: New security config options
* src/qemu/qemu_driver.c: Tell security driver about default
config
2012-01-25 14:12:52 +00:00
|
|
|
src/security/security_manager.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/security/security_selinux.c
|
2009-10-08 14:34:22 +00:00
|
|
|
src/security/virt-aa-helper.c
|
2010-11-16 19:01:37 +00:00
|
|
|
src/storage/parthelper.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/storage/storage_backend.c
|
|
|
|
src/storage/storage_backend_disk.c
|
|
|
|
src/storage/storage_backend_fs.c
|
|
|
|
src/storage/storage_backend_iscsi.c
|
|
|
|
src/storage/storage_backend_logical.c
|
|
|
|
src/storage/storage_backend_mpath.c
|
2012-05-14 09:06:42 +00:00
|
|
|
src/storage/storage_backend_rbd.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/storage/storage_backend_scsi.c
|
2012-07-18 19:06:58 +00:00
|
|
|
src/storage/storage_backend_sheepdog.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/storage/storage_driver.c
|
|
|
|
src/test/test_driver.c
|
|
|
|
src/uml/uml_conf.c
|
|
|
|
src/uml/uml_driver.c
|
2010-05-20 06:59:01 +00:00
|
|
|
src/util/cgroup.c
|
2010-05-25 11:14:06 +00:00
|
|
|
src/util/command.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/util/conf.c
|
2010-04-26 13:56:03 +00:00
|
|
|
src/util/dnsmasq.c
|
2011-03-02 16:59:54 +00:00
|
|
|
src/util/event_poll.c
|
2010-03-26 14:49:45 +00:00
|
|
|
src/util/hooks.c
|
2010-01-11 16:40:46 +00:00
|
|
|
src/util/hostusb.c
|
2011-02-22 12:05:20 +00:00
|
|
|
src/util/iohelper.c
|
Convert virNetwork to use virSocketAddr everywhere
Instead of storing the IP address string in virNetwork related
structs, store the parsed virSocketAddr. This will make it
easier to add IPv6 support in the future, by letting driver
code directly check what address family is present
* src/conf/network_conf.c, src/conf/network_conf.h,
src/network/bridge_driver.c: Convert to use virSocketAddr
in virNetwork, instead of char *.
* src/util/bridge.c, src/util/bridge.h,
src/util/dnsmasq.c, src/util/dnsmasq.h,
src/util/iptables.c, src/util/iptables.h: Convert to
take a virSocketAddr instead of char * for any IP
address parameters
* src/util/network.h: Add macros to determine if an address
is set, and what address family is set.
2010-10-21 12:14:33 +00:00
|
|
|
src/util/iptables.c
|
2009-11-03 18:59:18 +00:00
|
|
|
src/util/json.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/util/pci.c
|
2009-11-16 15:22:34 +00:00
|
|
|
src/util/processinfo.c
|
2011-05-27 13:48:47 +00:00
|
|
|
src/util/sexpr.c
|
2010-02-04 23:02:10 +00:00
|
|
|
src/util/stats_linux.c
|
2009-09-30 12:12:03 +00:00
|
|
|
src/util/storage_file.c
|
2010-11-05 14:22:13 +00:00
|
|
|
src/util/sysinfo.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/util/util.c
|
2011-07-11 19:42:15 +00:00
|
|
|
src/util/viraudit.c
|
2012-03-19 16:21:12 +00:00
|
|
|
src/util/virauth.c
|
2012-03-20 15:40:05 +00:00
|
|
|
src/util/virauthconfig.c
|
2012-04-19 14:34:35 +00:00
|
|
|
src/util/virdbus.c
|
2011-07-11 21:26:33 +00:00
|
|
|
src/util/virfile.c
|
2012-01-25 16:13:59 +00:00
|
|
|
src/util/virhash.c
|
2012-03-16 16:29:49 +00:00
|
|
|
src/util/virkeyfile.c
|
Split bridge.h into three separate files
Following the renaming of the bridge management APIs, we can now
split the source file into 3 corresponding pieces
* src/util/virnetdev.c: APIs for any type of network interface
* src/util/virnetdevbridge.c: APIs for bridge interfaces
* src/util/virnetdevtap.c: APIs for TAP interfaces
* src/util/virnetdev.c, src/util/virnetdev.h,
src/util/virnetdevbridge.c, src/util/virnetdevbridge.h,
src/util/virnetdevtap.c, src/util/virnetdevtap.h: Copied
from bridge.{c,h}
* src/util/bridge.c, src/util/bridge.h: Split into 3 pieces
* src/lxc/lxc_driver.c, src/network/bridge_driver.c,
src/openvz/openvz_driver.c, src/qemu/qemu_command.c,
src/qemu/qemu_conf.h, src/uml/uml_conf.c, src/uml/uml_conf.h,
src/uml/uml_driver.c: Update #include directives
2011-11-02 13:41:58 +00:00
|
|
|
src/util/virnetdev.c
|
|
|
|
src/util/virnetdevbridge.c
|
2011-11-02 17:11:02 +00:00
|
|
|
src/util/virnetdevmacvlan.c
|
2012-02-10 21:09:00 +00:00
|
|
|
src/util/virnetdevopenvswitch.c
|
Split bridge.h into three separate files
Following the renaming of the bridge management APIs, we can now
split the source file into 3 corresponding pieces
* src/util/virnetdev.c: APIs for any type of network interface
* src/util/virnetdevbridge.c: APIs for bridge interfaces
* src/util/virnetdevtap.c: APIs for TAP interfaces
* src/util/virnetdev.c, src/util/virnetdev.h,
src/util/virnetdevbridge.c, src/util/virnetdevbridge.h,
src/util/virnetdevtap.c, src/util/virnetdevtap.h: Copied
from bridge.{c,h}
* src/util/bridge.c, src/util/bridge.h: Split into 3 pieces
* src/lxc/lxc_driver.c, src/network/bridge_driver.c,
src/openvz/openvz_driver.c, src/qemu/qemu_command.c,
src/qemu/qemu_conf.h, src/uml/uml_conf.c, src/uml/uml_conf.h,
src/uml/uml_driver.c: Update #include directives
2011-11-02 13:41:58 +00:00
|
|
|
src/util/virnetdevtap.c
|
2011-11-02 17:11:02 +00:00
|
|
|
src/util/virnetdevvportprofile.c
|
2012-02-03 14:13:19 +00:00
|
|
|
src/util/virnetlink.c
|
Implement the core API to suspend/resume the host
Add the core functions that implement the functionality of the API.
Suspend is done by using an asynchronous mechanism so that we can return
the status to the caller before the host gets suspended. This asynchronous
operation is achieved by suspending the host in a separate thread of
execution. However, returning the status to the caller is only best-effort,
but not guaranteed.
To resume the host, an RTC alarm is set up (based on how long we want to
suspend) before suspending the host. When this alarm fires, the host
gets woken up.
Suspend-to-RAM operation on a host running Linux can take upto more than 20
seconds, depending on the load of the system. (Freezing of tasks, an operation
preceding any suspend operation, is given up after a 20 second timeout).
And Suspend-to-Disk can take even more time, considering the time required
for compaction, creating the memory image and writing it to disk etc.
So, we do not allow the user to specify a suspend duration of less than 60
seconds, to be on the safer side, since we don't want to prematurely declare
failure when we only had to wait for some more time.
2011-11-29 09:07:38 +00:00
|
|
|
src/util/virnodesuspend.c
|
2011-07-06 16:12:26 +00:00
|
|
|
src/util/virpidfile.c
|
2012-02-10 04:51:47 +00:00
|
|
|
src/util/virrandom.c
|
Split src/util/network.{c,h} into 5 pieces
The src/util/network.c file is a dumping ground for many different
APIs. Split it up into 5 pieces, along functional lines
- src/util/virnetdevbandwidth.c: virNetDevBandwidth type & helper APIs
- src/util/virnetdevvportprofile.c: virNetDevVPortProfile type & helper APIs
- src/util/virsocketaddr.c: virSocketAddr and APIs
- src/conf/netdev_bandwidth_conf.c: XML parsing / formatting
for virNetDevBandwidth
- src/conf/netdev_vport_profile_conf.c: XML parsing / formatting
for virNetDevVPortProfile
* src/util/network.c, src/util/network.h: Split into 5 pieces
* src/conf/netdev_bandwidth_conf.c, src/conf/netdev_bandwidth_conf.h,
src/conf/netdev_vport_profile_conf.c, src/conf/netdev_vport_profile_conf.h,
src/util/virnetdevbandwidth.c, src/util/virnetdevbandwidth.h,
src/util/virnetdevvportprofile.c, src/util/virnetdevvportprofile.h,
src/util/virsocketaddr.c, src/util/virsocketaddr.h: New pieces
* daemon/libvirtd.h, daemon/remote.c, src/conf/domain_conf.c,
src/conf/domain_conf.h, src/conf/network_conf.c,
src/conf/network_conf.h, src/conf/nwfilter_conf.h,
src/esx/esx_util.h, src/network/bridge_driver.c,
src/qemu/qemu_conf.c, src/rpc/virnetsocket.c,
src/rpc/virnetsocket.h, src/util/dnsmasq.h, src/util/interface.h,
src/util/iptables.h, src/util/macvtap.c, src/util/macvtap.h,
src/util/virnetdev.h, src/util/virnetdevtap.c,
tools/virsh.c: Update include files
2011-11-02 15:40:08 +00:00
|
|
|
src/util/virsocketaddr.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/util/virterror.c
|
Santize the reporting of VIR_ERR_INVALID_ERROR
To ensure consistent error reporting of invalid arguments,
provide a number of predefined helper methods & macros.
- An arg which must not be NULL:
virCheckNonNullArgReturn(argname, retvalue)
virCheckNonNullArgGoto(argname, label)
- An arg which must be NULL
virCheckNullArgGoto(argname, label)
- An arg which must be positive (ie 1 or greater)
virCheckPositiveArgGoto(argname, label)
- An arg which must not be 0
virCheckNonZeroArgGoto(argname, label)
- An arg which must be zero
virCheckZeroArgGoto(argname, label)
- An arg which must not be negative (ie 0 or greater)
virCheckNonNegativeArgGoto(argname, label)
* src/libvirt.c, src/libvirt-qemu.c,
src/nodeinfo.c, src/datatypes.c: Update to use
virCheckXXXX macros
* po/POTFILES.in: Add libvirt-qemu.c and virterror_internal.h
* src/internal.h: Define macros for checking invalid args
* src/util/virterror_internal.h: Define macros for reporting
invalid args
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2012-05-25 17:41:07 +00:00
|
|
|
src/util/virterror_internal.h
|
2011-11-29 12:11:01 +00:00
|
|
|
src/util/virtime.c
|
2012-01-02 22:03:19 +00:00
|
|
|
src/util/virtypedparam.c
|
2012-07-18 10:44:24 +00:00
|
|
|
src/util/viruri.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/util/xml.c
|
2010-12-14 22:07:57 +00:00
|
|
|
src/vbox/vbox_MSCOMGlue.c
|
2010-10-22 19:25:03 +00:00
|
|
|
src/vbox/vbox_XPCOMCGlue.c
|
2009-05-12 20:44:29 +00:00
|
|
|
src/vbox/vbox_driver.c
|
2009-04-21 19:13:23 +00:00
|
|
|
src/vbox/vbox_tmpl.c
|
2010-12-17 10:28:20 +00:00
|
|
|
src/vmware/vmware_conf.c
|
|
|
|
src/vmware/vmware_driver.c
|
2010-12-21 21:39:55 +00:00
|
|
|
src/vmx/vmx.c
|
2011-04-16 09:30:40 +00:00
|
|
|
src/xen/block_stats.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/xen/xen_driver.c
|
|
|
|
src/xen/xen_hypervisor.c
|
|
|
|
src/xen/xen_inotify.c
|
2010-05-20 06:59:01 +00:00
|
|
|
src/xen/xend_internal.c
|
2009-09-16 16:26:27 +00:00
|
|
|
src/xen/xm_internal.c
|
|
|
|
src/xen/xs_internal.c
|
2010-03-31 10:24:25 +00:00
|
|
|
src/xenapi/xenapi_driver.c
|
2010-03-16 18:32:05 +00:00
|
|
|
src/xenapi/xenapi_utils.c
|
2011-02-21 13:40:08 +00:00
|
|
|
src/xenxs/xen_sxpr.c
|
2011-02-21 13:40:10 +00:00
|
|
|
src/xenxs/xen_xm.c
|
2009-09-16 16:26:27 +00:00
|
|
|
tools/console.c
|
2011-11-18 17:36:35 +00:00
|
|
|
tools/libvirt-guests.init.sh
|
2009-09-16 16:26:27 +00:00
|
|
|
tools/virsh.c
|
2012-07-24 08:24:50 +00:00
|
|
|
tools/virsh-domain-monitor.c
|
2012-07-25 15:37:18 +00:00
|
|
|
tools/virsh-domain.c
|
2012-05-17 15:08:53 +00:00
|
|
|
tools/virsh-edit.c
|
2012-07-24 08:56:49 +00:00
|
|
|
tools/virsh-interface.c
|
2012-07-23 06:02:14 +00:00
|
|
|
tools/virsh-network.c
|
2012-07-23 06:15:55 +00:00
|
|
|
tools/virsh-nwfilter.c
|
2012-07-24 08:49:27 +00:00
|
|
|
tools/virsh-pool.c
|
2012-07-24 08:44:49 +00:00
|
|
|
tools/virsh-volume.c
|
2012-01-10 17:31:21 +00:00
|
|
|
tools/virt-host-validate-common.c
|
|
|
|
tools/virt-host-validate-lxc.c
|
|
|
|
tools/virt-host-validate-qemu.c
|
|
|
|
tools/virt-host-validate.c
|