Re: [PATCH v8 6/8] x86/resctrl: Move default group file creation to mount

From: Reinette Chatre
Date: Wed Aug 30 2023 - 16:22:28 EST


Hi Babu,

On 8/30/2023 12:50 PM, Moger, Babu wrote:
> Hi Reinette,
>
> On 8/29/23 15:11, Reinette Chatre wrote:
>> Hi Babu,
>>
>> On 8/21/2023 4:30 PM, Babu Moger wrote:
>>> The default resource group and its files are created during kernel
>>> init time. Upcoming changes will make some resctrl files optional
>>> based on a mount parameter. If optional files are to be added to the
>>> default group based on the mount option, then each new file needs to
>>> be created separately and call kernfs_activate() again.
>>>
>>> Create all files of the default resource group during resctrl
>>> mount, destroyed during unmount, to avoid scattering resctrl
>>> file addition across two separate code flows.
>>>
>>> Suggested-by: Reinette Chatre <reinette.chatre@xxxxxxxxx>
>>> Signed-off-by: Babu Moger <babu.moger@xxxxxxx>
>>> ---
>>> arch/x86/kernel/cpu/resctrl/internal.h | 2 +
>>> arch/x86/kernel/cpu/resctrl/rdtgroup.c | 55 +++++++++++++++-----------
>>> 2 files changed, 33 insertions(+), 24 deletions(-)
>>>
>>> diff --git a/arch/x86/kernel/cpu/resctrl/internal.h b/arch/x86/kernel/cpu/resctrl/internal.h
>>> index b09e7abd1299..44ad98f8c7af 100644
>>> --- a/arch/x86/kernel/cpu/resctrl/internal.h
>>> +++ b/arch/x86/kernel/cpu/resctrl/internal.h
>>> @@ -611,5 +611,7 @@ void rdt_domain_reconfigure_cdp(struct rdt_resource *r);
>>> void __init thread_throttle_mode_init(void);
>>> void __init mbm_config_rftype_init(const char *config);
>>> void rdt_staged_configs_clear(void);
>>> +int rdtgroup_setup_root(struct rdt_fs_context *ctx);
>>> +void rdtgroup_destroy_root(void);
>>>
>>
>> From what I can tell these functions are only used in rdtgroup.c.
>> Can this export be avoided by just moving these functions within
>> rdtgroup.c and making them static?
>
> Yes. It is used only in rdtgroup.c. We can make this static by adding the
> prototypes of these function in the beginning of rdtgroup.c file to avoid
> implicit declaration compiler errors.

Why not just place the functions earlier in rdtgroup.c so that they are
located before all callers?

Reinette