[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Yc7Y/HOgY5aT7STP@kroah.com>
Date: Fri, 31 Dec 2021 11:18:36 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: Pavel Machek <pavel@...x.de>
Cc: linux-kernel@...r.kernel.org, stable@...r.kernel.org,
Johan Hovold <johan@...nel.org>,
Hans de Goede <hdegoede@...hat.com>
Subject: Re: [PATCH 5.10 48/76] platform/x86: intel_pmc_core: fix memleak on
registration failure
On Fri, Dec 31, 2021 at 11:04:05AM +0100, Pavel Machek wrote:
> Hi!
>
> On Mon 2021-12-27 16:31:03, Greg Kroah-Hartman wrote:
> > From: Johan Hovold <johan@...nel.org>
> >
> > commit 26a8b09437804fabfb1db080d676b96c0de68e7c upstream.
> >
> > In case device registration fails during module initialisation, the
> > platform device structure needs to be freed using platform_device_put()
> > to properly free all resources (e.g. the device name).
> >
>
> Does it? What exactly was leaking here?
>
> > +++ b/drivers/platform/x86/intel_pmc_core_pltdrv.c
> > @@ -65,7 +65,7 @@ static int __init pmc_core_platform_init
> >
> > retval = platform_device_register(pmc_core_device);
> > if (retval)
> > - kfree(pmc_core_device);
> > + platform_device_put(pmc_core_device);
> >
>
> This is strange. Failing registration should have no effects that need
> to be undone.
Sadly, that is not how the driver model has ever worked for various
reasons.
greg k-h
Powered by blists - more mailing lists