Patchwork PM / wakeup: Drop wakeup_source_drop()

login
register
mail settings
Submitter Rafael J. Wysocki
Date March 11, 2019, 11:53 a.m.
Message ID <2820276.PxaWYKrF8K@aspire.rjw.lan>
Download mbox | patch
Permalink /patch/745917/
State New
Headers show

Comments

Rafael J. Wysocki - March 11, 2019, 11:53 a.m.
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

After commit d856f39ac1cc ("PM / wakeup: Rework wakeup source timer
cancellation") wakeup_source_drop() is a trivial wrapper around
__pm_relax() and it has no users except for wakeup_source_destroy()
and wakeup_source_trash() which also has no users, so drop it along
with the latter and make wakeup_source_destroy() call __pm_relax()
directly.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---

Commit d856f39ac1cc is in the bleeding-edge branch of the linux-pm.git tree.

---
 drivers/base/power/wakeup.c |   18 +-----------------
 include/linux/pm_wakeup.h   |    9 ---------
 2 files changed, 1 insertion(+), 26 deletions(-)
Viresh Kumar - March 12, 2019, 3:25 a.m.
On 11-03-19, 12:53, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> 
> After commit d856f39ac1cc ("PM / wakeup: Rework wakeup source timer
> cancellation") wakeup_source_drop() is a trivial wrapper around
> __pm_relax() and it has no users except for wakeup_source_destroy()
> and wakeup_source_trash() which also has no users, so drop it along
> with the latter and make wakeup_source_destroy() call __pm_relax()
> directly.
> 
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
> 
> Commit d856f39ac1cc is in the bleeding-edge branch of the linux-pm.git tree.
> 
> ---
>  drivers/base/power/wakeup.c |   18 +-----------------
>  include/linux/pm_wakeup.h   |    9 ---------
>  2 files changed, 1 insertion(+), 26 deletions(-)

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>

Patch

Index: linux-pm/include/linux/pm_wakeup.h
===================================================================
--- linux-pm.orig/include/linux/pm_wakeup.h
+++ linux-pm/include/linux/pm_wakeup.h
@@ -96,7 +96,6 @@  static inline void device_set_wakeup_pat
 /* drivers/base/power/wakeup.c */
 extern void wakeup_source_prepare(struct wakeup_source *ws, const char *name);
 extern struct wakeup_source *wakeup_source_create(const char *name);
-extern void wakeup_source_drop(struct wakeup_source *ws);
 extern void wakeup_source_destroy(struct wakeup_source *ws);
 extern void wakeup_source_add(struct wakeup_source *ws);
 extern void wakeup_source_remove(struct wakeup_source *ws);
@@ -134,8 +133,6 @@  static inline struct wakeup_source *wake
 	return NULL;
 }
 
-static inline void wakeup_source_drop(struct wakeup_source *ws) {}
-
 static inline void wakeup_source_destroy(struct wakeup_source *ws) {}
 
 static inline void wakeup_source_add(struct wakeup_source *ws) {}
@@ -204,12 +201,6 @@  static inline void wakeup_source_init(st
 	wakeup_source_add(ws);
 }
 
-static inline void wakeup_source_trash(struct wakeup_source *ws)
-{
-	wakeup_source_remove(ws);
-	wakeup_source_drop(ws);
-}
-
 static inline void __pm_wakeup_event(struct wakeup_source *ws, unsigned int msec)
 {
 	return pm_wakeup_ws_event(ws, msec, false);
Index: linux-pm/drivers/base/power/wakeup.c
===================================================================
--- linux-pm.orig/drivers/base/power/wakeup.c
+++ linux-pm/drivers/base/power/wakeup.c
@@ -106,22 +106,6 @@  struct wakeup_source *wakeup_source_crea
 }
 EXPORT_SYMBOL_GPL(wakeup_source_create);
 
-/**
- * wakeup_source_drop - Prepare a struct wakeup_source object for destruction.
- * @ws: Wakeup source to prepare for destruction.
- *
- * Callers must ensure that __pm_stay_awake() or __pm_wakeup_event() will never
- * be run in parallel with this function for the same wakeup source object.
- */
-void wakeup_source_drop(struct wakeup_source *ws)
-{
-	if (!ws)
-		return;
-
-	__pm_relax(ws);
-}
-EXPORT_SYMBOL_GPL(wakeup_source_drop);
-
 /*
  * Record wakeup_source statistics being deleted into a dummy wakeup_source.
  */
@@ -161,7 +145,7 @@  void wakeup_source_destroy(struct wakeup
 	if (!ws)
 		return;
 
-	wakeup_source_drop(ws);
+	__pm_relax(ws);
 	wakeup_source_record(ws);
 	kfree_const(ws->name);
 	kfree(ws);