Re: [PATCH v5 06/40] x86/resctrl: Remove data_width and the tabular format

From: James Morse
Date: Fri Oct 18 2024 - 13:07:34 EST


Hi Tony,

On 16/10/2024 00:29, Tony Luck wrote:
> On Fri, Oct 04, 2024 at 06:03:13PM +0000, James Morse wrote:
>> The resctrl architecture code provides a data_width for the controls of
>> each resource. This is used to zero pad all control values in the schemata
>> file so they appear in columns. The same is done with the resource names
>> to complete the visual effect. e.g.
>> | SMBA:0=2048
>> | L3:0=00ff
>>
>> AMD platforms discover their maximum bandwidth for the MB resource from
>> firmware, but hard-code the data_width to 4. If the maximum bandwidth
>> requires more digits - the tabular format is silently broken.
>> If new schema are added resctrl will need to be able to determine the
>> maximum width. The benefit of this pretty-printing is questionable.
>
> Agreed. It's particularly non-useful for L2 resources on systems with
> hundred+ cores. The L2 line in schemata is very long and doesn't look
> "pretty" at all. Padding may make it even longer.


> It never worked with the mba_MBps mount option because the field
> width wasn't updated for prettiness. E.g.
>
> $ cat schemata
> MB:0=4294967295;1=4294967295
> L3:0=fff;1=fff

Good point - I'll add that the commit message.


>> Instead of handling runtime discovery of the data_width for AMD platforms,
>> remove the feature. These fields are always zero padded so should be
>> harmless to remove if the whole field has been treated as a number.
>> In the above example, this would now look like this:
>
> Huzzah!
>
> Reviewed-by: Tony Luck <tony.luck@xxxxxxxxx>

Thanks!

James