[tip: locking/core] locking/ww_mutex: Move the ww_mutex definitions from <linux/mutex.h> into <linux/ww_mutex.h>

From: tip-bot2 for Thomas Gleixner
Date: Tue Aug 17 2021 - 16:15:48 EST


The following commit has been merged into the locking/core branch of tip:

Commit-ID: 4f1893ec8cfb4b17e3b89158a1e3e550a9a9bf3c
Gitweb: https://git.kernel.org/tip/4f1893ec8cfb4b17e3b89158a1e3e550a9a9bf3c
Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
AuthorDate: Sun, 15 Aug 2021 23:28:34 +02:00
Committer: Ingo Molnar <mingo@xxxxxxxxxx>
CommitterDate: Tue, 17 Aug 2021 18:24:31 +02:00

locking/ww_mutex: Move the ww_mutex definitions from <linux/mutex.h> into <linux/ww_mutex.h>

Move the ww_mutex definitions into the ww_mutex specific header where they
belong.

Preparatory change to allow compiling ww_mutexes standalone.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
Link: https://lore.kernel.org/r/20210815211304.110216293@xxxxxxxxxxxxx
---
include/linux/mutex.h | 11 -----------
include/linux/ww_mutex.h | 8 ++++++++
2 files changed, 8 insertions(+), 11 deletions(-)

diff --git a/include/linux/mutex.h b/include/linux/mutex.h
index 62bafee..db33675 100644
--- a/include/linux/mutex.h
+++ b/include/linux/mutex.h
@@ -20,9 +20,6 @@
#include <linux/osq_lock.h>
#include <linux/debug_locks.h>

-struct ww_class;
-struct ww_acquire_ctx;
-
/*
* Simple, straightforward mutexes with strict semantics:
*
@@ -66,14 +63,6 @@ struct mutex {
#endif
};

-struct ww_mutex {
- struct mutex base;
- struct ww_acquire_ctx *ctx;
-#ifdef CONFIG_DEBUG_MUTEXES
- struct ww_class *ww_class;
-#endif
-};
-
#ifdef CONFIG_DEBUG_MUTEXES

#define __DEBUG_MUTEX_INITIALIZER(lockname) \
diff --git a/include/linux/ww_mutex.h b/include/linux/ww_mutex.h
index b77f39f..590aaa2 100644
--- a/include/linux/ww_mutex.h
+++ b/include/linux/ww_mutex.h
@@ -28,6 +28,14 @@ struct ww_class {
unsigned int is_wait_die;
};

+struct ww_mutex {
+ struct mutex base;
+ struct ww_acquire_ctx *ctx;
+#ifdef CONFIG_DEBUG_MUTEXES
+ struct ww_class *ww_class;
+#endif
+};
+
struct ww_acquire_ctx {
struct task_struct *task;
unsigned long stamp;