From: Scott Wood <scottwood@freescale.com>
To: Alexander Graf <agraf@suse.de>
Cc: Mihai Caraman <mihai.caraman@freescale.com>,
kvm-ppc@vger.kernel.org, kvm@vger.kernel.org
Subject: Re: [PATCH 1/2] KVM: PPC: bookehv: Fix r8/r13 storing in level exception handler
Date: Thu, 26 Apr 2012 17:43:41 +0000 [thread overview]
Message-ID: <4F99894D.2000402@freescale.com> (raw)
In-Reply-To: <27452B3A-EB7D-421C-8F6F-D6FBA776AB86@suse.de>
On 04/26/2012 06:36 AM, Alexander Graf wrote:
>
> On 16.04.2012, at 16:08, Mihai Caraman wrote:
>
>> Guest r8 register is held in the scratch register and stored correctly,
>> so remove the instruction that clobbers it. Guest r13 was missing from vcpu,
>> store it there.
>>
>> Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com>
>> ---
>> arch/powerpc/kvm/bookehv_interrupts.S | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/arch/powerpc/kvm/bookehv_interrupts.S b/arch/powerpc/kvm/bookehv_interrupts.S
>> index 0d04bc9..0ca987d 100644
>> --- a/arch/powerpc/kvm/bookehv_interrupts.S
>> +++ b/arch/powerpc/kvm/bookehv_interrupts.S
>> @@ -264,10 +264,10 @@ _GLOBAL(kvmppc_handler_\intno\()_\srr1)
>> mfspr r6, \srr1
>> PPC_LL r4, GPR11(r8)
>> PPC_STL r7, VCPU_GPR(r7)(r11)
>> - PPC_STL r8, VCPU_GPR(r8)(r11)
>
> I'm not sure I can follow you here. The code that leads up to this is:
>
> #define NORMAL_EXCEPTION_PROLOG(intno) \
> mtspr SPRN_SPRG_WSCRATCH0, r10; /* save one register */ \
> mfspr r10, SPRN_SPRG_THREAD; \
> stw r11, THREAD_NORMSAVE(0)(r10); \
> stw r13, THREAD_NORMSAVE(2)(r10); \
> mfcr r13; /* save CR in r13 for now */\
> mfspr r11, SPRN_SRR1; \
> DO_KVM BOOKE_INTERRUPT_##intno SPRN_SRR1; \
See the subject line -- this is for level exceptions
(EXC_LEVEL_EXCEPTION_PROLOG), not normal exceptions.
-Scott
WARNING: multiple messages have this Message-ID (diff)
From: Scott Wood <scottwood@freescale.com>
To: Alexander Graf <agraf@suse.de>
Cc: Mihai Caraman <mihai.caraman@freescale.com>,
<kvm-ppc@vger.kernel.org>, <kvm@vger.kernel.org>
Subject: Re: [PATCH 1/2] KVM: PPC: bookehv: Fix r8/r13 storing in level exception handler
Date: Thu, 26 Apr 2012 12:43:41 -0500 [thread overview]
Message-ID: <4F99894D.2000402@freescale.com> (raw)
In-Reply-To: <27452B3A-EB7D-421C-8F6F-D6FBA776AB86@suse.de>
On 04/26/2012 06:36 AM, Alexander Graf wrote:
>
> On 16.04.2012, at 16:08, Mihai Caraman wrote:
>
>> Guest r8 register is held in the scratch register and stored correctly,
>> so remove the instruction that clobbers it. Guest r13 was missing from vcpu,
>> store it there.
>>
>> Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com>
>> ---
>> arch/powerpc/kvm/bookehv_interrupts.S | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/arch/powerpc/kvm/bookehv_interrupts.S b/arch/powerpc/kvm/bookehv_interrupts.S
>> index 0d04bc9..0ca987d 100644
>> --- a/arch/powerpc/kvm/bookehv_interrupts.S
>> +++ b/arch/powerpc/kvm/bookehv_interrupts.S
>> @@ -264,10 +264,10 @@ _GLOBAL(kvmppc_handler_\intno\()_\srr1)
>> mfspr r6, \srr1
>> PPC_LL r4, GPR11(r8)
>> PPC_STL r7, VCPU_GPR(r7)(r11)
>> - PPC_STL r8, VCPU_GPR(r8)(r11)
>
> I'm not sure I can follow you here. The code that leads up to this is:
>
> #define NORMAL_EXCEPTION_PROLOG(intno) \
> mtspr SPRN_SPRG_WSCRATCH0, r10; /* save one register */ \
> mfspr r10, SPRN_SPRG_THREAD; \
> stw r11, THREAD_NORMSAVE(0)(r10); \
> stw r13, THREAD_NORMSAVE(2)(r10); \
> mfcr r13; /* save CR in r13 for now */\
> mfspr r11, SPRN_SRR1; \
> DO_KVM BOOKE_INTERRUPT_##intno SPRN_SRR1; \
See the subject line -- this is for level exceptions
(EXC_LEVEL_EXCEPTION_PROLOG), not normal exceptions.
-Scott
next prev parent reply other threads:[~2012-04-26 17:43 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-16 14:08 [PATCH 1/2] KVM: PPC: bookehv: Fix r8/r13 storing in level exception handler Mihai Caraman
2012-04-16 14:08 ` Mihai Caraman
2012-04-16 14:08 ` [PATCH 2/2] KVM: PPC: bookehv: Use lwz/stw instead of PPC_LL/PPC_STL for 32-bit fields Mihai Caraman
2012-04-16 14:08 ` Mihai Caraman
2012-04-26 11:40 ` Alexander Graf
2012-04-26 11:40 ` Alexander Graf
2012-04-26 11:36 ` [PATCH 1/2] KVM: PPC: bookehv: Fix r8/r13 storing in level exception handler Alexander Graf
2012-04-26 11:36 ` Alexander Graf
2012-04-26 17:43 ` Scott Wood [this message]
2012-04-26 17:43 ` Scott Wood
2012-05-02 11:12 ` Alexander Graf
2012-05-02 11:12 ` Alexander Graf
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=4F99894D.2000402@freescale.com \
--to=scottwood@freescale.com \
--cc=agraf@suse.de \
--cc=kvm-ppc@vger.kernel.org \
--cc=kvm@vger.kernel.org \
--cc=mihai.caraman@freescale.com \
/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 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.