mutex: Fix up mutex_waiter usage
authorPeter Zijlstra <peterz@infradead.org>
Thu, 8 Aug 2019 06:47:14 +0000 (08:47 +0200)
committerPeter Zijlstra <peterz@infradead.org>
Thu, 8 Aug 2019 07:09:25 +0000 (09:09 +0200)
The patch moving bits into mutex.c was a little too much; by also
moving struct mutex_waiter a few less common CONFIGs would no longer
build.

Fixes: 5f35d5a66b3e ("locking/mutex: Make __mutex_owner static to mutex.c")
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
include/linux/mutex.h
kernel/locking/mutex.c
kernel/locking/mutex.h

index eb8c62a..aca8f36 100644 (file)
@@ -65,6 +65,19 @@ struct mutex {
 #endif
 };
 
+/*
+ * This is the control structure for tasks blocked on mutex,
+ * which resides on the blocked task's kernel stack:
+ */
+struct mutex_waiter {
+       struct list_head        list;
+       struct task_struct      *task;
+       struct ww_acquire_ctx   *ww_ctx;
+#ifdef CONFIG_DEBUG_MUTEXES
+       void                    *magic;
+#endif
+};
+
 #ifdef CONFIG_DEBUG_MUTEXES
 
 #define __DEBUG_MUTEX_INITIALIZER(lockname)                            \
index b4bcb02..468a9b8 100644 (file)
 # include "mutex.h"
 #endif
 
-/*
- * This is the control structure for tasks blocked on mutex,
- * which resides on the blocked task's kernel stack:
- */
-struct mutex_waiter {
-       struct list_head        list;
-       struct task_struct      *task;
-       struct ww_acquire_ctx   *ww_ctx;
-#ifdef CONFIG_DEBUG_MUTEXES
-       void                    *magic;
-#endif
-};
-
 void
 __mutex_init(struct mutex *lock, const char *name, struct lock_class_key *key)
 {
index 7cde5c6..1c2287d 100644 (file)
@@ -19,8 +19,6 @@
 #define debug_mutex_unlock(lock)                       do { } while (0)
 #define debug_mutex_init(lock, name, key)              do { } while (0)
 
-struct mutex_waiter;
-
 static inline void
 debug_mutex_lock_common(struct mutex *lock, struct mutex_waiter *waiter)
 {