mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Tony Luck <tony.luck@intel.com>
To: Fenghua Yu <fenghuay@nvidia.com>,
	Reinette Chatre <reinette.chatre@intel.com>,
	Maciej Wieczor-Retman <maciej.wieczor-retman@intel.com>,
	Peter Newman <peternewman@google.com>,
	James Morse <james.morse@arm.com>,
	Babu Moger <babu.moger@amd.com>,
	Drew Fustini <dfustini@baylibre.com>,
	Dave Martin <Dave.Martin@arm.com>, Chen Yu <yu.c.chen@intel.com>,
	David E Box <david.e.box@intel.com>,
	x86@kernel.org
Cc: Christoph Hellwig <hch@infradead.org>,
	linux-kernel@vger.kernel.org, patches@lists.linux.dev,
	Tony Luck <tony.luck@intel.com>
Subject: [PATCH v8 00/16] Allow AET to use PMT as loadable module
Date: Mon, 15 Jun 2026 11:24:41 -0700	[thread overview]
Message-ID: <20260615182457.14725-1-tony.luck@intel.com> (raw)

Requiring INTEL_PMT_TELEMETRY=y to enable AET is a functional workaround
to enable enumeration of Application Energy Telemetry (AET) events, but
unacceptable to many users. It results in increased configration complexity,
increased kernel memory footprint and inability to patch problems by unloading
a module and loading an updated version.

Add a registration function to the AET code that can be used by
INTEL_PMT_TELEMETRY to provide the enumeration functions.

INTEL_PMT_TELEMETRY can be loaded/unloaded independently of
resctrl file system mount/unmount. Perform enumeration on
every mount and cleanup on every unmount.

Signed-off-by: Tony Luck <tony.luck@intel.com>

---

Changes since v7:
Link: https://lore.kernel.org/all/20260601195632.15876-1-tony.luck@intel.com/

Rebased to v7.1

Patches 1-4 updated from latest (v5) series from Reinette:
Link: https://lore.kernel.org/all/cover.1781029125.git.reinette.chatre@intel.co
Those four patches had their own review and (hopefully) will be included
in TIP tree during this v7.2-rc* cycle.

Patch 5 is new to resolve the issue that the PMT driver could be unbound
from the pmt_telemtry module which would unmap all the MMIO register
space. Discussed offline with David Box, but needs his Ack/Review tag
here.

Patches 6-14 and 16 all have updates based on review comments see the
individual patches for change log after the "---"

Reinette Chatre (1):
  fs/resctrl: Fix deadlock on errors during mount

Tony Luck (15):
  fs/resctrl: Move functions to avoid forward references in subsequent
    fixes
  fs/resctrl: Free mon_data structures on rdt_get_tree() failure
  fs/resctrl: Fix use-after-free during unmount
  platform/x86/intel/pmt: Prevent unbind of PMT telemetry driver
  fs/resctrl: Remove redundant calls to resctrl_arch_mon_capable()
  x86/resctrl: Honor rdt=perf option to force enable AET perf events
  fs/resctrl: Add interface to disable a monitor event
  x86/resctrl: Drop global 'rdt_mon_capable' flag
  arm,x86,fs/resctrl: Handle change in number of RMIDs on each mount
  x86/resctrl: Add PMT registration API for AET enumeration callbacks
  platform/x86/intel/pmt: Register enumeration functions with resctrl
  arm,x86/resctrl: Resolve INTEL_PMT_TELEMETRY symbols at runtime
  fs/resctrl: Call architecture hooks for every mount/unmount
  x86/resctrl: Simplify Kconfig options for resctrl
  Documentation/filesystems/resctrl: Add footnote for telemetry fstab
    mount caveat

 Documentation/filesystems/resctrl.rst      |   7 +-
 include/linux/resctrl.h                    |  47 ++-
 arch/x86/include/asm/resctrl.h             |  21 +-
 arch/x86/kernel/cpu/resctrl/internal.h     |  24 +-
 arch/x86/kernel/cpu/resctrl/core.c         |  69 ++-
 arch/x86/kernel/cpu/resctrl/intel_aet.c    |  91 +++-
 arch/x86/kernel/cpu/resctrl/monitor.c      |   6 -
 drivers/platform/x86/intel/pmt/telemetry.c |   9 +
 drivers/resctrl/mpam_resctrl.c             |   9 +
 fs/resctrl/monitor.c                       |  93 +++--
 fs/resctrl/rdtgroup.c                      | 464 ++++++++++++---------
 arch/x86/Kconfig                           |  15 +-
 arch/x86/kernel/cpu/resctrl/Makefile       |   2 +-
 13 files changed, 565 insertions(+), 292 deletions(-)


base-commit: 8cd9520d35a6c38db6567e97dd93b1f11f185dc6
-- 
2.54.0


             reply	other threads:[~2026-06-15 18:25 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-15 18:24 Tony Luck [this message]
2026-06-15 18:24 ` [PATCH v8 01/16] fs/resctrl: Move functions to avoid forward references in subsequent fixes Tony Luck
2026-06-15 18:24 ` [PATCH v8 02/16] fs/resctrl: Free mon_data structures on rdt_get_tree() failure Tony Luck
2026-06-15 18:24 ` [PATCH v8 03/16] fs/resctrl: Fix use-after-free during unmount Tony Luck
2026-06-15 18:24 ` [PATCH v8 04/16] fs/resctrl: Fix deadlock on errors during mount Tony Luck
2026-06-15 18:24 ` [PATCH v8 05/16] platform/x86/intel/pmt: Prevent unbind of PMT telemetry driver Tony Luck
2026-06-15 18:24 ` [PATCH v8 06/16] fs/resctrl: Remove redundant calls to resctrl_arch_mon_capable() Tony Luck
2026-06-15 18:24 ` [PATCH v8 07/16] x86/resctrl: Honor rdt=perf option to force enable AET perf events Tony Luck
2026-06-15 18:24 ` [PATCH v8 08/16] fs/resctrl: Add interface to disable a monitor event Tony Luck
2026-06-15 18:24 ` [PATCH v8 09/16] x86/resctrl: Drop global 'rdt_mon_capable' flag Tony Luck
2026-06-15 18:24 ` [PATCH v8 10/16] arm,x86,fs/resctrl: Handle change in number of RMIDs on each mount Tony Luck
2026-06-15 18:24 ` [PATCH v8 11/16] x86/resctrl: Add PMT registration API for AET enumeration callbacks Tony Luck
2026-06-15 18:24 ` [PATCH v8 12/16] platform/x86/intel/pmt: Register enumeration functions with resctrl Tony Luck
2026-06-15 18:24 ` [PATCH v8 13/16] arm,x86/resctrl: Resolve INTEL_PMT_TELEMETRY symbols at runtime Tony Luck
2026-06-15 18:24 ` [PATCH v8 14/16] fs/resctrl: Call architecture hooks for every mount/unmount Tony Luck
2026-06-15 18:24 ` [PATCH v8 15/16] x86/resctrl: Simplify Kconfig options for resctrl Tony Luck
2026-06-15 18:24 ` [PATCH v8 16/16] Documentation/filesystems/resctrl: Add footnote for telemetry fstab mount caveat Tony Luck
2026-06-16 17:50 ` [PATCH v8 00/16] Allow AET to use PMT as loadable module Luck, Tony

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=20260615182457.14725-1-tony.luck@intel.com \
    --to=tony.luck@intel.com \
    --cc=Dave.Martin@arm.com \
    --cc=babu.moger@amd.com \
    --cc=david.e.box@intel.com \
    --cc=dfustini@baylibre.com \
    --cc=fenghuay@nvidia.com \
    --cc=hch@infradead.org \
    --cc=james.morse@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maciej.wieczor-retman@intel.com \
    --cc=patches@lists.linux.dev \
    --cc=peternewman@google.com \
    --cc=reinette.chatre@intel.com \
    --cc=x86@kernel.org \
    --cc=yu.c.chen@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

Powered by JetHome