Re: [RFC PATCH 04/19] fs/resctrl: Add the documentation for Global Memory Bandwidth Allocation
From: "Luck, Tony" <tony.luck@intel.com>
Date: 2026-02-03 00:00:36
Also in:
kvm, lkml
On Wed, Jan 21, 2026 at 03:12:42PM -0600, Babu Moger wrote:
+Global Memory bandwidth Allocation +----------------------------------- + +AMD hardware supports Global Memory Bandwidth Allocation (GMBA) provides +a mechanism for software to specify bandwidth limits for groups of threads +that span across multiple QoS domains. This collection of QOS domains is +referred to as GMBA control domain. The GMBA control domain is created by +setting the same GMBA limits in one or more QoS domains. Setting the default +max_bandwidth excludes the QoS domain from being part of GMBA control domain.
I don't see any checks that the user sets the *SAME* GMBA limits. What happens if the user ignores the dosumentation and sets different limits? ... snip ... + # cat schemata + GMB:0=2048;1=2048;2=2048;3=2048 + MB:0=4096;1=4096;2=4096;3=4096 + L3:0=ffff;1=ffff;2=ffff;3=ffff + + # echo "GMB:0=8;2=8" > schemata + # cat schemata + GMB:0= 8;1=2048;2= 8;3=2048 + MB:0=4096;1=4096;2=4096;3=4096 + L3:0=ffff;1=ffff;2=ffff;3=ffff Can the user go on to set: # echo "GMB:1=10;3=10" > schemata and have domains 0 & 2 with a combined 8GB limit, while domains 1 & 3 run with a combined 10GB limit? Or is there a single "GMBA domain"? Will using "2048" as the "this domain isn't limited by GMBA" value come back to haunt you when some system has much more than 2TB bandwidth to divide up? Should resctrl have a non-numeric "unlimited" value in the schemata file for this? The "mba_MBps" feature used U32_MAX as the unlimited value. But it looks somewhat ugly in the schemata file: $ cat schemata MB:0=4294967295;1=4294967295 L3:0=fff;1=fff so I'm not sure it is a great precedent. -Tony