All of lore.kernel.org
 help / color / mirror / Atom feed
From: James Hogan <james.hogan@imgtec.com>
To: "Paolo Bonzini (Redhat)" <pbonzini@redhat.com>,
	"Marcelo Tosatti (Redhat)" <mtosatti@redhat.com>,
	kvm <kvm@vger.kernel.org>, Gleb Natapov <gleb@kernel.org>
Cc: linux-mips <linux-mips@linux-mips.org>,
	"Ralf (LMO)" <ralf@linux-mips.org>, Paul <paul.burton@imgtec.com>
Subject: [GIT PULL] MIPS KVM Guest FPU & SIMD (MSA) Support for 4.1
Date: Mon, 30 Mar 2015 11:07:01 +0100	[thread overview]
Message-ID: <55192045.3080302@imgtec.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 4478 bytes --]

Hi Paolo, Marcelo,

Here is the MIPS guest FPU & SIMD (MSA) work. I've based this on
kvm/queue as of Friday, and it also pulls in some MIPS FP/MSA fixes from
a branch in Ralf's MIPS tree. Hope that's okay.

Please pull

Thanks
James

The following changes since commit b3a2a9076d3149781c8622d6a98a51045ff946e4:

  KVM: nVMX: Add support for rdtscp (2015-03-26 22:33:48 -0300)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/kvm-mips.git tags/kvm_mips_20150327

for you to fetch changes up to d952bd070f79b6dcbad52c03dbc41cbc8ba086c8:

  MIPS: KVM: Wire up MSA capability (2015-03-27 21:25:22 +0000)

----------------------------------------------------------------
MIPS KVM Guest FPU & SIMD (MSA) Support

Add guest FPU and MIPS SIMD Architecture (MSA) support to MIPS KVM, by
enabling the host FPU/MSA while in guest mode. This adds two new KVM
capabilities, KVM_CAP_MIPS_FPU & KVM_CAP_MIPS_MSA, and supports the 3 FP
register modes (FR=0, FR=1, FRE=1), and 128-bit MSA vector registers,
with lazy FPU/MSA context save and restore.

Some required MIPS FP/MSA fixes are merged in from a branch in the MIPS
tree first.

----------------------------------------------------------------
James Hogan (24):
      MIPS: lose_fpu(): Disable FPU when MSA enabled
      Revert "MIPS: Don't assume 64-bit FP registers for context switch"
      MIPS: MSA: Fix big-endian FPR_IDX implementation
      Merge branch '4.1-fp' of git://git.linux-mips.org/pub/scm/ralf/upstream-sfr into kvm_mips_queue
      MIPS: KVM: Handle MSA Disabled exceptions from guest
      MIPS: Clear [MSA]FPE CSR.Cause after notify_die()
      MIPS: KVM: Handle TRAP exceptions from guest kernel
      MIPS: KVM: Implement PRid CP0 register access
      MIPS: KVM: Sort kvm_mips_get_reg() registers
      MIPS: KVM: Drop pr_info messages on init/exit
      MIPS: KVM: Clean up register definitions a little
      MIPS: KVM: Simplify default guest Config registers
      MIPS: KVM: Add Config4/5 and writing of Config registers
      MIPS: KVM: Add vcpu_get_regs/vcpu_set_regs callback
      MIPS: KVM: Add base guest FPU support
      MIPS: KVM: Emulate FPU bits in COP0 interface
      MIPS: KVM: Add FP exception handling
      MIPS: KVM: Expose FPU registers
      MIPS: KVM: Wire up FPU capability
      MIPS: KVM: Add base guest MSA support
      MIPS: KVM: Emulate MSA bits in COP0 interface
      MIPS: KVM: Add MSA exception handling
      MIPS: KVM: Expose MSA registers
      MIPS: KVM: Wire up MSA capability

Paul Burton (8):
      MIPS: Push .set mips64r* into the functions needing it
      MIPS: assume at as source/dest of MSA copy/insert instructions
      MIPS: remove MSA macro recursion
      MIPS: wrap cfcmsa & ctcmsa accesses for toolchains with MSA support
      MIPS: clear MSACSR cause bits when handling MSA FP exception
      MIPS: Ensure FCSR cause bits are clear after invoking FPU emulator
      MIPS: prevent FP context set via ptrace being discarded
      MIPS: disable FPU if the mode is unsupported

 Documentation/virtual/kvm/api.txt   |  54 +++++
 arch/mips/include/asm/asmmacro-32.h | 128 +++++-----
 arch/mips/include/asm/asmmacro.h    | 218 ++++++++++-------
 arch/mips/include/asm/fpu.h         |  20 +-
 arch/mips/include/asm/kdebug.h      |   3 +-
 arch/mips/include/asm/kvm_host.h    | 125 +++++++---
 arch/mips/include/asm/processor.h   |   2 +-
 arch/mips/include/uapi/asm/kvm.h    | 160 +++++++-----
 arch/mips/kernel/asm-offsets.c      | 105 +++-----
 arch/mips/kernel/genex.S            |  15 +-
 arch/mips/kernel/ptrace.c           |  30 ++-
 arch/mips/kernel/r4k_fpu.S          |   2 +-
 arch/mips/kernel/traps.c            |  35 ++-
 arch/mips/kvm/Makefile              |   8 +-
 arch/mips/kvm/emulate.c             | 332 ++++++++++++++++++++++++-
 arch/mips/kvm/fpu.S                 | 122 ++++++++++
 arch/mips/kvm/locore.S              |  38 +++
 arch/mips/kvm/mips.c                | 472 +++++++++++++++++++++++++++++++++++-
 arch/mips/kvm/msa.S                 | 161 ++++++++++++
 arch/mips/kvm/stats.c               |   4 +
 arch/mips/kvm/tlb.c                 |   6 +
 arch/mips/kvm/trap_emul.c           | 199 ++++++++++++++-
 include/uapi/linux/kvm.h            |   2 +
 23 files changed, 1876 insertions(+), 365 deletions(-)
 create mode 100644 arch/mips/kvm/fpu.S
 create mode 100644 arch/mips/kvm/msa.S


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

             reply	other threads:[~2015-03-30 10:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-30 10:07 James Hogan [this message]
2015-03-30 14:36 ` [GIT PULL] MIPS KVM Guest FPU & SIMD (MSA) Support for 4.1 Paolo Bonzini

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=55192045.3080302@imgtec.com \
    --to=james.hogan@imgtec.com \
    --cc=gleb@kernel.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-mips@linux-mips.org \
    --cc=mtosatti@redhat.com \
    --cc=paul.burton@imgtec.com \
    --cc=pbonzini@redhat.com \
    --cc=ralf@linux-mips.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 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.