Message ID | 1367488340-14782-1-git-send-email-afaerber@suse.de |
---|---|
State | New |
Headers | show |
On 2013-05-02 11:52, Andreas Färber wrote: > Due to a preceding while loop, no CPU would've been put into stopped > state. Reinitialize the variable. > This fixes commit d798e97456658ea7605303b7c69b04ec7df95c10 (Allow to use > pause_all_vcpus from VCPU context) for non-KVM case. > > While at it, change a 0 to false, amending commit > 4fdeee7cd4c8f90ef765537b9346a195d9483ab5 (cpu: Move stop field to > CPUState). > > Signed-off-by: Andreas Färber <afaerber@suse.de> > --- > For 1.5 I'm going for the least invasive change here. > On qom-cpu-10 I'm preparing to replace each CPU loop with qemu_for_each_cpu(). > > cpus.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/cpus.c b/cpus.c > index a2d92c7..c232265 100644 > --- a/cpus.c > +++ b/cpus.c > @@ -974,9 +974,10 @@ void pause_all_vcpus(void) > if (qemu_in_vcpu_thread()) { > cpu_stop_current(); > if (!kvm_enabled()) { > + penv = first_cpu; > while (penv) { > CPUState *pcpu = ENV_GET_CPU(penv); > - pcpu->stop = 0; > + pcpu->stop = false; > pcpu->stopped = true; > penv = penv->next_cpu; > } > Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com> Thanks, Jan
Am 02.05.2013 12:14, schrieb Jan Kiszka: > On 2013-05-02 11:52, Andreas Färber wrote: >> Due to a preceding while loop, no CPU would've been put into stopped >> state. Reinitialize the variable. >> This fixes commit d798e97456658ea7605303b7c69b04ec7df95c10 (Allow to use >> pause_all_vcpus from VCPU context) for non-KVM case. >> >> While at it, change a 0 to false, amending commit >> 4fdeee7cd4c8f90ef765537b9346a195d9483ab5 (cpu: Move stop field to >> CPUState). >> >> Signed-off-by: Andreas Färber <afaerber@suse.de> >> --- >> For 1.5 I'm going for the least invasive change here. >> On qom-cpu-10 I'm preparing to replace each CPU loop with qemu_for_each_cpu(). >> >> cpus.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/cpus.c b/cpus.c >> index a2d92c7..c232265 100644 >> --- a/cpus.c >> +++ b/cpus.c >> @@ -974,9 +974,10 @@ void pause_all_vcpus(void) >> if (qemu_in_vcpu_thread()) { >> cpu_stop_current(); >> if (!kvm_enabled()) { >> + penv = first_cpu; >> while (penv) { >> CPUState *pcpu = ENV_GET_CPU(penv); >> - pcpu->stop = 0; >> + pcpu->stop = false; >> pcpu->stopped = true; >> penv = penv->next_cpu; >> } >> > > Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com> Thanks, applied to qom-cpu: https://github.com/afaerber/qemu-cpu/commits/qom-cpu Andreas
diff --git a/cpus.c b/cpus.c index a2d92c7..c232265 100644 --- a/cpus.c +++ b/cpus.c @@ -974,9 +974,10 @@ void pause_all_vcpus(void) if (qemu_in_vcpu_thread()) { cpu_stop_current(); if (!kvm_enabled()) { + penv = first_cpu; while (penv) { CPUState *pcpu = ENV_GET_CPU(penv); - pcpu->stop = 0; + pcpu->stop = false; pcpu->stopped = true; penv = penv->next_cpu; }
Due to a preceding while loop, no CPU would've been put into stopped state. Reinitialize the variable. This fixes commit d798e97456658ea7605303b7c69b04ec7df95c10 (Allow to use pause_all_vcpus from VCPU context) for non-KVM case. While at it, change a 0 to false, amending commit 4fdeee7cd4c8f90ef765537b9346a195d9483ab5 (cpu: Move stop field to CPUState). Signed-off-by: Andreas Färber <afaerber@suse.de> --- For 1.5 I'm going for the least invasive change here. On qom-cpu-10 I'm preparing to replace each CPU loop with qemu_for_each_cpu(). cpus.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)