diff options
Diffstat (limited to 'results/classifier/118/graphic/2276')
| -rw-r--r-- | results/classifier/118/graphic/2276 | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/results/classifier/118/graphic/2276 b/results/classifier/118/graphic/2276 new file mode 100644 index 000000000..766b1b91b --- /dev/null +++ b/results/classifier/118/graphic/2276 @@ -0,0 +1,72 @@ +graphic: 0.992 +performance: 0.887 +architecture: 0.869 +files: 0.853 +hypervisor: 0.831 +device: 0.828 +peripherals: 0.825 +PID: 0.721 +semantic: 0.700 +socket: 0.689 +vnc: 0.676 +ppc: 0.667 +TCG: 0.660 +debug: 0.645 +VMM: 0.622 +virtual: 0.617 +register: 0.590 +network: 0.578 +kernel: 0.565 +i386: 0.560 +x86: 0.546 +risc-v: 0.542 +permissions: 0.525 +KVM: 0.521 +assembly: 0.506 +arm: 0.503 +user-level: 0.489 +mistranslation: 0.438 +boot: 0.407 + +qemu crash for suspend and resume vm while backup disk of vm +Description of problem: + +Steps to reproduce: +1. virsh create vm2.xml +2. virsh backup-begin domid +3. virsh suspend domid +4. sleep 1 && virsh resume domid + +qemu crash +Additional information: +static int blk_do_set_aio_context(BlockBackend *blk, AioContext *new_context, + bool update_root_node, Error **errp) +{ + BlockDriverState *bs = blk_bs(blk); + ThrottleGroupMember *tgm = &blk->public.throttle_group_member; + int ret; + + if (bs) { + bdrv_ref(bs); + + if (update_root_node) { + ret = bdrv_child_try_set_aio_context(bs, new_context, blk->root, + errp); + if (ret < 0) { + bdrv_unref(bs); + return ret; + } + } + if (tgm->throttle_state) { + _ ****bdrv_drained_begin(bs);----- bs->aio_context->lock lock count is 0,so unlock failed**_ + throttle_group_detach_aio_context(tgm); + throttle_group_attach_aio_context(tgm, new_context); + bdrv_drained_end(bs); + } + + bdrv_unref(bs); + } + + blk->ctx = new_context; + return 0; +} |