[05/28] PM: QoS: Clean up pm_qos_read_value() and pm_qos_get/set_value()
diff mbox series

Message ID 4773736.iBQsUQvRLO@kreacher
State Deferred
Headers show
Series
  • PM: QoS: Get rid of unuseful code and rework CPU latency QoS interface
Related show

Commit Message

Rafael J. Wysocki Feb. 11, 2020, 10:58 p.m. UTC
From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>

Move the definition of pm_qos_read_value() before the one of
pm_qos_get_value() and add a kerneldoc comment to it (as it is
not static).

Also replace the BUG() in pm_qos_get_value() with WARN() (to
prevent the kernel from crashing if an unknown PM QoS type is
used by mistake) and drop the comment next to it that is not
necessary any more.

Additionally, drop the unnecessary inline modifier from the header
of pm_qos_set_value().

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
 kernel/power/qos.c | 22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

Patch
diff mbox series

diff --git a/kernel/power/qos.c b/kernel/power/qos.c
index 6a36809d6160..f09eca5ffe07 100644
--- a/kernel/power/qos.c
+++ b/kernel/power/qos.c
@@ -98,8 +98,16 @@  static const struct file_operations pm_qos_power_fops = {
 	.llseek = noop_llseek,
 };
 
-/* unlocked internal variant */
-static inline int pm_qos_get_value(struct pm_qos_constraints *c)
+/**
+ * pm_qos_read_value - Return the current effective constraint value.
+ * @c: List of PM QoS constraint requests.
+ */
+s32 pm_qos_read_value(struct pm_qos_constraints *c)
+{
+	return c->target_value;
+}
+
+static int pm_qos_get_value(struct pm_qos_constraints *c)
 {
 	if (plist_head_empty(&c->list))
 		return c->no_constraint_value;
@@ -112,18 +120,12 @@  static inline int pm_qos_get_value(struct pm_qos_constraints *c)
 		return plist_last(&c->list)->prio;
 
 	default:
-		/* runtime check for not using enum */
-		BUG();
+		WARN(1, "Unknown PM QoS type in %s\n", __func__);
 		return PM_QOS_DEFAULT_VALUE;
 	}
 }
 
-s32 pm_qos_read_value(struct pm_qos_constraints *c)
-{
-	return c->target_value;
-}
-
-static inline void pm_qos_set_value(struct pm_qos_constraints *c, s32 value)
+static void pm_qos_set_value(struct pm_qos_constraints *c, s32 value)
 {
 	c->target_value = value;
 }