qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Diana Craciun <diana.craciun@freescale.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "kvmarm@lists.cs.columbia.edu" <kvmarm@lists.cs.columbia.edu>,
	"patches@apm.com" <patches@apm.com>,
	QEMU Developers <qemu-devel@nongnu.org>,
	Pranavkumar Sawargaonkar <pranavkumar@linaro.org>
Subject: Re: [Qemu-devel] [RFC PATCH V5 7/8] target-arm: Implement kvm_arch_reset_vcpu() for KVM ARM64
Date: Thu, 15 May 2014 18:12:13 +0300	[thread overview]
Message-ID: <5374D94D.1030609@freescale.com> (raw)
In-Reply-To: <CAFEAcA_MhE70Yo5j0BsbQ4iRZF3xHiFQtzUA-ChHT7tueEZpAA@mail.gmail.com>

On 05/14/2014 06:42 PM, Peter Maydell wrote:
> On 12 May 2014 13:37, Pranavkumar Sawargaonkar <pranavkumar@linaro.org> wrote:
>> To implement kvm_arch_reset_vcpu(), we simply re-init the VCPU
>> using kvm_arm_vcpu_init() so that all registers of VCPU are set
>> to their reset values by in-kernel KVM code.
>>
>> Signed-off-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org>
>> Signed-off-by: Anup Patel <anup.patel@linaro.org>
>> ---
>>   target-arm/kvm64.c |    4 ++++
>>   1 file changed, 4 insertions(+)
>>
>> diff --git a/target-arm/kvm64.c b/target-arm/kvm64.c
>> index 917d256..6e988f3 100644
>> --- a/target-arm/kvm64.c
>> +++ b/target-arm/kvm64.c
>> @@ -269,4 +269,8 @@ int kvm_arch_get_registers(CPUState *cs)
>>
>>   void kvm_arch_reset_vcpu(CPUState *cs)
>>   {
>> +    /* Re-init VCPU so that all registers are set to
>> +     * their respective reset values.
>> +     */
>> +    kvm_arm_vcpu_init(cs);
>>   }
> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
>
> There is a cleanup we can make which makes this the
> common reset function for both 32 and 64 bit, but let's
> not tangle that up with this patchseries.

It is not just cleanup, on 32 bit the reset is not working properly as 
it is currently implemented. The reason is that the secondary cores fail 
to boot because the "cpu->arch.pause" (to mark the VCPU as paused) is 
not set in KVM because the KVM_ARM_VCPU_INIT ioctl is not called on reset.

I can make the changes to re-initialize the VCPU also for 32 bit once 
these patches are final.

Diana

  reply	other threads:[~2014-05-15 15:12 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-12 12:37 [Qemu-devel] [RFC PATCH V5 0/8] PSCI v0.2 support for KVM ARM/ARM64 Pranavkumar Sawargaonkar
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 1/8] update-linux-headers.sh: Add psci.h to linux header sync-up script Pranavkumar Sawargaonkar
2014-05-14 15:16   ` Peter Maydell
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 2/8] linux-headers: Update KVM headers from linux-next tag next-20140508 Pranavkumar Sawargaonkar
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 3/8] kvm: Handle exit reason KVM_EXIT_SYSTEM_EVENT Pranavkumar Sawargaonkar
2014-05-14 15:17   ` Peter Maydell
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 4/8] target-arm/kvm-const.h: Add QEMU_KVM_CAP_ARM_PSCI_0_2 define Pranavkumar Sawargaonkar
2014-05-14 16:42   ` Peter Maydell
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 5/8] target-arm: Common kvm_arm_vcpu_init() for KVM ARM and KVM ARM64 Pranavkumar Sawargaonkar
2014-05-14 15:30   ` Peter Maydell
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 6/8] target-arm: Enable KVM_ARM_VCPU_PSCI_0_2 feature when possible Pranavkumar Sawargaonkar
2014-05-14 16:46   ` Peter Maydell
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 7/8] target-arm: Implement kvm_arch_reset_vcpu() for KVM ARM64 Pranavkumar Sawargaonkar
2014-05-14 15:42   ` Peter Maydell
2014-05-15 15:12     ` Diana Craciun [this message]
2014-05-12 12:37 ` [Qemu-devel] [RFC PATCH V5 8/8] hw/arm/virt: Use PSCI v0.2 compatible when kernel supports it Pranavkumar Sawargaonkar
2014-05-14 16:41   ` Peter Maydell
2014-05-14 16:50 ` [Qemu-devel] [RFC PATCH V5 0/8] PSCI v0.2 support for KVM ARM/ARM64 Peter Maydell

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=5374D94D.1030609@freescale.com \
    --to=diana.craciun@freescale.com \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=patches@apm.com \
    --cc=peter.maydell@linaro.org \
    --cc=pranavkumar@linaro.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: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).