2024-03-20 18:03:17

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] acpi: EINJ: mark remove callback as non-__exit

From: Arnd Bergmann <[email protected]>

The remove callback of a device is called whenever it is unbound,
which may happen during runtime e.g. through sysfs, so this is not
allowed to be dropped from the binary:

WARNING: modpost: vmlinux: section mismatch in reference: einj_driver+0x8 (section: .data) -> einj_remove (section: .exit.text)
ERROR: modpost: Section mismatches detected.

Remove that annotation.

Fixes: 12fb28ea6b1c ("EINJ: Add CXL error type support")
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/acpi/apei/einj-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/acpi/apei/einj-core.c b/drivers/acpi/apei/einj-core.c
index 66e7f529e92f..01faca3a238a 100644
--- a/drivers/acpi/apei/einj-core.c
+++ b/drivers/acpi/apei/einj-core.c
@@ -851,7 +851,7 @@ static int __init einj_probe(struct platform_device *pdev)
return rc;
}

-static void __exit einj_remove(struct platform_device *pdev)
+static void einj_remove(struct platform_device *pdev)
{
struct apei_exec_context ctx;

--
2.39.2



2024-03-20 19:58:55

by Dan Williams

[permalink] [raw]
Subject: Re: [PATCH] acpi: EINJ: mark remove callback as non-__exit

Arnd Bergmann wrote:
> From: Arnd Bergmann <[email protected]>
>
> The remove callback of a device is called whenever it is unbound,
> which may happen during runtime e.g. through sysfs, so this is not
> allowed to be dropped from the binary:
>
> WARNING: modpost: vmlinux: section mismatch in reference: einj_driver+0x8 (section: .data) -> einj_remove (section: .exit.text)
> ERROR: modpost: Section mismatches detected.
>
> Remove that annotation.

Looks good, not sure why the build robots missed this while this was
sitting in -next. Yes, this was a side effect of reusing the former
einj_exit() as the device remove callback.

Reviewed-by: Dan Williams <[email protected]>

Rafael, can you pick this up?

2024-03-20 20:01:16

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH] acpi: EINJ: mark remove callback as non-__exit

On Wed, Mar 20, 2024 at 8:58 PM Dan Williams <[email protected]> wrote:
>
> Arnd Bergmann wrote:
> > From: Arnd Bergmann <[email protected]>
> >
> > The remove callback of a device is called whenever it is unbound,
> > which may happen during runtime e.g. through sysfs, so this is not
> > allowed to be dropped from the binary:
> >
> > WARNING: modpost: vmlinux: section mismatch in reference: einj_driver+0x8 (section: .data) -> einj_remove (section: .exit.text)
> > ERROR: modpost: Section mismatches detected.
> >
> > Remove that annotation.
>
> Looks good, not sure why the build robots missed this while this was
> sitting in -next. Yes, this was a side effect of reusing the former
> einj_exit() as the device remove callback.
>
> Reviewed-by: Dan Williams <[email protected]>
>
> Rafael, can you pick this up?

I will, thanks!

2024-03-26 11:18:54

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: [PATCH] acpi: EINJ: mark remove callback as non-__exit

On Wed, Mar 20, 2024 at 9:00 PM Rafael J. Wysocki <[email protected]> wrote:
>
> On Wed, Mar 20, 2024 at 8:58 PM Dan Williams <[email protected]> wrote:
> >
> > Arnd Bergmann wrote:
> > > From: Arnd Bergmann <[email protected]>
> > >
> > > The remove callback of a device is called whenever it is unbound,
> > > which may happen during runtime e.g. through sysfs, so this is not
> > > allowed to be dropped from the binary:
> > >
> > > WARNING: modpost: vmlinux: section mismatch in reference: einj_driver+0x8 (section: .data) -> einj_remove (section: .exit.text)
> > > ERROR: modpost: Section mismatches detected.
> > >
> > > Remove that annotation.
> >
> > Looks good, not sure why the build robots missed this while this was
> > sitting in -next. Yes, this was a side effect of reusing the former
> > einj_exit() as the device remove callback.
> >
> > Reviewed-by: Dan Williams <[email protected]>
> >
> > Rafael, can you pick this up?
>
> I will, thanks!

Applied now, thanks!