diff mbox series

[net-next] mlx4: Mark PM functions as __maybe_unused

Message ID 20200702091946.5144-1-weiyongjun1@huawei.com (mailing list archive)
State Not Applicable
Delegated to: Jason Gunthorpe
Headers show
Series [net-next] mlx4: Mark PM functions as __maybe_unused | expand

Commit Message

Wei Yongjun July 2, 2020, 9:19 a.m. UTC
In certain configurations without power management support, the
following warnings happen:

drivers/net/ethernet/mellanox/mlx4/main.c:4388:12:
 warning: 'mlx4_resume' defined but not used [-Wunused-function]
 4388 | static int mlx4_resume(struct device *dev_d)
      |            ^~~~~~~~~~~
drivers/net/ethernet/mellanox/mlx4/main.c:4373:12: warning:
 'mlx4_suspend' defined but not used [-Wunused-function]
 4373 | static int mlx4_suspend(struct device *dev_d)
      |            ^~~~~~~~~~~~
      
Mark these functions as __maybe_unused to make it clear to the
compiler that this is going to happen based on the configuration,
which is the standard for these types of functions.

Fixes: 0e3e206a3e12 ("mlx4: use generic power management")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
---
 drivers/net/ethernet/mellanox/mlx4/main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Leon Romanovsky July 2, 2020, 9:36 a.m. UTC | #1
On Thu, Jul 02, 2020 at 05:19:46PM +0800, Wei Yongjun wrote:
> In certain configurations without power management support, the
> following warnings happen:
>
> drivers/net/ethernet/mellanox/mlx4/main.c:4388:12:
>  warning: 'mlx4_resume' defined but not used [-Wunused-function]
>  4388 | static int mlx4_resume(struct device *dev_d)
>       |            ^~~~~~~~~~~
> drivers/net/ethernet/mellanox/mlx4/main.c:4373:12: warning:
>  'mlx4_suspend' defined but not used [-Wunused-function]
>  4373 | static int mlx4_suspend(struct device *dev_d)
>       |            ^~~~~~~~~~~~
>
> Mark these functions as __maybe_unused to make it clear to the
> compiler that this is going to happen based on the configuration,
> which is the standard for these types of functions.
>
> Fixes: 0e3e206a3e12 ("mlx4: use generic power management")

I can't find this SHA-1, where did you get it?
And why doesn't mlx5 need this change?

Fixes: 86a3e5d02c20 ("net/mlx4_core: Add PCI calls for suspend/resume")

Thanks
Wei Yongjun July 2, 2020, 10:27 a.m. UTC | #2
On 2020/7/2 17:36, Leon Romanovsky wrote:
> On Thu, Jul 02, 2020 at 05:19:46PM +0800, Wei Yongjun wrote:
>> In certain configurations without power management support, the
>> following warnings happen:
>>
>> drivers/net/ethernet/mellanox/mlx4/main.c:4388:12:
>>  warning: 'mlx4_resume' defined but not used [-Wunused-function]
>>  4388 | static int mlx4_resume(struct device *dev_d)
>>       |            ^~~~~~~~~~~
>> drivers/net/ethernet/mellanox/mlx4/main.c:4373:12: warning:
>>  'mlx4_suspend' defined but not used [-Wunused-function]
>>  4373 | static int mlx4_suspend(struct device *dev_d)
>>       |            ^~~~~~~~~~~~
>>
>> Mark these functions as __maybe_unused to make it clear to the
>> compiler that this is going to happen based on the configuration,
>> which is the standard for these types of functions.
>>
>> Fixes: 0e3e206a3e12 ("mlx4: use generic power management")
> 
> I can't find this SHA-1, where did you get it?

It is in the net-next tree.

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=0e3e206a3e12

> And why doesn't mlx5 need this change?
> 
> Fixes: 86a3e5d02c20 ("net/mlx4_core: Add PCI calls for suspend/resume")
> 
> Thanks
>
Leon Romanovsky July 2, 2020, 11:58 a.m. UTC | #3
On Thu, Jul 02, 2020 at 06:27:12PM +0800, Wei Yongjun wrote:
>
>
> On 2020/7/2 17:36, Leon Romanovsky wrote:
> > On Thu, Jul 02, 2020 at 05:19:46PM +0800, Wei Yongjun wrote:
> >> In certain configurations without power management support, the
> >> following warnings happen:
> >>
> >> drivers/net/ethernet/mellanox/mlx4/main.c:4388:12:
> >>  warning: 'mlx4_resume' defined but not used [-Wunused-function]
> >>  4388 | static int mlx4_resume(struct device *dev_d)
> >>       |            ^~~~~~~~~~~
> >> drivers/net/ethernet/mellanox/mlx4/main.c:4373:12: warning:
> >>  'mlx4_suspend' defined but not used [-Wunused-function]
> >>  4373 | static int mlx4_suspend(struct device *dev_d)
> >>       |            ^~~~~~~~~~~~
> >>
> >> Mark these functions as __maybe_unused to make it clear to the
> >> compiler that this is going to happen based on the configuration,
> >> which is the standard for these types of functions.
> >>
> >> Fixes: 0e3e206a3e12 ("mlx4: use generic power management")
> >
> > I can't find this SHA-1, where did you get it?
>
> It is in the net-next tree.
>
> https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=0e3e206a3e12

I see, thanks

>
> > And why doesn't mlx5 need this change?
> >
> > Fixes: 86a3e5d02c20 ("net/mlx4_core: Add PCI calls for suspend/resume")
> >
> > Thanks
> >
Jason Gunthorpe July 2, 2020, 1:44 p.m. UTC | #4
On Thu, Jul 02, 2020 at 05:19:46PM +0800, Wei Yongjun wrote:
> In certain configurations without power management support, the
> following warnings happen:
> 
> drivers/net/ethernet/mellanox/mlx4/main.c:4388:12:
>  warning: 'mlx4_resume' defined but not used [-Wunused-function]
>  4388 | static int mlx4_resume(struct device *dev_d)
>       |            ^~~~~~~~~~~
> drivers/net/ethernet/mellanox/mlx4/main.c:4373:12: warning:
>  'mlx4_suspend' defined but not used [-Wunused-function]
>  4373 | static int mlx4_suspend(struct device *dev_d)
>       |            ^~~~~~~~~~~~
>       
> Mark these functions as __maybe_unused to make it clear to the
> compiler that this is going to happen based on the configuration,
> which is the standard for these types of functions.
> 
> Fixes: 0e3e206a3e12 ("mlx4: use generic power management")
> Reported-by: Hulk Robot <hulkci@huawei.com>
> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
>  drivers/net/ethernet/mellanox/mlx4/main.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/ethernet/mellanox/mlx4/main.c b/drivers/net/ethernet/mellanox/mlx4/main.c
> index 4cae7db8d49c..954c22c79f6b 100644
> +++ b/drivers/net/ethernet/mellanox/mlx4/main.c
> @@ -4370,7 +4370,7 @@ static const struct pci_error_handlers mlx4_err_handler = {
>  	.resume		= mlx4_pci_resume,
>  };
>  
> -static int mlx4_suspend(struct device *dev_d)
> +static int __maybe_unused mlx4_suspend(struct device *dev_d)
>  {

This seems like a poor idea, every place using SIMPLE_DEV_PM_OPS would
need this annotation.

Seems better to add something to the macro, IMHO

Jason
David Miller July 2, 2020, 9:24 p.m. UTC | #5
From: Wei Yongjun <weiyongjun1@huawei.com>
Date: Thu, 2 Jul 2020 17:19:46 +0800

> In certain configurations without power management support, the
> following warnings happen:
> 
> drivers/net/ethernet/mellanox/mlx4/main.c:4388:12:
>  warning: 'mlx4_resume' defined but not used [-Wunused-function]
>  4388 | static int mlx4_resume(struct device *dev_d)
>       |            ^~~~~~~~~~~
> drivers/net/ethernet/mellanox/mlx4/main.c:4373:12: warning:
>  'mlx4_suspend' defined but not used [-Wunused-function]
>  4373 | static int mlx4_suspend(struct device *dev_d)
>       |            ^~~~~~~~~~~~
>       
> Mark these functions as __maybe_unused to make it clear to the
> compiler that this is going to happen based on the configuration,
> which is the standard for these types of functions.
> 
> Fixes: 0e3e206a3e12 ("mlx4: use generic power management")
> Reported-by: Hulk Robot <hulkci@huawei.com>
> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>

Applied.
diff mbox series

Patch

diff --git a/drivers/net/ethernet/mellanox/mlx4/main.c b/drivers/net/ethernet/mellanox/mlx4/main.c
index 4cae7db8d49c..954c22c79f6b 100644
--- a/drivers/net/ethernet/mellanox/mlx4/main.c
+++ b/drivers/net/ethernet/mellanox/mlx4/main.c
@@ -4370,7 +4370,7 @@  static const struct pci_error_handlers mlx4_err_handler = {
 	.resume		= mlx4_pci_resume,
 };
 
-static int mlx4_suspend(struct device *dev_d)
+static int __maybe_unused mlx4_suspend(struct device *dev_d)
 {
 	struct pci_dev *pdev = to_pci_dev(dev_d);
 	struct mlx4_dev_persistent *persist = pci_get_drvdata(pdev);
@@ -4385,7 +4385,7 @@  static int mlx4_suspend(struct device *dev_d)
 	return 0;
 }
 
-static int mlx4_resume(struct device *dev_d)
+static int __maybe_unused mlx4_resume(struct device *dev_d)
 {
 	struct pci_dev *pdev = to_pci_dev(dev_d);
 	struct mlx4_dev_persistent *persist = pci_get_drvdata(pdev);