[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <31a6f978-0bb7-df20-ea81-2fc32c94b855@cogentembedded.com>
Date: Sun, 28 Aug 2016 00:48:10 +0300
From: Sergei Shtylyov <sergei.shtylyov@...entembedded.com>
To: Arnd Bergmann <arnd@...db.de>,
"David S. Miller" <davem@...emloft.net>
Cc: Yoshihiro Kaneko <ykaneko0929@...il.com>,
Kazuya Mizuguchi <kazuya.mizuguchi.ks@...esas.com>,
Simon Horman <horms+renesas@...ge.net.au>,
Masaru Nagai <masaru.nagai.vx@...esas.com>,
Niklas Söderlund
<niklas.soderlund+renesas@...natech.se>, netdev@...r.kernel.org,
linux-renesas-soc@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] ravb: avoid unused function warnings
Hello.
On 08/27/2016 01:48 AM, Sergei Shtylyov wrote:
>> When CONFIG_PM_SLEEP is disabled, we get a couple of harmless warnings:
>>
>> drivers/net/ethernet/renesas/ravb_main.c:2117:12: error: 'ravb_resume'
>> defined but not used [-Werror=unused-function]
>> drivers/net/ethernet/renesas/ravb_main.c:2104:12: error: 'ravb_suspend'
>> defined but not used [-Werror=unused-function]
>>
>> The simplest solution here is to replace the #ifdef with __maybe_unused
>> annotations, which lets the compiler do the right thing by itself.
>>
>> Signed-off-by: Arnd Bergmann <arnd@...db.de>
>> Fixes: 0184165b2f42 ("ravb: add sleep PM suspend/resume support")
>
> That was the patch I didn't review, sorry about that...
>
>> ---
>> drivers/net/ethernet/renesas/ravb_main.c | 14 ++++----------
>> 1 file changed, 4 insertions(+), 10 deletions(-)
>>
>> diff --git a/drivers/net/ethernet/renesas/ravb_main.c
>> b/drivers/net/ethernet/renesas/ravb_main.c
>> index cad23ba06904..630536bc72f9 100644
>> --- a/drivers/net/ethernet/renesas/ravb_main.c
>> +++ b/drivers/net/ethernet/renesas/ravb_main.c
> [...]
>> @@ -2166,17 +2165,12 @@ static const struct dev_pm_ops ravb_dev_pm_ops = {
>> SET_RUNTIME_PM_OPS(ravb_runtime_nop, ravb_runtime_nop, NULL)
>> };
>>
>> -#define RAVB_PM_OPS (&ravb_dev_pm_ops)
>> -#else
>> -#define RAVB_PM_OPS NULL
>> -#endif
>> -
>> static struct platform_driver ravb_driver = {
>> .probe = ravb_probe,
>> .remove = ravb_remove,
>> .driver = {
>> .name = "ravb",
>> - .pm = RAVB_PM_OPS,
>> + .pm = &ravb_dev_pm_ops,
>
> I guess it's safe to have this pointing to the 'struct dev_pm_ops' filled
> with NULLs? Looking at the PM code left me somewhat unsure...
Well, this means CONFIG_PM[_SLEEP] not defined anyway and the PM code
calling the methods absent, so it should be safe indeed...
Acked-by: Sergei Shtylyov <sergei.shtylyov@...entembedded.com>
MBR, Sergei
Powered by blists - more mailing lists