lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
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