[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHQ1cqGd_rLSj04tom0Q5uyrCKt9XLPdWr5KYyFF_jCMhj0tXw@mail.gmail.com>
Date: Wed, 17 May 2017 06:06:40 -0700
From: Andrey Smirnov <andrew.smirnov@...il.com>
To: Johan Hovold <johan@...nel.org>
Cc: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
stable <stable@...r.kernel.org>, Andrew Lunn <andrew@...n.ch>,
Mika Westerberg <mika.westerberg@...ux.intel.com>
Subject: Re: [PATCH] nvmem: core: fix leaks on registration errors
On Wed, May 17, 2017 at 1:51 AM, Johan Hovold <johan@...nel.org> wrote:
> On Tue, May 16, 2017 at 02:28:28PM -0700, Andrey Smirnov wrote:
>> On Tue, May 16, 2017 at 6:44 AM, Johan Hovold <johan@...nel.org> wrote:
>> > Make sure to deregister and release the nvmem device and underlying
>> > memory on registration errors.
>> >
>> > Note that the private data must be freed using put_device() once the
>> > struct device has been initialised.
>> >
>> > Also note that there's a related reference leak in the deregistration
>> > function as reported by Mika Westerberg which is being fixed separately.
>> >
>> > Fixes: b6c217ab9be6 ("nvmem: Add backwards compatibility support for older EEPROM drivers.")
>> > Fixes: eace75cfdcf7 ("nvmem: Add a simple NVMEM framework for nvmem providers")
>> > Cc: stable <stable@...r.kernel.org> # 4.3
>> > Cc: Andrew Lunn <andrew@...n.ch>
>> > Cc: Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
>> > Cc: Mika Westerberg <mika.westerberg@...ux.intel.com>
>> > Signed-off-by: Johan Hovold <johan@...nel.org>
>> > ---
>>
>> I submitted identical patch to fix this about a month ago here:
>>
>> lkml.kernel.org/r/20170418142454.23921-1-andrew.smirnov@...il.com
>
> Oh, and you fixed up both the registration and deregistration leaks in
> your series too. Looks like the maintainer is on vacation now so perhaps
> we'll see a third independent fix for these bugs soon. ;)
>
Heh, let's hope not :-)
> As for your series, I prefer this version for nvmem_register due to the
> difference in error label naming (named after what they do rather than
> where they are used), but as I also mentioned to Mika, I think just
> adding the missing put_device to nvmem_unregister as you did is
> preferred.
>
> But the important thing is that this gets fixed.
>
Yup, agreed, as long a version of both fixes ends up being applied
it's all good.
Thanks,
Andrey
Powered by blists - more mailing lists