diff mbox series

ACPI: HMAT: Mark hmat_set_default_dram_perf() as __init

Message ID 20240710-fix-modpost-warning-default_dram_nodes-v1-1-8961453cc82d@kernel.org (mailing list archive)
State Handled Elsewhere, archived
Headers show
Series ACPI: HMAT: Mark hmat_set_default_dram_perf() as __init | expand

Commit Message

Nathan Chancellor July 10, 2024, 4:29 p.m. UTC
After commit 4dc70b711dbc ("memory tier: consolidate the initialization
of memory tiers"), there is a modpost warning when
hmat_set_default_dram_perf() is not inlined into its callsite, as it
appears that default_dram_nodes may be accessed after its memory has
been freed.

  WARNING: modpost: vmlinux: section mismatch in reference: hmat_set_default_dram_perf+0x18 (section: .text) -> default_dram_nodes (section: .init.data)

The single callsite, hmat_init(), is __init, so this warning is not a
problem in reality but it is easily solvable by marking
hmat_set_default_dram_perf() as __init, which should have been done when
this function was added in commit 3718c02dbd4c ("acpi, hmat: calculate
abstract distance with HMAT").

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202406292310.hlRATeZJ-lkp@intel.com/
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
---
I left off a fixes tag as I assume this is going to be squashed into the
former change mentioned above, as it is still in mm-unstable, but feel
free to add one if the patch is going to be standalone.
---
 drivers/acpi/numa/hmat.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


---
base-commit: 17bcc624e67da6383060ee24483db77aa17276aa
change-id: 20240710-fix-modpost-warning-default_dram_nodes-38b6faffe3da

Best regards,

Comments

Huang Ying July 11, 2024, 6:54 a.m. UTC | #1
Nathan Chancellor <nathan@kernel.org> writes:

> After commit 4dc70b711dbc ("memory tier: consolidate the initialization
> of memory tiers"), there is a modpost warning when
> hmat_set_default_dram_perf() is not inlined into its callsite, as it
> appears that default_dram_nodes may be accessed after its memory has
> been freed.
>
>   WARNING: modpost: vmlinux: section mismatch in reference: hmat_set_default_dram_perf+0x18 (section: .text) -> default_dram_nodes (section: .init.data)
>
> The single callsite, hmat_init(), is __init, so this warning is not a
> problem in reality but it is easily solvable by marking
> hmat_set_default_dram_perf() as __init, which should have been done when
> this function was added in commit 3718c02dbd4c ("acpi, hmat: calculate
> abstract distance with HMAT").

Good catch!  Thanks for your fix!  If it's necessary, feel free to add

Reviewed-by: "Huang, Ying" <ying.huang@intel.com>

> Reported-by: kernel test robot <lkp@intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202406292310.hlRATeZJ-lkp@intel.com/
> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> ---
> I left off a fixes tag as I assume this is going to be squashed into the
> former change mentioned above, as it is still in mm-unstable, but feel
> free to add one if the patch is going to be standalone.
> ---
>  drivers/acpi/numa/hmat.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/acpi/numa/hmat.c b/drivers/acpi/numa/hmat.c
> index a2f9e7a4b479..ca0c0ea3e1ef 100644
> --- a/drivers/acpi/numa/hmat.c
> +++ b/drivers/acpi/numa/hmat.c
> @@ -933,7 +933,7 @@ static int hmat_callback(struct notifier_block *self,
>  	return NOTIFY_OK;
>  }
>  
> -static int hmat_set_default_dram_perf(void)
> +static __init int hmat_set_default_dram_perf(void)
>  {
>  	int rc;
>  	int nid, pxm;
>
> ---
> base-commit: 17bcc624e67da6383060ee24483db77aa17276aa
> change-id: 20240710-fix-modpost-warning-default_dram_nodes-38b6faffe3da
>
> Best regards,

--
Best Regards,
Huang, Ying
Rafael J. Wysocki July 12, 2024, 9:40 a.m. UTC | #2
On Thu, Jul 11, 2024 at 8:56 AM Huang, Ying <ying.huang@intel.com> wrote:
>
> Nathan Chancellor <nathan@kernel.org> writes:
>
> > After commit 4dc70b711dbc ("memory tier: consolidate the initialization
> > of memory tiers"), there is a modpost warning when
> > hmat_set_default_dram_perf() is not inlined into its callsite, as it
> > appears that default_dram_nodes may be accessed after its memory has
> > been freed.
> >
> >   WARNING: modpost: vmlinux: section mismatch in reference: hmat_set_default_dram_perf+0x18 (section: .text) -> default_dram_nodes (section: .init.data)
> >
> > The single callsite, hmat_init(), is __init, so this warning is not a
> > problem in reality but it is easily solvable by marking
> > hmat_set_default_dram_perf() as __init, which should have been done when
> > this function was added in commit 3718c02dbd4c ("acpi, hmat: calculate
> > abstract distance with HMAT").
>
> Good catch!  Thanks for your fix!  If it's necessary, feel free to add
>
> Reviewed-by: "Huang, Ying" <ying.huang@intel.com>

Thanks for the patch and the review!

I'm expecting Dan/Dave to take care of it (or please let me know if
I'm expected to pick it up).

> > Reported-by: kernel test robot <lkp@intel.com>
> > Closes: https://lore.kernel.org/oe-kbuild-all/202406292310.hlRATeZJ-lkp@intel.com/
> > Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> > ---
> > I left off a fixes tag as I assume this is going to be squashed into the
> > former change mentioned above, as it is still in mm-unstable, but feel
> > free to add one if the patch is going to be standalone.
> > ---
> >  drivers/acpi/numa/hmat.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/acpi/numa/hmat.c b/drivers/acpi/numa/hmat.c
> > index a2f9e7a4b479..ca0c0ea3e1ef 100644
> > --- a/drivers/acpi/numa/hmat.c
> > +++ b/drivers/acpi/numa/hmat.c
> > @@ -933,7 +933,7 @@ static int hmat_callback(struct notifier_block *self,
> >       return NOTIFY_OK;
> >  }
> >
> > -static int hmat_set_default_dram_perf(void)
> > +static __init int hmat_set_default_dram_perf(void)
> >  {
> >       int rc;
> >       int nid, pxm;
> >
> > ---
> > base-commit: 17bcc624e67da6383060ee24483db77aa17276aa
> > change-id: 20240710-fix-modpost-warning-default_dram_nodes-38b6faffe3da
> >
> > Best regards,
>
> --
> Best Regards,
> Huang, Ying
>
Dave Jiang July 12, 2024, 4:59 p.m. UTC | #3
On 7/12/24 2:40 AM, Rafael J. Wysocki wrote:
> On Thu, Jul 11, 2024 at 8:56 AM Huang, Ying <ying.huang@intel.com> wrote:
>>
>> Nathan Chancellor <nathan@kernel.org> writes:
>>
>>> After commit 4dc70b711dbc ("memory tier: consolidate the initialization
>>> of memory tiers"), there is a modpost warning when
>>> hmat_set_default_dram_perf() is not inlined into its callsite, as it
>>> appears that default_dram_nodes may be accessed after its memory has
>>> been freed.
>>>
>>>   WARNING: modpost: vmlinux: section mismatch in reference: hmat_set_default_dram_perf+0x18 (section: .text) -> default_dram_nodes (section: .init.data)
>>>
>>> The single callsite, hmat_init(), is __init, so this warning is not a
>>> problem in reality but it is easily solvable by marking
>>> hmat_set_default_dram_perf() as __init, which should have been done when
>>> this function was added in commit 3718c02dbd4c ("acpi, hmat: calculate
>>> abstract distance with HMAT").
>>
>> Good catch!  Thanks for your fix!  If it's necessary, feel free to add
>>
>> Reviewed-by: "Huang, Ying" <ying.huang@intel.com>
> 
> Thanks for the patch and the review!
> 
> I'm expecting Dan/Dave to take care of it (or please let me know if
> I'm expected to pick it up).
> 
>>> Reported-by: kernel test robot <lkp@intel.com>
>>> Closes: https://lore.kernel.org/oe-kbuild-all/202406292310.hlRATeZJ-lkp@intel.com/
>>> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
>>> ---
>>> I left off a fixes tag as I assume this is going to be squashed into the
>>> former change mentioned above, as it is still in mm-unstable, but feel
>>> free to add one if the patch is going to be standalone.

Should this be picked up by Andrew instead since it's already in mm-unstable?

>>> ---
>>>  drivers/acpi/numa/hmat.c | 2 +-
>>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/acpi/numa/hmat.c b/drivers/acpi/numa/hmat.c
>>> index a2f9e7a4b479..ca0c0ea3e1ef 100644
>>> --- a/drivers/acpi/numa/hmat.c
>>> +++ b/drivers/acpi/numa/hmat.c
>>> @@ -933,7 +933,7 @@ static int hmat_callback(struct notifier_block *self,
>>>       return NOTIFY_OK;
>>>  }
>>>
>>> -static int hmat_set_default_dram_perf(void)
>>> +static __init int hmat_set_default_dram_perf(void)
>>>  {
>>>       int rc;
>>>       int nid, pxm;
>>>
>>> ---
>>> base-commit: 17bcc624e67da6383060ee24483db77aa17276aa
>>> change-id: 20240710-fix-modpost-warning-default_dram_nodes-38b6faffe3da
>>>
>>> Best regards,
>>
>> --
>> Best Regards,
>> Huang, Ying
>>
Rafael J. Wysocki July 12, 2024, 5:25 p.m. UTC | #4
On Fri, Jul 12, 2024 at 6:59 PM Dave Jiang <dave.jiang@intel.com> wrote:
>
>
>
> On 7/12/24 2:40 AM, Rafael J. Wysocki wrote:
> > On Thu, Jul 11, 2024 at 8:56 AM Huang, Ying <ying.huang@intel.com> wrote:
> >>
> >> Nathan Chancellor <nathan@kernel.org> writes:
> >>
> >>> After commit 4dc70b711dbc ("memory tier: consolidate the initialization
> >>> of memory tiers"), there is a modpost warning when
> >>> hmat_set_default_dram_perf() is not inlined into its callsite, as it
> >>> appears that default_dram_nodes may be accessed after its memory has
> >>> been freed.
> >>>
> >>>   WARNING: modpost: vmlinux: section mismatch in reference: hmat_set_default_dram_perf+0x18 (section: .text) -> default_dram_nodes (section: .init.data)
> >>>
> >>> The single callsite, hmat_init(), is __init, so this warning is not a
> >>> problem in reality but it is easily solvable by marking
> >>> hmat_set_default_dram_perf() as __init, which should have been done when
> >>> this function was added in commit 3718c02dbd4c ("acpi, hmat: calculate
> >>> abstract distance with HMAT").
> >>
> >> Good catch!  Thanks for your fix!  If it's necessary, feel free to add
> >>
> >> Reviewed-by: "Huang, Ying" <ying.huang@intel.com>
> >
> > Thanks for the patch and the review!
> >
> > I'm expecting Dan/Dave to take care of it (or please let me know if
> > I'm expected to pick it up).
> >
> >>> Reported-by: kernel test robot <lkp@intel.com>
> >>> Closes: https://lore.kernel.org/oe-kbuild-all/202406292310.hlRATeZJ-lkp@intel.com/
> >>> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> >>> ---
> >>> I left off a fixes tag as I assume this is going to be squashed into the
> >>> former change mentioned above, as it is still in mm-unstable, but feel
> >>> free to add one if the patch is going to be standalone.
>
> Should this be picked up by Andrew instead since it's already in mm-unstable?

This works too as long as someone picks it up. :-)
diff mbox series

Patch

diff --git a/drivers/acpi/numa/hmat.c b/drivers/acpi/numa/hmat.c
index a2f9e7a4b479..ca0c0ea3e1ef 100644
--- a/drivers/acpi/numa/hmat.c
+++ b/drivers/acpi/numa/hmat.c
@@ -933,7 +933,7 @@  static int hmat_callback(struct notifier_block *self,
 	return NOTIFY_OK;
 }
 
-static int hmat_set_default_dram_perf(void)
+static __init int hmat_set_default_dram_perf(void)
 {
 	int rc;
 	int nid, pxm;