Re: [PATCH v1 01/31] x86/resctrl: Fix allocation of cleanest CLOSID on platforms with no monitors

From: David Hildenbrand
Date: Tue Apr 09 2024 - 11:20:08 EST


On 09.04.24 17:02, Reinette Chatre wrote:
Hi David,


Hi,

(Thank you very much for taking a look at these)

I'm planning on reviewing more; as most of resctrl is code I haven't really read before, I'm not able to make progress as fast as I normally would in core-MM ... :)


On 4/9/2024 1:05 AM, David Hildenbrand wrote:
On 21.03.24 17:50, James Morse wrote:
commit 6eac36bb9eb0 ("x86/resctrl: Allocate the cleanest CLOSID by
searching closid_num_dirty_rmid") added a Kconfig option that causes
resctrl to search for the CLOSID with the fewest dirty cache lines when
creating a new control group. This depends on the values read from the
llc_occupancy counters.

This support missed that some platforms may not have these counters.
This causes a NULL pointer dereference when creating a new control
group as the array was not allocated by dom_data_init().

As this feature isn't necessary on platforms that don't have cache
occupancy monitors, add this to the check that occurs when a new
control group is allocated.

The existing code is not selected by any upstream platform, it makes
no sense to backport this patch to stable.


It's weird to not see RESCTRL_RMID_DEPENDS_ON_CLOSID appear in any Kconfig file.
I guess it will all make sense once the refactoring is done :)

This is done later in this series where patch #29, "fs/resctrl: Add boiler
plate for external resctrl code", introduces it to fs/resctrl/Kconfig.

Oh, already in this series, great!

--
Cheers,

David / dhildenb