[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAJZ5v0h45YKtEfggt91Cfw=hz_wE7R8raqMbOvBLG2McuQY_0g@mail.gmail.com>
Date: Tue, 12 Nov 2019 10:01:41 +0100
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Qian Cai <cai@....pw>
Cc: Rafael Wysocki <rafael.j.wysocki@...el.com>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Dan Williams <dan.j.williams@...el.com>,
Thomas Gleixner <tglx@...utronix.de>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH -next] acpi/numa/hmat: fix a section mismatch
On Mon, Nov 11, 2019 at 10:34 PM Qian Cai <cai@....pw> wrote:
>
> The commit cf8741ac57ed ("ACPI: NUMA: HMAT: Register "soft reserved"
> memory as an "hmem" device") introduced a linker warning,
>
> WARNING: vmlinux.o(.text+0x64ec3c): Section mismatch in reference from
> the function hmat_register_target() to the function
> .init.text:hmat_register_target_devices()
> The function hmat_register_target() references
> the function __init hmat_register_target_devices().
> This is often because hmat_register_target lacks a __init
> annotation or the annotation of hmat_register_target_devices is wrong.
>
> Since hmat_register_target() is also called from hmat_callback(), and
> then register_hotmemory_notifier() where it should not be freed when
> hmat_init() is done, it indicates the annotation of
> hmat_register_target_devices() is incorrect.
>
> Fixes: cf8741ac57ed ("ACPI: NUMA: HMAT: Register "soft reserved" memory as an "hmem" device")
> Signed-off-by: Qian Cai <cai@....pw>
Applying with minor modifications of the subject and changelog, thanks!
> ---
> 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 42cafeaac336..600ae3babd15 100644
> --- a/drivers/acpi/numa/hmat.c
> +++ b/drivers/acpi/numa/hmat.c
> @@ -694,7 +694,7 @@ static void hmat_register_target_device(struct memory_target *target,
> memregion_free(id);
> }
>
> -static __init void hmat_register_target_devices(struct memory_target *target)
> +static void hmat_register_target_devices(struct memory_target *target)
> {
> struct resource *res;
>
> --
> 2.21.0 (Apple Git-122.2)
>
Powered by blists - more mailing lists