From: "Michael S. Tsirkin" <mst@redhat.com>
To: Hendrik Wuethrich <whendrik@google.com>
Cc: qemu-devel@nongnu.org, eduardo@habkost.net,
richard.henderson@linaro.org, marcel.apfelbaum@gmail.com,
pbonzini@redhat.com, zhao1.liu@intel.com, xiaoyao.li@intel.com,
peternewman@google.com
Subject: Re: [PATCH v5 0/8] mulate Intel RDT features needed to mount ResCtrl in Linux
Date: Thu, 20 Feb 2025 09:50:19 -0500 [thread overview]
Message-ID: <20250220094956-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20241213172645.2751696-1-whendrik@google.com>
On Fri, Dec 13, 2024 at 05:26:37PM +0000, Hendrik Wuethrich wrote:
> From: Hendrik Wüthrich <whendrik@google.com>
>
> The aim of this patch series is to emulate Intel RDT features in order
> to make testing of the linux Resctrl subsystem possible with Qemu.
>
> A branch with the patches applied can be found at:
> https://github.com/Gray-Colors/Intel_RDT_patches_applied/tree/rdt_v5
>
> The changes made introduce the following features:
There was just my minor comment, are you going to post v6?
> * Feature enumeration for Intel RDT allocation.
> * Feature enumeration for Intel RDT monitoring.
> * Intel RDT monitoring system interface.
> * Intel RDT allocation system interface.
>
> By adding these features, a barebones implementation most of the RDT
> state and MSRs is introduced, which can be enabled through qemu
> command line flags.
> The features missing for a faithful recreation of RDT are CDP and
> non-linear MBA throttle, as well as the possibility to configure
> various values through the command line, as some properties can be
> different across different machines. For increased ease of use, the
> correct features should be automatically enabled on machines that
> support RDT functionality.
> The missing features mentioned above will be implemented in the
> following order:
>
> * Expand feature set for RDT allocation to include CDP and non-linear
> MBA throttle
> * Allow for command line configuration of some values, such as the L3
> CBM length
> * Automatically enable RDT on machines that officially support it.
>
> Will NOT be implemented
> * Tests to simulate interaction with the host by the guest
>
> Command line examples assuming entire patch series is applied (This
> requires a kernel with Resctrl enabled):
>
> To emulate Intel RDT features:
>
> Currently, it is necessary to force the RDT options on in qemu, as it is
> not automatically enabled for any machines. An example would be the
> following:
> -cpu Skylake-Server,+l3-cmt,+rdt-m,+rdt-a,+mba,+l3-cat,+l2-cat
> and
> -device rdt
>
> Just enabling RDT in qemu won't really help, though. The following
> option allows resctrl in the kernel:
> - Kernel options: rdt=mbmlocal,mbmtotal,cmt,mba,l2cat,l3cat
>
> To use Resctrl in the Qemu, please refer to:
> https://docs.kernel.org/arch/x86/resctrl.html
>
> V4 -> V5
> - rebase
> - fix feature bit names to all be in hex
>
> Hendrik Wüthrich (8):
> i386: Add Intel RDT device and State to config.
> i386: Add init and realize functionality for RDT device.
> i386: Add RDT functionality
> i386: Add RDT device interface through MSRs
> i386: Add CPUID enumeration for RDT
> i386: Add RDT feature flags.
> i386/cpu: Adjust CPUID level for RDT features
> i386/cpu: Adjust level for RDT on full_cpuid_auto_level
>
> hw/i386/Kconfig | 4 +
> hw/i386/meson.build | 1 +
> hw/i386/rdt.c | 286 +++++++++++++++++++++++++++
> include/hw/i386/rdt.h | 76 +++++++
> target/i386/cpu.c | 114 ++++++++++-
> target/i386/cpu.h | 24 +++
> target/i386/tcg/sysemu/misc_helper.c | 81 ++++++++
> 7 files changed, 584 insertions(+), 2 deletions(-)
> create mode 100644 hw/i386/rdt.c
> create mode 100644 include/hw/i386/rdt.h
>
> --
> 2.47.1.613.gc27f4b7a9f-goog
next prev parent reply other threads:[~2025-02-20 14:50 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-13 17:26 [PATCH v5 0/8] mulate Intel RDT features needed to mount ResCtrl in Linux Hendrik Wuethrich
2024-12-13 17:26 ` [PATCH v5 1/8] i386: Add Intel RDT device and State to config Hendrik Wuethrich
2025-02-20 15:41 ` Jonathan Cameron via
2025-02-28 8:40 ` Hendrik Wüthrich
2024-12-13 17:26 ` [PATCH v5 2/8] i386: Add init and realize functionality for RDT device Hendrik Wuethrich
2024-12-13 17:26 ` [PATCH v5 3/8] i386: Add RDT functionality Hendrik Wuethrich
2024-12-13 17:26 ` [PATCH v5 4/8] i386: Add RDT device interface through MSRs Hendrik Wuethrich
2024-12-13 17:26 ` [PATCH v5 5/8] i386: Add CPUID enumeration for RDT Hendrik Wuethrich
2024-12-13 17:26 ` [PATCH v5 6/8] i386: Add RDT feature flags Hendrik Wuethrich
2025-01-08 18:39 ` Michael S. Tsirkin
2025-01-15 14:55 ` Hendrik Wüthrich
2024-12-13 17:26 ` [PATCH v5 7/8] i386/cpu: Adjust CPUID level for RDT features Hendrik Wuethrich
2024-12-13 17:26 ` [PATCH v5 8/8] i386/cpu: Adjust level for RDT on full_cpuid_auto_level Hendrik Wuethrich
2025-01-08 18:35 ` Michael S. Tsirkin
2025-02-20 14:50 ` Michael S. Tsirkin [this message]
2025-02-20 15:38 ` [PATCH v5 0/8] mulate Intel RDT features needed to mount ResCtrl in Linux Hendrik Wüthrich
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=20250220094956-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=eduardo@habkost.net \
--cc=marcel.apfelbaum@gmail.com \
--cc=pbonzini@redhat.com \
--cc=peternewman@google.com \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=whendrik@google.com \
--cc=xiaoyao.li@intel.com \
--cc=zhao1.liu@intel.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;
as well as URLs for NNTP newsgroup(s).