public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: David Daney <ddaney.cavm@gmail.com>
To: Sanjay Lal <sanjayl@kymasys.com>
Cc: kvm@vger.kernel.org, linux-mips@linux-mips.org,
	Ralf Baechle <ralf@linux-mips.org>,
	Gleb Natapov <gleb@redhat.com>,
	Marcelo Tosatti <mtosatti@redhat.com>
Subject: Re: [PATCH 00/18] KVM/MIPS32: Support for the new Virtualization ASE (VZ-ASE)
Date: Mon, 20 May 2013 10:29:13 -0700	[thread overview]
Message-ID: <519A5D69.3070909@gmail.com> (raw)
In-Reply-To: <456B70C6-A896-4B94-B8EF-DE6ED26CE859@kymasys.com>

On 05/20/2013 09:58 AM, Sanjay Lal wrote:
>
> On May 20, 2013, at 8:50 AM, David Daney wrote:
>
>> On 05/18/2013 10:47 PM, Sanjay Lal wrote:
>>> The following patch set adds support for the recently announced virtualization
>>> extensions for the MIPS32 architecture and allows running unmodified kernels in
>>> Guest Mode.
>>>
>>> For more info please refer to :
>>> 	MIPS Document #: MD00846
>>> 	Volume IV-i: Virtualization Module of the MIPS32 Architecture
>>>
>>> which can be accessed @: http://www.mips.com/auth/MD00846-2B-VZMIPS32-AFP-01.03.pdf
>>>
>>> The patch is agains Linux-3.10-rc1.
>>>
>>> KVM/MIPS now supports 2 modes of operation:
>>>
>>> (1) VZ mode: Unmodified kernels running in Guest Mode.  The processor now provides
>>>      an almost complete COP0 context in Guest mode. This greatly reduces VM exits.
>>
>> Two questions:
>>
>> 1) How are you handling not clobbering the Guest K0/K1 registers when a Root exception occurs?  It is not obvious to me from inspecting the code.
>>
>> 2) What environment are you using to test this stuff?
>>
>> David Daney
>>
>
> (1) Newer versions of the MIPS architecture define scratch registers for just this purpose, but since we have to support standard MIPS32R2 processors, we use the DDataLo Register (CP0 Register 28, Select 3) as a scratch register to save k0 and save k1 @ a known offset from EBASE.
>

Right, I understand that.  But I am looking at arch/mips/mm/tlbex.c, and 
I don't see the code that does that for TLBRefill exceptions.

Where is it done for interrupts?  I would expect code in 
arch/mips/kernel/genex.S and/or stackframe.h would handle this.  But I 
don't see where it is.

Am I missing something?

David Daney


  reply	other threads:[~2013-05-20 17:29 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-19  5:47 [PATCH 00/18] KVM/MIPS32: Support for the new Virtualization ASE (VZ-ASE) Sanjay Lal
2013-05-19  5:47 ` [PATCH 01/18] Revert "MIPS: microMIPS: Support dynamic ASID sizing." Sanjay Lal
2013-05-19  5:47 ` [PATCH 02/18] Revert "MIPS: Allow ASID size to be determined at boot time." Sanjay Lal
2013-05-19  5:47 ` [PATCH 03/18] KVM/MIPS32: Export min_low_pfn Sanjay Lal
2013-05-19  5:47 ` [PATCH 04/18] KVM/MIPS32-VZ: MIPS VZ-ASE related register defines and helper macros Sanjay Lal
2013-05-19  5:47 ` [PATCH 05/18] KVM/MIPS32-VZ: VZ-ASE assembler wrapper functions to set GuestIDs Sanjay Lal
2013-05-19 13:36   ` Sergei Shtylyov
2013-05-19  5:47 ` [PATCH 06/18] KVM/MIPS32-VZ: VZ-ASE related callbacks to handle guest exceptions that trap to the Root context Sanjay Lal
2013-05-28 15:04   ` Paolo Bonzini
2013-05-30 18:35     ` Sanjay Lal
2013-05-28 16:14   ` Paolo Bonzini
2013-05-30 18:35     ` Sanjay Lal
2013-05-30 20:11       ` Paolo Bonzini
2013-05-31  1:56         ` Sanjay Lal
2013-05-19  5:47 ` [PATCH 07/18] KVM/MIPS32: VZ-ASE related CPU feature flags and options Sanjay Lal
2013-05-19  5:47 ` [PATCH 08/18] KVM/MIPS32-VZ: Entry point for trampolining to the guest and trap handlers Sanjay Lal
2013-05-28 14:43   ` Paolo Bonzini
2013-05-19  5:47 ` [PATCH 09/18] KVM/MIPS32-VZ: Add support for CONFIG_KVM_MIPS_VZ option Sanjay Lal
2013-05-19  5:47 ` [PATCH 10/18] KVM/MIPS32-VZ: Add API for VZ-ASE Capability Sanjay Lal
2013-05-28 16:34   ` Paolo Bonzini
2013-05-30 17:07     ` David Daney
2013-05-30 17:51       ` Paolo Bonzini
2013-05-30 18:35         ` David Daney
2013-05-30 18:30       ` Sanjay Lal
2013-05-19  5:47 ` [PATCH 11/18] KVM/MIPS32-VZ: VZ: Handle Guest TLB faults that are handled in Root context Sanjay Lal
2013-05-19  5:47 ` [PATCH 12/18] KVM/MIPS32-VZ: VM Exit Stats, add VZ exit reasons Sanjay Lal
2013-05-19  5:47 ` [PATCH 13/18] KVM/MIPS32-VZ: Top level handler for Guest faults Sanjay Lal
2013-05-19  5:47 ` [PATCH 14/18] KVM/MIPS32-VZ: Guest exception batching support Sanjay Lal
2013-05-19  5:47 ` [PATCH 15/18] KVM/MIPS32: Add dummy trap handler to catch unexpected exceptions and dump out useful info Sanjay Lal
2013-05-19  5:47 ` [PATCH 16/18] KVM/MIPS32-VZ: Add VZ-ASE support to KVM/MIPS data structures Sanjay Lal
2013-05-28 15:24   ` Paolo Bonzini
2013-05-19  5:47 ` [PATCH 17/18] KVM/MIPS32: Revert to older method for accessing ASID parameters Sanjay Lal
2013-05-19  5:47 ` [PATCH 18/18] KVM/MIPS32-VZ: Dump out additional info about VZ features as part of /proc/cpuinfo Sanjay Lal
2013-05-20 15:50 ` [PATCH 00/18] KVM/MIPS32: Support for the new Virtualization ASE (VZ-ASE) David Daney
2013-05-20 16:58   ` Sanjay Lal
2013-05-20 17:29     ` David Daney [this message]
2013-05-20 17:34       ` Sanjay Lal
2013-05-20 18:36     ` Maciej W. Rozycki
2013-05-20 18:58       ` David Daney
2013-05-27 12:45         ` Maciej W. Rozycki

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=519A5D69.3070909@gmail.com \
    --to=ddaney.cavm@gmail.com \
    --cc=gleb@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-mips@linux-mips.org \
    --cc=mtosatti@redhat.com \
    --cc=ralf@linux-mips.org \
    --cc=sanjayl@kymasys.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox