The s390 allmodconfig builds failed on Linux next master branch with gcc-13.
s390:
allmodconfig - gcc-13 - fail
Reported-by: Linux Kernel Functional Testing <[email protected]>
Build log:
--------
drivers/clk/imx/clk-imx8mp-audiomix.c:363:12: error:
'clk_imx8mp_audiomix_runtime_resume' defined but not used
[-Werror=unused-function]
363 | static int clk_imx8mp_audiomix_runtime_resume(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/clk/imx/clk-imx8mp-audiomix.c:356:12: error:
'clk_imx8mp_audiomix_runtime_suspend' defined but not used
[-Werror=unused-function]
356 | static int clk_imx8mp_audiomix_runtime_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
metadata:
----
git_describe: next-20240429
git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
git_short_log: b0a2c79c6f35 ("Add linux-next specific files for 20240429")
arch: s390
toolchain: gcc-13
Steps to reproduce:
---
# tuxmake --runtime podman --target-arch s390 --toolchain gcc-13
--kconfig allmodconfig
Links:
----
- https://storage.tuxsuite.com/public/linaro/lkft/builds/2fmJ3qzFbmI2ACNTo81vzzgQaLS/
- https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240429/testrun/23715243/suite/build/test/gcc-13-allmodconfig/details/
--
Linaro LKFT
https://lkft.linaro.org
Add missing CONFIG_PM ifdefs to fix this allmodconfig compile error:
drivers/clk/imx/clk-imx8mp-audiomix.c:356:12: error:
'clk_imx8mp_audiomix_runtime_suspend' defined but not used
[-Werror=unused-function]
356 | static int clk_imx8mp_audiomix_runtime_suspend(struct device *dev)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Reported-by: Linux Kernel Functional Testing <[email protected]>
Closes: https://lore.kernel.org/r/CA+G9fYuP7S+a89Ep5g5_Ad69EMwRkJ8nM+MMTzbEcP+6H2oMXQ@mail.gmail.com
Fixes: 1496dd413b2e ("clk: imx: imx8mp: Add pm_runtime support for power saving")
Signed-off-by: Heiko Carstens <[email protected]>
---
drivers/clk/imx/clk-imx8mp-audiomix.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/clk/imx/clk-imx8mp-audiomix.c b/drivers/clk/imx/clk-imx8mp-audiomix.c
index 574a032309c1..6549e55e94c9 100644
--- a/drivers/clk/imx/clk-imx8mp-audiomix.c
+++ b/drivers/clk/imx/clk-imx8mp-audiomix.c
@@ -217,6 +217,8 @@ struct clk_imx8mp_audiomix_priv {
struct clk_hw_onecell_data clk_data;
};
+#ifdef CONFIG_PM
+
static void clk_imx8mp_audiomix_save_restore(struct device *dev, bool save)
{
struct clk_imx8mp_audiomix_priv *priv = dev_get_drvdata(dev);
@@ -232,6 +234,8 @@ static void clk_imx8mp_audiomix_save_restore(struct device *dev, bool save)
}
}
+#endif /* CONFIG_PM */
+
static int clk_imx8mp_audiomix_probe(struct platform_device *pdev)
{
struct clk_imx8mp_audiomix_priv *priv;
@@ -353,6 +357,8 @@ static int clk_imx8mp_audiomix_remove(struct platform_device *pdev)
return 0;
}
+#ifdef CONFIG_PM
+
static int clk_imx8mp_audiomix_runtime_suspend(struct device *dev)
{
clk_imx8mp_audiomix_save_restore(dev, true);
@@ -367,6 +373,8 @@ static int clk_imx8mp_audiomix_runtime_resume(struct device *dev)
return 0;
}
+#endif /* CONFIG_PM */
+
static const struct dev_pm_ops clk_imx8mp_audiomix_pm_ops = {
SET_RUNTIME_PM_OPS(clk_imx8mp_audiomix_runtime_suspend,
clk_imx8mp_audiomix_runtime_resume, NULL)
--
2.40.1
On Tue, Apr 30, 2024, at 16:16, Heiko Carstens wrote:
> Add missing CONFIG_PM ifdefs to fix this allmodconfig compile error:
>
> drivers/clk/imx/clk-imx8mp-audiomix.c:356:12: error:
> 'clk_imx8mp_audiomix_runtime_suspend' defined but not used
> [-Werror=unused-function]
> 356 | static int clk_imx8mp_audiomix_runtime_suspend(struct device *dev)
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
> Closes:
> https://lore.kernel.org/r/CA+G9fYuP7S+a89Ep5g5_Ad69EMwRkJ8nM+MMTzbEcP+6H2oMXQ@mail.gmail.com
> Fixes: 1496dd413b2e ("clk: imx: imx8mp: Add pm_runtime support for
> power saving")
> Signed-off-by: Heiko Carstens <[email protected]>
Thanks for your patch. I see the bug as well, but
I think a better fix is to replace the deprecated
SET_RUNTIME_PM_OPS() and SET_NOIRQ_SYSTEM_SLEEP_PM_OPS()
with the modern variants, RUNTIME_PM_OPS() and
RUNTIME_PM_OPS().
Arnd