[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAK8P3a1fv8c5fBOcs_x3F3MzjMJeJOWDGG0ay3RzBWwDoMGxCg@mail.gmail.com>
Date: Thu, 14 Jun 2018 12:35:58 +0200
From: Arnd Bergmann <arnd@...db.de>
To: Gwendal Grignou <gwendal@...omium.org>
Cc: Lee Jones <lee.jones@...aro.org>, Benson Leung <bleung@...gle.com>,
Enric Balletbo i Serra <enric.balletbo@...labora.com>,
Benson Leung <bleung@...omium.org>,
Andy Shevchenko <andy.shevchenko@...il.com>,
Linux Kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] mfd: cros_ec: remove unused __remove function
On Tue, Jun 12, 2018 at 9:53 PM, Gwendal Grignou <gwendal@...omium.org> wrote:
> On Sun, Jun 10, 2018 at 11:08 PM Lee Jones <lee.jones@...aro.org> wrote:
>>
>> On Fri, 08 Jun 2018, Benson Leung wrote:
>>
>> >
>> > On Fri, Jun 08, 2018 at 04:48:06PM +0200, Arnd Bergmann wrote:
>> > > This function is no longer called, so we get a harmless
>> > > warning until it is removed as well:
>> > >
>> > > drivers/mfd/cros_ec_dev.c:265:13: error: '__remove' defined but not used [-Werror=unused-function]
>> > >
>> > > Fixes: 3aa2177e4787 ("mfd: cros_ec: Use devm_kzalloc for private data")
>> >
>> > Gwendal, in PATCH v2 of https://patchwork.kernel.org/patch/10439449/
>> > you mentioned that you readded the __remove to avoid a warning when built
>> > as a module. Can you explain what's going on?
>>
>> Yes please, and quickly. I'm going to sent the patch-set today. If I
>> don't hear from you promptly, I'll probably pull the patch!
> I readded it because when cros_ec_dev is loaded as module, I get a
> warning on dmesg when unloading:
>
> """Device 'cros_pd' [or 'cros_ec'] does not have a release() function,
> it is broken and must be fixed."""
>
> The warning comes from device_release(). Given I get a warning when I
> remove the release function or when I leave it empty. Let's pull the
> patch.
I had not realized that this function was supposed to be the .release
callback for a device, only that it was not being called at all.
The runtime warning you get is obviously correct and you do need a
.release function in the device that will free the memory for the
cros_ec_dev structure when the last reference to the device goes away.
Please send a fix for this, replacing the incorrect devm_kzalloc with
a working allocation/deallocation.
Arnd
Powered by blists - more mailing lists