From: "Arnd Bergmann" <arnd@arndb.de>
To: "Linus Walleij" <linusw@kernel.org>,
"Jonathan Cameron" <jonathan.cameron@huawei.com>
Cc: "Yushan Wang" <wangyushan12@huawei.com>,
"Alexandre Belloni" <alexandre.belloni@bootlin.com>,
"Drew Fustini" <fustini@kernel.org>,
"Krzysztof Kozlowski" <krzk@kernel.org>,
"Linus Walleij" <linus.walleij@linaro.org>,
"Will Deacon" <will@kernel.org>,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, fanghao11@huawei.com,
linuxarm@huawei.com, liuyonglong@huawei.com,
prime.zeng@hisilicon.com, "Zhou Wang" <wangzhou1@hisilicon.com>,
"Wei Xu" <xuwei5@hisilicon.com>,
linux-mm@vger.kernel.org, "SeongJae Park" <sj@kernel.org>,
"Reinette Chatre" <reinette.chatre@intel.com>,
"James Morse" <james.morse@arm.com>,
"Zeng Heng" <zengheng4@huawei.com>,
ben.horgan@arm.com, "Tony Luck" <tony.luck@intel.com>,
"Dave Martin" <Dave.Martin@arm.com>,
"Babu Moger" <babu.moger@amd.com>
Subject: Re: [PATCH 1/3] soc cache: L3 cache driver for HiSilicon SoC
Date: Thu, 05 Feb 2026 15:38:15 +0100 [thread overview]
Message-ID: <0028a425-140d-4baa-b482-d6f2d349f8c2@app.fastmail.com> (raw)
In-Reply-To: <CAD++jLkVoorGWceRaF0VNeNLQz8TM1p2Dz-ivgyr4_T_QB_wfg@mail.gmail.com>
On Thu, Feb 5, 2026, at 14:47, Linus Walleij wrote:
> On Thu, Feb 5, 2026 at 11:18 AM Jonathan Cameron
> <jonathan.cameron@huawei.com> wrote:
>
>> Take the closest example to this which is resctl (mpam on arm).
>> This actually has a feature that smells a bit like this.
>> Pseudo-cache locking.
>>
>> https://docs.kernel.org/filesystems/resctrl.html#cache-pseudo-locking
>
> That was very interesting. And more than a little bit complex.
> IIUC MPAM is mostly about requesting bandwidth to/from the
> memory.
>
> But maybe cache lockdown can build on top?
The CoreLink interconnect blocks also have a way to lock
cache lines, e.g. for the CMN-600:
https://developer.arm.com/documentation/100180/0200/SLC-Memory-System/Software-configurable-memory-region-locking?lang=en
These are fairly common, but so far we never had the need to
expose this in a low-level driver. If we add driver interface
for HiSilicon chips that use a custom interconnect, we should
probably check at least that the user ABI would theoretically
also work on Arm interconnects if one wrote a driver.
Another similar technology is memory that has already been locked
by firmware (or hardware design, i.e. not a cache), and there are
a few I remember:
- drivers/misc/sram.c exports sram from physical addresses to
userspace. For a deeply embedded system with known amounts
of locked-down L3 cache, the firmware could just pre-lock
the cache and expose it to the kernel as an sram.
- your own arch/arm/kernel/tcm.c, which does not currently have
any upstream users. I don't remember if it ever had.
- arch/sh/mm/numa.c supports locked SRAM through numactl, originally
added by Paul Mundt. The idea of using numactl to move page
cache pages is somwhat appealing, but it really messes
with the assumptions about NUMA interfaces, and I think this
is the only 32-bit target that exposes numactl. There are
probably no applications left using this in modern kernels.
- arch/arc/ had an elaborate downstream patch for wireless
network SoCs from (IIRC) Quantenna that would link mark
any performance-sensitive .text and .data parts of the network
stack to be in on-chip SRAM, but no user interface.
Arnd
next prev parent reply other threads:[~2026-02-05 14:39 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-03 16:18 [PATCH 0/3] soc: Enable cache lockdown for HiSilicon L3 cache Yushan Wang
2026-02-03 16:18 ` [PATCH 1/3] soc cache: L3 cache driver for HiSilicon SoC Yushan Wang
2026-02-03 17:19 ` Arnd Bergmann
2026-02-04 9:51 ` wangyushan
2026-02-05 9:37 ` Krzysztof Kozlowski
2026-02-05 11:19 ` wangyushan
2026-02-05 11:23 ` Krzysztof Kozlowski
2026-02-05 11:30 ` wangyushan
2026-02-04 0:10 ` Linus Walleij
2026-02-04 9:53 ` wangyushan
2026-02-04 10:06 ` Linus Walleij
2026-02-04 13:40 ` Jonathan Cameron
2026-02-04 13:44 ` Jonathan Cameron
2026-02-05 2:20 ` SeongJae Park
2026-02-05 9:12 ` Linus Walleij
2026-02-05 10:18 ` Jonathan Cameron
2026-02-05 13:47 ` Linus Walleij
2026-02-05 14:38 ` Arnd Bergmann [this message]
2026-02-06 8:05 ` Linus Walleij
2026-02-05 14:37 ` Ben Horgan
2026-02-06 9:54 ` wangyushan
2026-02-06 16:15 ` Ben Horgan
2026-02-06 10:07 ` wangyushan
2026-02-06 10:44 ` Arnd Bergmann
2026-02-06 12:44 ` Linus Walleij
2026-02-04 2:47 ` kernel test robot
2026-02-03 16:18 ` [PATCH 2/3] soc cache: L3 cache lockdown support " Yushan Wang
2026-02-03 16:18 ` [PATCH 3/3] Documentation: soc cache: Add documentation to HiSilicon SoC cache Yushan Wang
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=0028a425-140d-4baa-b482-d6f2d349f8c2@app.fastmail.com \
--to=arnd@arndb.de \
--cc=Dave.Martin@arm.com \
--cc=alexandre.belloni@bootlin.com \
--cc=babu.moger@amd.com \
--cc=ben.horgan@arm.com \
--cc=fanghao11@huawei.com \
--cc=fustini@kernel.org \
--cc=james.morse@arm.com \
--cc=jonathan.cameron@huawei.com \
--cc=krzk@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linusw@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=liuyonglong@huawei.com \
--cc=prime.zeng@hisilicon.com \
--cc=reinette.chatre@intel.com \
--cc=sj@kernel.org \
--cc=tony.luck@intel.com \
--cc=wangyushan12@huawei.com \
--cc=wangzhou1@hisilicon.com \
--cc=will@kernel.org \
--cc=xuwei5@hisilicon.com \
--cc=zengheng4@huawei.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®