
On Fri, Jul 26, 2019 at 12:55:20PM +0200, Ilias Stamatis wrote:
On Thu, Jul 25, 2019 at 5:43 PM Erik Skultety <eskultet@redhat.com> wrote:
On Tue, Jul 23, 2019 at 12:17:57PM +0200, Ilias Stamatis wrote:
Signed-off-by: Ilias Stamatis <stamatis.iliass@gmail.com> --- src/test/test_driver.c | 74 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+)
diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 47e28a01ec..4c6f3db8de 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -2774,6 +2774,79 @@ testDomainPinIOThread(virDomainPtr dom, }
+static int +testDomainGetIOThreadInfo(virDomainPtr dom, + virDomainIOThreadInfoPtr **info, + unsigned int flags) +{ + virDomainObjPtr vm = NULL; + virDomainDefPtr def = NULL; + virBitmapPtr cpumask = NULL; + virBitmapPtr bitmap = NULL; + virDomainIOThreadInfoPtr *info_ret = NULL; + size_t i; + int hostcpus; + int ret = -1; + + virCheckFlags(VIR_DOMAIN_AFFECT_LIVE | + VIR_DOMAIN_AFFECT_CONFIG, -1); + + if (!(vm = testDomObjFromDomain(dom))) + goto cleanup; + + if (!(def = virDomainObjGetOneDef(vm, flags))) + goto cleanup; + + if (def->niothreadids == 0) + return 0;
^This will leave the object locked, so once you do Info, anything else after that will deadlock, so goto is needed.
Erik
Of course... I don't know how I missed that. I guess I don't need to re-send it though only for this change?
No need, this can go straight in, I still need to look more closely on the iothread deletion API though. so for this one: Reviewed-by: Erik Skultety <eskultet@redhat.com>