On 5/21/24 5:46 PM, Dan Williams wrote: > The platform driver conversion of EINJ mistakenly used > platform_device_del() to unwind platform_device_register_full() at > module exit. This leads to a small leak of one 'struct platform_device' > instance per module load/unload cycle. Switch to > platform_device_unregister() which performs both device_del() and final > put_device(). > Reviewed-by: Ben Cheatham <Benjamin.Cheatham@xxxxxxx> Thanks, Ben > Fixes: 5621fafaac00 ("EINJ: Migrate to a platform driver") > Cc: <stable@xxxxxxxxxxxxxxx> > Cc: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > Cc: Ben Cheatham <Benjamin.Cheatham@xxxxxxx> > Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx> > --- > 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 01faca3a238a..bb9f8475ce59 100644 > --- a/drivers/acpi/apei/einj-core.c > +++ b/drivers/acpi/apei/einj-core.c > @@ -903,7 +903,7 @@ static void __exit einj_exit(void) > if (einj_initialized) > platform_driver_unregister(&einj_driver); > > - platform_device_del(einj_dev); > + platform_device_unregister(einj_dev); > } > > module_init(einj_init); >