[libvirt] [PATCH] qemu: snapshot: restart CPUs when recover from interrupted snapshot job

2017-01-04 Thread Wang King
If we restart libvirtd while VM was doing external memory snapshot, VM's state be updated to paused as a result of running a migration-to-file operation, and then VM will be left as paused state. In this case we must restart the VM's CPUs to resume it. Signed-off-by: Wang King ---

Re: [libvirt] [PATCH] util: fix domain object leaks on closecallbacks

2017-01-09 Thread Wang King
delay in processing this... On 11/23/2016 11:29 PM, Wang King wrote: From: wangjing The virCloseCallbacksSet method increase object reference for VM, and decrease object reference in virCloseCallbacksUnset. But VM UUID will be deleted from closecallbacks list in virCloseCallbacksRun when

[libvirt] [PATCHv2 2/3] util: fix domain object leaks on closecallbacks

2017-01-09 Thread Wang King
;s virDriverCloseDef struct cannot be found in callback list[2] lead to VM's object leak. Signed-off-by: Wang King --- src/util/virclosecallbacks.c | 21 +++-- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/util/virclosecallbacks.c b/src/util/virclosecallb

[libvirt] [PATCHv2 3/3] util: avoid VM object to be disposed before unlock in close callback.

2017-01-09 Thread Wang King
Probably causes 'vm' to be disposed in execute qemuProcessAutoDestroy callback function, reference 'vm' avoid unlock disposed object. Signed-off-by: Wang King --- src/util/virclosecallbacks.c | 12 +++- 1 file changed, 7 insertions(+), 5 deletions(-) d

[libvirt] [PATCHv2 1/3] util: unlock closeCallbacks if get callbacks for connect fail

2017-01-09 Thread Wang King
Avoid return with the closeCallbacks locked when get callbacks list for connect fail. Signed-off-by: Wang King --- src/util/virclosecallbacks.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/util/virclosecallbacks.c b/src/util/virclosecallbacks.c index 891a92b

[libvirt] [PATCH] conf: fix use-after-free when sending event message

2017-02-08 Thread Wang King
If there is a process with a client which registers event callbacks, and it calls libvirt's API which uses the same virConnectPtr in that callback function. When this process exit abnormally lead to client disconnect, there is a possibility that the main thread is refer to virServerClient just af

[libvirt] [PATCH] conf: fix use-after-free when sending event message

2017-02-08 Thread Wang King
If there is a process with a client which registers event callbacks, and it calls libvirt's API which uses the same virConnectPtr in that callback function. When this process exit abnormally lead to client disconnect, there is a possibility that the main thread is refer to virServerClient just afte

[libvirt] [PATCH] rpc: fix use-after-free when sending event message

2017-02-09 Thread Wang King
If there is a process with a client which registers event callbacks, and it calls libvirt's API which uses the same virConnectPtr in that callback function. When this process exit abnormally lead to client disconnect, there is a possibility that the main thread is refer to virServerClient just afte

[libvirt] [PATCH] tools: don't leak @cpumap

2017-04-12 Thread Wang King
==18591== 16 bytes in 1 blocks are definitely lost in loss record 41 of 183 ==18591==at 0x4C2B934: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==18591==by 0x54EBB1C: virAllocN (viralloc.c:191) ==18591==by 0x1628CA: _vshMalloc (vsh.c:136) ==18591==by 0x1344C4:

[libvirt] [PATCH] interface: Fix resource leak in netcfConnectListAllInterfaces error path

2017-04-12 Thread Wang King
On virGetInterface failure, call virInterfaceDefFree for the @def. --- src/interface/interface_backend_netcf.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/interface/interface_backend_netcf.c b/src/interface/interface_backend_netcf.c index 700a8a0..c7cc071 100644 ---

[libvirt] [PATCH] util: Resolve coverity issues

2017-04-12 Thread Wang King
Coverity complains about virBufferCurrentContent might be return null when calling strlen, so check virBufferError first before calling strlen. --- src/util/virsystemd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/util/virsystemd.c b/src/util/virsystemd.c index ceb1c1a..83737a2 1006

[libvirt] [PATCH] util: Fix resource leak

2017-04-12 Thread Wang King
The virRotatingFileWriterAppend method leaks the file->entry on the virRotatingFileWriterEntryNew failing path. --- src/util/virrotatingfile.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/util/virrotatingfile.c b/src/util/virrotatingfile.c index 9144729..83a695f

[libvirt] [PATCH] util: fix potential segfault

2017-04-12 Thread Wang King
virBufferCurrentContent might be get a NULL string, and then without checking it, this can cause a segfault as strlen expects a string != NULL. Use virBufferCheckError to check error before calling strlen. --- src/util/virsystemd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/util/v

Re: [libvirt] [PATCH] util: Resolve coverity issues

2017-04-12 Thread Wang King
On 2017/4/12 16:35, Peter Krempa wrote: On Wed, Apr 12, 2017 at 16:22:57 +0800, Wang King wrote: "resolve coverity issue" is not a good summary for a patch. It should describe what the actual bug you are fixing is. Coverity complains about virBufferCurrentContent might be return

[libvirt] [PATCH] esx: Fix memory leak

2017-04-12 Thread Wang King
Variable def going out of scope leaks the storage def.source.hosts points to. --- src/esx/esx_storage_backend_vmfs.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/esx/esx_storage_backend_vmfs.c b/src/esx/esx_storage_backend_vmfs.c index a1a660b..940e5d1 100644 --- a/src/esx/esx_storage_

[libvirt] [PATCH] esx: Fix incorrect memory compare size in esxStoragePoolLookupByUUID

2017-04-12 Thread Wang King
Use MD5_DIGEST_SIZE or VIR_UUID_BUFLEN rather than VIR_UUID_STRING_BUFLEN when compare @uuid with @md5. --- src/esx/esx_storage_backend_iscsi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/esx/esx_storage_backend_iscsi.c b/src/esx/esx_storage_backend_iscsi.c index 96b47

[libvirt] [PATCH] conf: remove unused assignment statement in virSysinfoBaseBoardParseXML

2017-04-12 Thread Wang King
Assigning value 0 to @nboards in success path, that stored value is not used. --- src/conf/domain_conf.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 80baa09..52f4c7a 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -13

[libvirt] [PATCH] tools: remove unused assignment statement in virshStorageVolListCollect

2017-04-12 Thread Wang King
Assigning value true to @success if there is no volumes, that stored value is not used. --- tools/virsh-volume.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tools/virsh-volume.c b/tools/virsh-volume.c index ddd41d2..66fe70e 100644 --- a/tools/virsh-volume.c +++ b/tools/

[libvirt] [PATCH] src: test: remove unused variate @maxcpu in testDomainGetVcpus

2017-04-12 Thread Wang King
The @maxcpu variate isn't used anymore. --- src/test/test_driver.c | 6 +- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 46ebdcc..919b265 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -2467,7 +2467,7 @@

[libvirt] question about virtlogd service restart

2017-04-13 Thread Wang King
Hi all, I found that virtlogd cannot write qemu log and serial log anymore after restart it. It's because of the file descriptor which qemu connected to the virtlogd is broken, and cannot be reconnect after virtlogd restarted. Is this expected behavior or unresolved issue? Thanks Wang

[libvirt] [PATCH] daemon: Fix domain name leak in error path

2017-04-13 Thread Wang King
domain name duplicated in make_nonnull_domain, but not freed when virTypedParamsSerialize return negative. --- daemon/remote.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/daemon/remote.c b/daemon/remote.c index 1610fea..edee981 100644 --- a/daemon/remote.c +++ b/daemon/

[libvirt] [PATCH v2] daemon: Fix domain name leak in error path

2017-04-16 Thread Wang King
Domain name duplicated in make_nonnull_domain, but not freed when virTypedParamsSerialize return negative. Remove useless error label incidentally. --- daemon/remote.c | 21 +++-- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/daemon/remote.c b/daemon/remote.c in

[libvirt] [PATCH v3 2/2] daemon: Remove unnecessary goto error

2017-04-19 Thread Wang King
Free the dst is unnecessary if the VIR_STRDUP fails, and therefore we need to remove the error label. --- daemon/remote.c | 10 ++ 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/daemon/remote.c b/daemon/remote.c index 5d726f4..d8a55c7 100644 --- a/daemon/remote.c +++ b/daemo

[libvirt] [PATCH v3 1/2] daemon: Fix domain name leak in error path

2017-04-19 Thread Wang King
Domain name duplicated in make_nonnull_domain, but not freed when virTypedParamsSerialize return negative. --- daemon/remote.c | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/daemon/remote.c b/daemon/remote.c index 1610fea..5d726f4 100644 --- a/daemon/remote.c +++

[libvirt] [PATCH v4 2/2] daemon: Remove unnecessary goto error

2017-04-23 Thread Wang King
Free the dst is unnecessary if the VIR_STRDUP fails, and therefore we need to remove the error label. --- daemon/remote.c | 10 ++ 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/daemon/remote.c b/daemon/remote.c index a8c21fd..2709c3c 100644 --- a/daemon/remote.c +++ b/daemo

[libvirt] [PATCH v4 1/2] daemon: Fix domain name leak in error path

2017-04-23 Thread Wang King
Domain name duplicated in make_nonnull_domain, but not freed when virTypedParamsSerialize return negative. --- daemon/remote.c | 8 ++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/daemon/remote.c b/daemon/remote.c index 1610fea..a8c21fd 100644 --- a/daemon/remote.c +++ b/da

[libvirt] [PATCH] util: Remove unused variate @errbuf in virPCIGetDeviceAddressFromSysfsLink

2017-04-26 Thread Wang King
From: w00185384 Since refactoring by commit id 'a7035662', @errbuf is no longer used. --- src/util/virpci.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/util/virpci.c b/src/util/virpci.c index c89b94b..83c7e74 100644 --- a/src/util/virpci.c +++ b/src/util/virpci.c @@ -2618,7 +2618,6

[libvirt] [PATCH] util: do not leak handles in stop netlink event service

2017-05-13 Thread Wang King
handles stored in virNetlinkEventSrvPrivatePtr should be freed when stop netlink event service. --- src/util/virnetlink.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/util/virnetlink.c b/src/util/virnetlink.c index 92ecf77..b782cfa 100644 --- a/src/util/virnetlink.c +++ b/src/util/vir

[libvirt] [PATCH v2 1/2] util: Deduplicate code in virNetlinkEventServiceStopAll

2017-05-17 Thread Wang King
Commit 15a71e60 introduced the virNetlinkEventServiceStopAll function, and the code in virNetlinkEventServiceStop is copied to this function. can use virNetlinkEventServiceStop instead. --- src/util/virnetlink.c | 25 +++-- 1 file changed, 3 insertions(+), 22 deletions(-) diff

[libvirt] [PATCH v2 2/2] util: do not leak handles in stop netlink event service

2017-05-17 Thread Wang King
handles stored in virNetlinkEventSrvPrivatePtr should be freed when stop netlink event service. --- src/util/virnetlink.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/util/virnetlink.c b/src/util/virnetlink.c index fad1e8e..7988312 100644 --- a/src/util/virnetlink.c +++ b/src/util/virne

[libvirt] [PATCH] util: Don't leak @replay in virSystemdGetMachineNameByPID

2017-05-19 Thread Wang King
@reply is a DBusMessage object returned by virDBusCallMethod in get machine object call path, dereference it before calling virDBusCallMethod again to get machine name. --- src/util/virsystemd.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/util/virsystemd.c b/src/util/virsystemd.c in

[libvirt] [PATCH 2/2] util: rename qemuGetSchedInfo to virProcessGetSchedInfo

2017-05-23 Thread Wang King
qemuGetSchedInfo is more likely a process utility function, just rename it to virProcessGetSchedInfo and move it to virprocess.c source file. --- src/libvirt_private.syms | 1 + src/qemu/qemu_driver.c | 78 +--- src/util/virprocess.c| 75 +

[libvirt] [PATCH 1/2] util: rename qemuGetProcessInfo to virProcessGetStat

2017-05-23 Thread Wang King
qemuGetProcessInfo is more likely a process utility function, just rename it to virProcessGetStat and move it to virprocess.c source file. --- src/libvirt_private.syms | 1 + src/qemu/qemu_driver.c | 83 ++-- src/util/virprocess.c| 62

[libvirt] [PATCH] qemu: avoid deadlock on domain object enter monitor fail

2017-07-18 Thread Wang King
Should be followed with qemuDomainObjExitMonitor only if qemuDomainObjEnterMonitorAsync returns 0. --- src/qemu/qemu_migration.c | 2 +- src/qemu/qemu_process.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c index c23f

Re: [libvirt] An API to copy files.

2017-07-23 Thread Wang King
I think io_helper is a good tool for copy a file, it can be avoided libvirtd fail into uninterruptible sleep status when file system is unreadable or unwritable. On 2017/7/24 3:28, Julio Faracco wrote: Hi guys, Unfortunately, my company does not allow access to IRC. I need to ask question by e

[libvirt] [PATCH] util: fix domain object leaks on closecallbacks

2016-11-23 Thread Wang King
virCloseCallbacksUnset in callback functions. Signed-off-by: Wang King --- src/util/virclosecallbacks.c | 29 + 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/src/util/virclosecallbacks.c b/src/util/virclosecallbacks.c index 891a92b..26d5075 100644 --- a

[libvirt] [PATCH] util: fix domain object leaks on closecallbacks

2016-11-23 Thread Wang King
virCloseCallbacksUnset in callback functions. Signed-off-by: Wang King --- src/util/virclosecallbacks.c | 29 + 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/src/util/virclosecallbacks.c b/src/util/virclosecallbacks.c index 891a92b..26d5075 100644 --- a

[libvirt] [PATCH] qemu: Qemu process unexpectedly killed in repeated reboot

2018-11-30 Thread Wang King
But because the guest already responded to ACPI shut down, libvirtd daemon will process a SHUTDOWN event in qemuProcessShutdownOrReboot and checks priv->fakeReboot. Since the fakeReboot flag is now false, qemu process is unexpectedly killed. I have no idea how to fix it. Signed-off-by: Wan

Re: [libvirt] [PATCH] qemu: Qemu process unexpectedly killed in repeated reboot

2018-12-07 Thread Wang King
On 12/07/18 9:53 AM, Wang King wrote: >> The issue occurs when I make repeated calls to virDomainReboot with >> VIR_DOMAIN_REBOOT_DEFAULT flag. In the first call to reboot domain, >> the qemu driver chose ACPI path, and set priv->fakeReboot to true. >> Then in a sec

[libvirt] [PATCH] qemuProcessReconnect: ensure vm xml integrity when save status

2019-05-20 Thread Wang King
From: Dingzhong Weng libvirtd starts qemuProcessReconnect threads when libvirtd is starting and there are live vm on the host. but as qemuProcessReconnect threads are simply side job done by libvirtd upon start and are only called for existing vm. these threads are not managed like that of worker

[libvirt] About CVE-2017-5715

2018-01-04 Thread Wang King
As CVE-2017-5715 described on https://access.redhat.com/security/cve/cve-2017-5715, libvirt under the influence yet, So what's coming next for this? Signed-off-by: Wang King -- 2.8.3 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list