Linux virtualization list
 help / color / mirror / Atom feed
From: Dave Hansen <dave.hansen@linux.intel.com>
To: linux-kernel@vger.kernel.org
Cc: Thomas Gleixner <tglx@kernel.org>, Ingo Molnar <mingo@redhat.com>,
	Borislav Petkov <bp@alien8.de>,
	x86@kernel.org, Juergen Gross <jgross@suse.com>,
	virtualization@lists.linux.dev,
	Dave Hansen <dave.hansen@linux.intel.com>
Subject: [PATCH v2 0/8] x86/msr: Consolidate native/paravirt MSR functions
Date: Wed, 29 Apr 2026 11:45:17 -0700	[thread overview]
Message-ID: <20260429184517.7E078510@davehans-spike.ostc.intel.com> (raw)

Changes from v1:
 - Remove "raw_" names. Just use "paravirt_" in the generic code.

I'm thinking I'll just apply this in the coming days if nobody
screams too loudly.

--

This is old cruft, but it appears that having two copies of these
MSR functions is enabling warnings to creep in[1].

I know there's also been some work to pare down the XXL code, but
it's obviously not merged yet and this is a good baby step.

Create helpers that both paravirt and native can use in common code
and remove the paravirt implementations of the helpers. This reduces
the amount of logic that is duplicated in the paravirt code.

The wonky thing about this solution is that it has the common code
always make literal "paravirt_" calls, even when paravirt is not in
use for MSRs. In that case, the calls just go directly to the
"native_" functions via #defines.

Conceptually:
 -   native: The bare-metal implementation. Might not be usable under
	     paravirt XXL.
 - paravirt: Call the native version directly if paravirt is compiled
 	     out. Call into paravirt ops when available, which might
	     ultimately call a native implementation.

1. https://lore.kernel.org/all/20260319152210.210854-1-aldocontelk@gmail.com/

 msr.h      |  124 +++++++++++++++++++++++++++++++------------------------------
 paravirt.h |   44 ---------------------
 2 files changed, 65 insertions(+), 103 deletions(-)

             reply	other threads:[~2026-04-29 18:45 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-29 18:45 Dave Hansen [this message]
2026-04-29 18:45 ` [PATCH v2 1/8] x86/msr: Use paravirt "calls" in common code Dave Hansen
2026-04-29 18:45 ` [PATCH v2 2/8] x86/msr: Consolidate rdmsr() definitions Dave Hansen
2026-05-06  2:03   ` Yan Zhao
2026-05-06 10:25     ` Yan Zhao
2026-05-06 11:09       ` Jürgen Groß
2026-05-07  8:21         ` Yan Zhao
2026-04-29 18:45 ` [PATCH v2 3/8] x86/msr: Consolidate rdmsr_safe() implementations Dave Hansen
2026-04-30 19:43   ` Maciej Wieczor-Retman
2026-04-29 18:45 ` [PATCH v2 4/8] x86/msr: Consolidate rdmsrq() implementations Dave Hansen
2026-04-29 18:45 ` [PATCH v2 5/8] x86/msr: Consolidate {rd,wr}msr[q]_safe() implementations Dave Hansen
2026-04-29 18:45 ` [PATCH v2 6/8] x86/msr: Consolidate rdpmc() implementations Dave Hansen
2026-04-29 18:45 ` [PATCH v2 7/8] x86/msr: Remove old crusty comment Dave Hansen
2026-04-29 18:45 ` [PATCH v2 8/8] x86/msr: Remove duplicate #include Dave Hansen
2026-04-30  7:20   ` Jürgen Groß
2026-04-30 17:42     ` Dave Hansen
2026-04-30 19:22       ` Jürgen Groß
2026-04-30  7:21 ` [PATCH v2 0/8] x86/msr: Consolidate native/paravirt MSR functions Jürgen Groß

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=20260429184517.7E078510@davehans-spike.ostc.intel.com \
    --to=dave.hansen@linux.intel.com \
    --cc=bp@alien8.de \
    --cc=jgross@suse.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=tglx@kernel.org \
    --cc=virtualization@lists.linux.dev \
    --cc=x86@kernel.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