- 27 6月, 2018 5 次提交
-
-
由 Daniel P. Berrangé 提交于
Remove the callbacks that the nwfilter driver registers with the domain object config layer. Instead make the current helper methods call into the public API for creating/deleting nwfilter bindings. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
This allows the virsh commands nwfilter-binding-create and nwfilter-binding-delete to be used. Note using these commands lets you delete filters that were previously created automatically by the virt drivers, or add filters for VM nics that were not there before. Generally it is expected these new APIs will only be used by virt drivers. It is the admin's responsibility to not shoot themselves in the foot. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Wire up the ListAll, LookupByPortDev and GetXMLDesc APIs to allow the virsh nwfilter-binding-list & nwfilter-binding-dumpxml commands to work. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Now that the nwfilter driver keeps a list of bindings that it has created, there is no need for the complex virt driver callbacks. It is possible to simply iterate of the list of recorded filter bindings. This means that rebuilding filters no longer has to acquire any locks on the virDomainObj objects, as they're never touched. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Currently the nwfilter driver does not keep any record of what filter bindings it has active. This means that when it needs to recreate filters, it has to rely on triggering callbacks provided by the virt drivers. This introduces a hash table recording the virNWFilterBinding objects so the driver has a record of all active filters. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
- 26 6月, 2018 25 次提交
-
-
由 Anya Harter 提交于
Add comma escaping for netsource. This is done here because qemuBuildNetworkDriveStr has other external callers which may not expect an escaped comma; however, this particular command building path needs to perform the escaping for the hostdev command line, so we do it now to ensure src->path and src->host->name are covered. Signed-off-by: NAnya Harter <aharter@redhat.com>
-
由 Anya Harter 提交于
Instead of source to enable use of virBuffer functions in string construction. Signed-off-by: NAnya Harter <aharter@redhat.com>
-
由 Michal Privoznik 提交于
If a thread is unable to acquire a job (e.g. because of timeout) an error is reported and the error message contains reference to the other thread holding the job. Well, the error message should report agent job too as it is yet another source of possible failure. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com> Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
-
由 Daniel P. Berrangé 提交于
Introduce a new struct to act as the manager of a collection of virNWFilterBindingObjPtr objects. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Introduce a new struct to act as the stateful owner of the virNWFilterBindingDefPtr objects. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
If a <interface> includes a filter name but the nwfilter driver is not present we silently do nothing. This is very bad, because an application that thinks it is protected by malicious guest traffic will in fact be vulnerable. Reporting an error gives the administrator the ability to know there is a problem and fix it. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Use the virNWFilterBindingDefPtr struct in the DHCP address snooping code directly. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Use the virNWFilterBindingDefPTr struct in the IP address learning code directly. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Use the virNWFilterBindingDefPtr struct in the gentech driver code directly. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
When the daemons are split there will need to be a way for the virt drivers and/or network driver to create and delete bindings between network ports and network filters. This defines a set of public APIs that are suitable for managing this facility. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
A typical XML representation of the virNWFilterBindingDefPtr struct looks like this: <filterbinding> <owner> <name>f25arm7</name> <uuid>12ac8b8c-4f23-4248-ae42-fdcd50c400fd</uuid> </owner> <portdev name='vnet1'/> <mac address='52:54:00:9d:81:b1'/> <filterref filter='clean-traffic'> <parameter name='MAC' value='52:54:00:9d:81:b1'/> </filterref> </filterbinding> Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
There's no code sharing between virNWFilterDef and virNWFilterBindingDefPtr types, so it is clearer if they live in separate source files and headers. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
The nwfilter_params.h header references the xmlNodePtr type, so must include the virxml.h header to get the libxml2 types defined. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Daniel P. Berrangé 提交于
We are going to want to expose the NWFilter binding concept in the public API, so the virNWFilterBindingPtr type needs to be used there. Our internal type will shortly gain an XML representation, so rename it to virNWFilterBindingDefPtr which follows our normal conventions. Reviewed-by: NJohn Ferlan <jferlan@redhat.com> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
由 Andrea Bolognani 提交于
This makes the feature fully functional. https://bugzilla.redhat.com/show_bug.cgi?id=1571078Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
-
由 Andrea Bolognani 提交于
Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
-
由 Andrea Bolognani 提交于
This doesn't seem very useful at the moment, but it will make sense once we introduce another HPT-related setting. The output XML is decoupled from the input XML in preparation of future changes as well; while doing so, we can shave a few lines off the latter. This commit is best viewed with 'git show -w'. Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
-
由 Andrea Bolognani 提交于
We're going to introduce a second HPT-related setting soon, at which point using a single location to store everything is no longer going to cut it. This mostly, but not completely, reverts 3dd1eb3b. Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
-
由 Andrea Bolognani 提交于
Signed-off-by: NAndrea Bolognani <abologna@redhat.com>
-
由 Julio Faracco 提交于
After running libvirt daemon with valgrind tools, some errors are appearing when you try to start a domain. One example: ==18012== Syscall param mount(type) points to unaddressable byte(s) ==18012== at 0x6FEE3CA: mount (syscall-template.S:78) ==18012== by 0x531344D: virFileMoveMount (virfile.c:3828) ==18012== by 0x27FE7675: qemuDomainBuildNamespace (qemu_domain.c:11501) ==18012== by 0x2800C44E: qemuProcessHook (qemu_process.c:2870) ==18012== by 0x52F7E1D: virExec (vircommand.c:726) ==18012== by 0x52F7E1D: virCommandRunAsync (vircommand.c:2477) ==18012== by 0x52F4EDD: virCommandRun (vircommand.c:2309) ==18012== by 0x2800A731: qemuProcessLaunch (qemu_process.c:6235) ==18012== by 0x2800D6B4: qemuProcessStart (qemu_process.c:6569) ==18012== by 0x28074876: qemuDomainObjStart (qemu_driver.c:7314) ==18012== by 0x280522EB: qemuDomainCreateWithFlags (qemu_driver.c:7367) ==18012== by 0x55484BF: virDomainCreate (libvirt-domain.c:6531) ==18012== by 0x12CDBD: remoteDispatchDomainCreate (remote_daemon_dispatch_stubs.h:4350) ==18012== by 0x12CDBD: remoteDispatchDomainCreateHelper (remote_daemon_dispatch_stubs.h:4326) ==18012== Address 0x0 is not stack'd, malloc'd or (recently) free'd Some documentation recommends to use "none" when you don't have a filesystem type to use. Specially, for bind and move actions. Signed-off-by: NJulio Faracco <jcfaracco@gmail.com>
-
由 w00251574 提交于
fix 'device' leak in qemuDomainBlockJobSetSpeed Signed-off-by: Jie Wang <wangjie88.huawei.com> Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 w00251574 提交于
Exiting early through the return path did result in 'port_str' being leaked. Signed-off-by: Jie Wang <wangjie88.huawei.com>
-
由 Daniel P. Berrangé 提交于
The UNIX socket FDs were we passing to QEMU inherited a label based on libvirtd's context. QEMU is thus denied ability to access the UNIX socket. We need to use the security manager to change our current context temporarily when creating the UNIX socket FD. Reviewed-by: NLaine Stump <laine@laine.org> Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
-
- 25 6月, 2018 2 次提交
-
-
由 Michal Privoznik 提交于
If a thread is unable to start a job (e.g. because of timeout) a warning is printed into the logs. So far, the message does not contain agent job info. Add it as it might help future debugging. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com> Reviewed-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Michal Privoznik 提交于
Signed-off-by: NMichal Privoznik <mprivozn@redhat.com> Reviewed-by: NErik Skultety <eskultet@redhat.com>
-
- 22 6月, 2018 3 次提交
-
-
由 Weilun Zhu 提交于
As qemuMonitorJSONIOProcess will call qemuMonitorJSONIOProcessEvent which unlocks the monitor mutex, there is some extreme situation, eg qemu send message to monitor twice in a short time, where the local viriable 'msg' of qemuMonitorIOProcess could be a wild point: 1. qemuMonitorSend() assign mon->msg to parameter 'msg', which is alse a local variable of its caller qemuMonitorJSONCommandWithFd(), cause eventloop to send message to monitor, then wait condition. 2. qemu send message to monitor for the first time immediately. 3. qemuMonitorIOProcess() is called, then wake up the qemuMonitorSend() thread, but the qemuMonitorSend() thread stuck for a while as cpu pressure or some other reasons, which means the qemu monitor is still unlocked. 4. qemu send event message to monitor for the second time, such as RTC_CHANGE event 5. qemuMonitorIOProcess() is called again, the local viriable 'msg' is assigned to mon->msg. 6. qemuMonitorIOProcess() call qemuMonitorJSONIOProcess() to deal with the qemu event. 7. qemuMonitorJSONIOProcess() unlock the qemu monitor in the macro 'QEMU_MONITOR_CALLBACK', then qemuMonitorSend() thread get the mutex and free the mon->msg, assign mon->msg to NULL. Signed-off-by: NWeilun Zhu <zhuweilun@huawei.com> Reviewed-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Pino Toscano 提交于
Most probably this was a limitation in older ESX versions, and it seems it does not exist anymore in more recent versions; see the following thread: https://www.redhat.com/archives/libvir-list/2018-May/msg02159.html https://www.redhat.com/archives/libvir-list/2018-June/msg00043.html Hence, allow an odd number (greater than 1) of vCPUs, since most probably older versions of ESXi will error out anyway. https://bugzilla.redhat.com/show_bug.cgi?id=1584091Signed-off-by: NPino Toscano <ptoscano@redhat.com> Reviewed-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Anya Harter 提交于
Add comma escaping for disk->blkdeviotune.group_name. Signed-off-by: NAnya Harter <aharter@redhat.com> Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
-
- 21 6月, 2018 5 次提交
-
-
由 Laine Stump 提交于
Re-generating of generated source files in the hyperv directory depends on src/.hyperv_wmi_generator.stamp not existing, or having a timestamp older than src/hyperv/hyperv_wmi_generator.py. "make maintainer-clean" erases the generated files, but not this sentinel file, so the erased files aren't regenerated during the next make. Once we add it to the list of MAINTAINERCLEANFILES, it gets deleted at the same time as the generated files, so make is able to understand they need regeneration. Signed-off-by: NLaine Stump <laine@laine.org> ACKed-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Laine Stump 提交于
The problem has been around for quite awhile - the misspelling was faithfully copied from src/Makefile.am to src/hyperv/Makefile.am.inc in commit 253b528c. Signed-off-by: NLaine Stump <laine@laine.org> ACKed-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 John Ferlan 提交于
https://bugzilla.redhat.com/show_bug.cgi?id=1591628 Attempting to use the FORCE flag for snapshot-revert was resulting in failures because qemuProcessStart and qemuProcessStartCPUs were using QEMU_ASYNC_JOB_START after a qemuProcessStop resulting in an error when entering the monitor: error: internal error: unexpected async job 6 type expected 0 So create a local @jobType, initialize to QEMU_ASYNC_JOB_START, and change to QEMU_ASYNC_JOB_NONE if we end up in the --force path where the qemuProcessStop is run before a Start and StartCPUs. Signed-off-by: NJohn Ferlan <jferlan@redhat.com> ACKed-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 John Ferlan 提交于
If the the snapshot revert involves a forced revert option, then let's not cause startup to change the genid flag in order to signify that we're still running the same/previous guest and not some snapshot reversion. Related to: https://bugzilla.redhat.com/show_bug.cgi?id=1149445Signed-off-by: NJohn Ferlan <jferlan@redhat.com> ACKed-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 John Ferlan 提交于
Use and set the @start_flags at the top of the RUNNING and PAUSED transitions to GEN_VMID | PAUSED. Signed-off-by: NJohn Ferlan <jferlan@redhat.com> ACKed-by: NMichal Privoznik <mprivozn@redhat.com>
-