mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Shivansh Dhiman <shivansh.dhiman@amd.com>
To: <seanjc@google.com>, <pbonzini@redhat.com>,
	<linux-kernel@vger.kernel.org>, <kvm@vger.kernel.org>
Cc: <tglx@linutronix.de>, <mingo@redhat.com>, <bp@alien8.de>,
	<dave.hansen@linux.intel.com>, <x86@kernel.org>, <hpa@zytor.com>,
	<xin@zytor.com>, <nikunj.dadhania@amd.com>,
	<santosh.shukla@amd.com>
Subject: [PATCH 0/7] KVM: SVM: Enable FRED support
Date: Thu, 29 Jan 2026 06:36:46 +0000	[thread overview]
Message-ID: <20260129063653.3553076-1-shivansh.dhiman@amd.com> (raw)

This series adds SVM support for FRED (Flexible Return and Event Delivery)
virtualization in KVM.

FRED introduces simplified privilege level transitions to replace IDT-based
event delivery and IRET returns, providing lower latency event handling while
ensuring complete supervisor context on delivery and full user context on
return. FRED defines event delivery for both ring 3->0 and ring 0->0
transitions, and introduces ERETU for returning to ring 3 and ERETS for
remaining in ring 0.

AMD hardware extends the VMCB to support FRED virtualization with dedicated
save area fields for FRED MSRs (RSP0-3, SSP1-3, STKLVLS, CONFIG) and control
fields for event injection data (EXITINTDATA, EVENTINJDATA).

The implementation spans seven patches. The important changes are:

1) Extend VMCB structures with FRED fields mentioned above and disable MSR
   interception for FRED-enabled guests to avoid unnecessary VM exits.

2) Support for nested exceptions where we populate event injection data
   when delivering exceptions like page faults and debug traps. 

This series is based on top of FRED support for VMX patchset [1],
patches 1-17. The VMX patchset was rebased on top of v6.18.0 kernel.

[1] https://lore.kernel.org/kvm/20251026201911.505204-1-xin@zytor.com

Regards,
Shivansh
---
Neeraj Upadhyay (5):
  KVM: SVM: Initialize FRED VMCB fields
  KVM: SVM: Disable interception of FRED MSRs for FRED supported guests
  KVM: SVM: Save restore FRED_RSP0 for FRED supported guests
  KVM: SVM: Populate FRED event data on event injection
  KVM: SVM: Support FRED nested exception injection

Shivansh Dhiman (2):
  KVM: SVM: Dump FRED context in dump_vmcb()
  KVM: SVM: Enable save/restore of FRED MSRs

 arch/x86/include/asm/svm.h |  35 ++++++++++-
 arch/x86/kvm/svm/svm.c     | 116 +++++++++++++++++++++++++++++++++++--
 2 files changed, 144 insertions(+), 7 deletions(-)


base-commit: f76e83ecf6bce6d3793f828d92170b69e636f3c9
-- 
2.43.0


             reply	other threads:[~2026-01-29  6:37 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-29  6:36 Shivansh Dhiman [this message]
2026-01-29  6:36 ` [PATCH 1/7] KVM: SVM: Initialize FRED VMCB fields Shivansh Dhiman
2026-03-07  1:58   ` Sean Christopherson
2026-03-09 17:46     ` Shivansh Dhiman
2026-03-09 18:57       ` Sean Christopherson
2026-03-11  4:18         ` Shivansh Dhiman
2026-03-27  6:41       ` Shivansh Dhiman
2026-01-29  6:36 ` [PATCH 2/7] KVM: SVM: Disable interception of FRED MSRs for FRED supported guests Shivansh Dhiman
2026-03-07  2:10   ` Sean Christopherson
2026-03-09 17:47     ` Shivansh Dhiman
2026-01-29  6:36 ` [PATCH 3/7] KVM: SVM: Save restore FRED_RSP0 " Shivansh Dhiman
2026-03-05 20:37   ` Shivansh Dhiman
2026-01-29  6:36 ` [PATCH 4/7] KVM: SVM: Populate FRED event data on event injection Shivansh Dhiman
2026-03-06 11:31   ` Paolo Bonzini
2026-03-09 19:47     ` Shivansh Dhiman
2026-01-29  6:36 ` [PATCH 5/7] KVM: SVM: Support FRED nested exception injection Shivansh Dhiman
2026-03-07  2:07   ` Sean Christopherson
2026-03-10 15:56     ` Shivansh Dhiman
2026-03-10 16:20       ` Sean Christopherson
2026-03-11  4:12         ` Shivansh Dhiman
2026-01-29  6:36 ` [PATCH 6/7] KVM: SVM: Dump FRED context in dump_vmcb() Shivansh Dhiman
2026-03-07  2:03   ` Sean Christopherson
2026-03-09 19:57     ` Shivansh Dhiman
2026-01-29  6:36 ` [PATCH 7/7] KVM: SVM: Enable save/restore of FRED MSRs Shivansh Dhiman
2026-03-07  2:14   ` Sean Christopherson
2026-03-09 18:20     ` Shivansh Dhiman
2026-08-10  8:39     ` Shivansh Dhiman
2026-08-12 23:27       ` Sean Christopherson
2026-08-13  8:19         ` Nikunj A. Dadhania
2026-08-13 23:47           ` Sean Christopherson
2026-08-14  3:07             ` Nikunj A. Dadhania
2026-08-14 16:57               ` Sean Christopherson
2026-08-19 12:08         ` Shivansh Dhiman
2026-08-21 13:28           ` Sean Christopherson
2026-08-24  6:30             ` Shivansh Dhiman
2026-02-06  9:22 ` [PATCH 0/7] KVM: SVM: Enable FRED support Shivansh Dhiman
2026-02-11  0:53   ` Andrew Cooper
2026-03-06  9:33     ` Shivansh Dhiman
2026-03-03 17:58 ` Shivansh Dhiman

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=20260129063653.3553076-1-shivansh.dhiman@amd.com \
    --to=shivansh.dhiman@amd.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=nikunj.dadhania@amd.com \
    --cc=pbonzini@redhat.com \
    --cc=santosh.shukla@amd.com \
    --cc=seanjc@google.com \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    --cc=xin@zytor.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

all inboxes | Powered by JetHome®