Re: [PATCH 1/1] x86/amd_nb: unexport amd_cache_northbridges()

From: Borislav Petkov
Date: Tue Mar 15 2022 - 13:30:53 EST


On Mon, Feb 28, 2022 at 09:41:54PM +0530, Naveen Krishna Chatradhi wrote:
> From: Muralidhara M K <muralimk@xxxxxxx>
>
> amd_cache_northbridges() is called from init_amd_nbs(), during
> fs_initcall() and need not be called explicitly. Kernel components
> can directly call amd_nb_num() to get the initialized number of
> north bridges.
>
> unexport amd_cache_northbridges(), update dependent modules to
> call amd_nb_num() instead. While at it, simplify the while checks
> in amd_cache_northbridges().

What I am missing in this commit message is why is it ok to do that?

AFAIR, previously, amd_cache_northbridges() wasn't an initcall so the
module or builtin - which came first - was forcing the NB caching
through the explicit call to amd_cache_northbridges().

fs_inicall() does that now unconditionally so the question is, why can
the module init functions assume that the northbridges have been cached
already and can simply get the NB number?

Thx.

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette:wq