On Thu, Feb 20, 2025 at 3:50 PM Michael S. Tsirkin <m...@redhat.com> wrote:
>
> On Fri, Dec 13, 2024 at 05:26:37PM +0000, Hendrik Wuethrich wrote:
> > From: Hendrik Wüthrich <whend...@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?

I found out about some larger issues, mostly in the mapping of RDT
state to cores, and am rewriting some parts (mostly of the rdt.c file).
I hope to be able to send something out in the coming week.

>
> > * 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
>

Reply via email to