Re: [PATCH v2 1/1] PM: Revert "Add EXPORT macros for exporting PM functions"

From: Richard Fitzgerald
Date: Thu Jan 16 2025 - 11:59:24 EST


On 16/01/2025 4:09 pm, Rafael J. Wysocki wrote:
On Thu, Jan 16, 2025 at 4:44 PM Andy Shevchenko
<andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:

The introduced macros are not doing what they intend for, namely
they won't eliminate the code when CONFIG_PM=n.

I don't think they have ever been expected to eliminate the code then.
They just don't export the symbols in that case.

Also there were no users of them for all this time.


I had code changes to use them but they got lost at the bottom of a long
backlog of other commits and have never been upstreamed. Removing these
macros is fine with me.

(apologies if you get this msg twice, there was a problem with email)

This actually is a good argument for dropping stuff.

Drop them for good and to avoid possible misleading.

This reverts commit 41a337b40e983db4f0e1602308109f2b93687a06.

Reported-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
---
v2: elaborated commit message (Greg), Cc'ed to the original author
include/linux/pm.h | 4 ----
1 file changed, 4 deletions(-)

diff --git a/include/linux/pm.h b/include/linux/pm.h
index 08c37b83fea8..5dae93817141 100644
--- a/include/linux/pm.h
+++ b/include/linux/pm.h
@@ -384,12 +384,8 @@ const struct dev_pm_ops name = { \

#ifdef CONFIG_PM
#define _EXPORT_DEV_PM_OPS(name, license, ns) _EXPORT_PM_OPS(name, license, ns)
-#define EXPORT_PM_FN_GPL(name) EXPORT_SYMBOL_GPL(name)
-#define EXPORT_PM_FN_NS_GPL(name, ns) EXPORT_SYMBOL_NS_GPL(name, "ns")
#else
#define _EXPORT_DEV_PM_OPS(name, license, ns) _DISCARD_PM_OPS(name, license, ns)
-#define EXPORT_PM_FN_GPL(name)
-#define EXPORT_PM_FN_NS_GPL(name, ns)
#endif

#ifdef CONFIG_PM_SLEEP
--