From: Wen Congyang <wency@cn.fujitsu.com> To: kvm list <kvm@vger.kernel.org>, qemu-devel <qemu-devel@nongnu.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Avi Kivity <avi@redhat.com>, "Daniel P. Berrange" <berrange@redhat.com>, KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>, Jan Kiszka <jan.kiszka@siemens.com>, Gleb Natapov <gleb@redhat.com> Subject: [PATCH 1/7 v6] start vm after reseting it Date: Fri, 06 Jul 2012 17:38:05 +0800 [thread overview] Message-ID: <4FF6B1FD.40509@cn.fujitsu.com> (raw) In-Reply-To: <4FF6B188.2060607@cn.fujitsu.com> The guest should run after reseting it, but it does not run if its old state is RUN_STATE_INTERNAL_ERROR or RUN_STATE_PAUSED. We don't set runstate to RUN_STATE_PAUSED when reseting the guest, so the runstate will be changed from RUN_STATE_INTERNAL_ERROR or RUN_STATE_PAUSED to RUN_STATE_RUNNING(not RUN_STATE_PAUSED). Signed-off-by: Wen Congyang <wency@cn.fujitsu.com> --- block.h | 2 ++ qmp.c | 2 +- vl.c | 7 ++++--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/block.h b/block.h index d135652..d9570dd 100644 --- a/block.h +++ b/block.h @@ -365,6 +365,8 @@ void bdrv_disable_copy_on_read(BlockDriverState *bs); void bdrv_set_in_use(BlockDriverState *bs, int in_use); int bdrv_in_use(BlockDriverState *bs); +void iostatus_bdrv_it(void *opaque, BlockDriverState *bs); + enum BlockAcctType { BDRV_ACCT_READ, BDRV_ACCT_WRITE, diff --git a/qmp.c b/qmp.c index fee9fb2..a111dff 100644 --- a/qmp.c +++ b/qmp.c @@ -125,7 +125,7 @@ SpiceInfo *qmp_query_spice(Error **errp) }; #endif -static void iostatus_bdrv_it(void *opaque, BlockDriverState *bs) +void iostatus_bdrv_it(void *opaque, BlockDriverState *bs) { bdrv_iostatus_reset(bs); } diff --git a/vl.c b/vl.c index 1329c30..898987c 100644 --- a/vl.c +++ b/vl.c @@ -331,7 +331,7 @@ static const RunStateTransition runstate_transitions_def[] = { { RUN_STATE_INMIGRATE, RUN_STATE_RUNNING }, { RUN_STATE_INMIGRATE, RUN_STATE_PRELAUNCH }, - { RUN_STATE_INTERNAL_ERROR, RUN_STATE_PAUSED }, + { RUN_STATE_INTERNAL_ERROR, RUN_STATE_RUNNING }, { RUN_STATE_INTERNAL_ERROR, RUN_STATE_FINISH_MIGRATE }, { RUN_STATE_IO_ERROR, RUN_STATE_RUNNING }, @@ -364,7 +364,7 @@ static const RunStateTransition runstate_transitions_def[] = { { RUN_STATE_SAVE_VM, RUN_STATE_RUNNING }, - { RUN_STATE_SHUTDOWN, RUN_STATE_PAUSED }, + { RUN_STATE_SHUTDOWN, RUN_STATE_RUNNING }, { RUN_STATE_SHUTDOWN, RUN_STATE_FINISH_MIGRATE }, { RUN_STATE_DEBUG, RUN_STATE_SUSPENDED }, @@ -1532,7 +1532,8 @@ static bool main_loop_should_exit(void) resume_all_vcpus(); if (runstate_check(RUN_STATE_INTERNAL_ERROR) || runstate_check(RUN_STATE_SHUTDOWN)) { - runstate_set(RUN_STATE_PAUSED); + bdrv_iterate(iostatus_bdrv_it, NULL); + vm_start(); } } if (qemu_powerdown_requested()) { -- 1.7.1
WARNING: multiple messages have this Message-ID (diff)
From: Wen Congyang <wency@cn.fujitsu.com> To: kvm list <kvm@vger.kernel.org>, qemu-devel <qemu-devel@nongnu.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Avi Kivity <avi@redhat.com>, "Daniel P. Berrange" <berrange@redhat.com>, KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>, Jan Kiszka <jan.kiszka@siemens.com>, Gleb Natapov <gleb@redhat.com> Subject: [Qemu-devel] [PATCH 1/7 v6] start vm after reseting it Date: Fri, 06 Jul 2012 17:38:05 +0800 [thread overview] Message-ID: <4FF6B1FD.40509@cn.fujitsu.com> (raw) In-Reply-To: <4FF6B188.2060607@cn.fujitsu.com> The guest should run after reseting it, but it does not run if its old state is RUN_STATE_INTERNAL_ERROR or RUN_STATE_PAUSED. We don't set runstate to RUN_STATE_PAUSED when reseting the guest, so the runstate will be changed from RUN_STATE_INTERNAL_ERROR or RUN_STATE_PAUSED to RUN_STATE_RUNNING(not RUN_STATE_PAUSED). Signed-off-by: Wen Congyang <wency@cn.fujitsu.com> --- block.h | 2 ++ qmp.c | 2 +- vl.c | 7 ++++--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/block.h b/block.h index d135652..d9570dd 100644 --- a/block.h +++ b/block.h @@ -365,6 +365,8 @@ void bdrv_disable_copy_on_read(BlockDriverState *bs); void bdrv_set_in_use(BlockDriverState *bs, int in_use); int bdrv_in_use(BlockDriverState *bs); +void iostatus_bdrv_it(void *opaque, BlockDriverState *bs); + enum BlockAcctType { BDRV_ACCT_READ, BDRV_ACCT_WRITE, diff --git a/qmp.c b/qmp.c index fee9fb2..a111dff 100644 --- a/qmp.c +++ b/qmp.c @@ -125,7 +125,7 @@ SpiceInfo *qmp_query_spice(Error **errp) }; #endif -static void iostatus_bdrv_it(void *opaque, BlockDriverState *bs) +void iostatus_bdrv_it(void *opaque, BlockDriverState *bs) { bdrv_iostatus_reset(bs); } diff --git a/vl.c b/vl.c index 1329c30..898987c 100644 --- a/vl.c +++ b/vl.c @@ -331,7 +331,7 @@ static const RunStateTransition runstate_transitions_def[] = { { RUN_STATE_INMIGRATE, RUN_STATE_RUNNING }, { RUN_STATE_INMIGRATE, RUN_STATE_PRELAUNCH }, - { RUN_STATE_INTERNAL_ERROR, RUN_STATE_PAUSED }, + { RUN_STATE_INTERNAL_ERROR, RUN_STATE_RUNNING }, { RUN_STATE_INTERNAL_ERROR, RUN_STATE_FINISH_MIGRATE }, { RUN_STATE_IO_ERROR, RUN_STATE_RUNNING }, @@ -364,7 +364,7 @@ static const RunStateTransition runstate_transitions_def[] = { { RUN_STATE_SAVE_VM, RUN_STATE_RUNNING }, - { RUN_STATE_SHUTDOWN, RUN_STATE_PAUSED }, + { RUN_STATE_SHUTDOWN, RUN_STATE_RUNNING }, { RUN_STATE_SHUTDOWN, RUN_STATE_FINISH_MIGRATE }, { RUN_STATE_DEBUG, RUN_STATE_SUSPENDED }, @@ -1532,7 +1532,8 @@ static bool main_loop_should_exit(void) resume_all_vcpus(); if (runstate_check(RUN_STATE_INTERNAL_ERROR) || runstate_check(RUN_STATE_SHUTDOWN)) { - runstate_set(RUN_STATE_PAUSED); + bdrv_iterate(iostatus_bdrv_it, NULL); + vm_start(); } } if (qemu_powerdown_requested()) { -- 1.7.1
next prev parent reply other threads:[~2012-07-06 9:33 UTC|newest] Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-07-06 9:36 [PATCH v6] kvm: notify host when the guest is panicked Wen Congyang 2012-07-06 9:36 ` [Qemu-devel] " Wen Congyang 2012-07-06 9:38 ` Wen Congyang [this message] 2012-07-06 9:38 ` [Qemu-devel] [PATCH 1/7 v6] start vm after reseting it Wen Congyang 2012-07-06 9:38 ` [PATCH 2/7 v6] update linux headers Wen Congyang 2012-07-06 9:38 ` [Qemu-devel] " Wen Congyang 2012-07-06 10:25 ` Jan Kiszka 2012-07-06 10:25 ` [Qemu-devel] " Jan Kiszka 2012-07-06 10:50 ` Wen Congyang 2012-07-06 10:50 ` [Qemu-devel] " Wen Congyang 2012-07-06 10:50 ` Wen Congyang 2012-07-06 10:55 ` [Qemu-devel] " 陳韋任 (Wei-Ren Chen) 2012-07-06 10:55 ` 陳韋任 (Wei-Ren Chen) 2012-07-06 11:16 ` Jan Kiszka 2012-07-06 11:16 ` [Qemu-devel] " Jan Kiszka 2012-07-07 14:35 ` Paul Gortmaker 2012-07-07 14:35 ` [Qemu-devel] " Paul Gortmaker 2012-07-06 9:39 ` [PATCH 3/7 v6] add a new runstate: RUN_STATE_GUEST_PANICKED Wen Congyang 2012-07-06 9:39 ` [Qemu-devel] " Wen Congyang 2012-07-06 9:40 ` [PATCH 4/7 v6] add a new qevent: QEVENT_GUEST_PANICKED Wen Congyang 2012-07-06 9:40 ` [Qemu-devel] " Wen Congyang 2012-07-06 9:41 ` [PATCH 5/7 v6] introduce a new qom device to deal with panicked event Wen Congyang 2012-07-06 9:41 ` [Qemu-devel] " Wen Congyang 2012-07-06 11:05 ` Jan Kiszka 2012-07-06 11:05 ` [Qemu-devel] " Jan Kiszka 2012-07-06 11:05 ` Jan Kiszka 2012-07-18 1:54 ` Wen Congyang 2012-07-18 1:54 ` [Qemu-devel] " Wen Congyang 2012-07-18 9:19 ` Jan Kiszka 2012-07-18 9:19 ` [Qemu-devel] " Jan Kiszka 2012-07-18 9:25 ` Jan Kiszka 2012-07-18 9:25 ` [Qemu-devel] " Jan Kiszka 2012-07-06 9:41 ` [PATCH 6/7 v6] deal with guest panicked event accoring to -onpanic parameter Wen Congyang 2012-07-06 9:41 ` [Qemu-devel] " Wen Congyang 2012-07-06 11:12 ` Jan Kiszka 2012-07-06 11:12 ` [Qemu-devel] " Jan Kiszka 2012-07-06 11:12 ` Jan Kiszka 2012-07-06 9:41 ` [PATCH 7/7 v6] deal with panicked event accoring to '-machine panic_action=action' Wen Congyang 2012-07-06 9:41 ` [Qemu-devel] " Wen Congyang 2012-07-06 11:09 ` Jan Kiszka 2012-07-06 11:09 ` [Qemu-devel] " Jan Kiszka 2012-07-06 11:09 ` Jan Kiszka 2012-07-09 10:44 ` Wen Congyang 2012-07-09 10:44 ` [Qemu-devel] " Wen Congyang
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=4FF6B1FD.40509@cn.fujitsu.com \ --to=wency@cn.fujitsu.com \ --cc=avi@redhat.com \ --cc=berrange@redhat.com \ --cc=gleb@redhat.com \ --cc=jan.kiszka@siemens.com \ --cc=kamezawa.hiroyu@jp.fujitsu.com \ --cc=kvm@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=qemu-devel@nongnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.