mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-07-20 01:29:07 +00:00
87 lines
2.7 KiB
Diff
87 lines
2.7 KiB
Diff
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|
Date: Tue, 29 Sep 2020 15:21:17 +0200
|
|
Subject: [PATCH 01/22] locking/rtmutex: Remove cruft
|
|
|
|
Most of this is around since the very beginning. I'm not sure if this
|
|
was used while the rtmutex-deadlock-tester was around but today it seems
|
|
to only waste memory:
|
|
- save_state: No users
|
|
- name: Assigned and printed if a dead lock was detected. I'm keeping it
|
|
but want to point out that lockdep has the same information.
|
|
- file + line: Printed if ::name was NULL. This is only used for
|
|
in-kernel locks so it ::name shouldn't be NULL and then ::file and
|
|
::line isn't used.
|
|
- magic: Assigned to NULL by rt_mutex_destroy().
|
|
|
|
Remove members of rt_mutex which are not used.
|
|
|
|
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|
---
|
|
include/linux/rtmutex.h | 7 ++-----
|
|
kernel/locking/rtmutex-debug.c | 7 +------
|
|
kernel/locking/rtmutex.c | 3 ---
|
|
kernel/locking/rtmutex_common.h | 1 -
|
|
4 files changed, 3 insertions(+), 15 deletions(-)
|
|
|
|
--- a/include/linux/rtmutex.h
|
|
+++ b/include/linux/rtmutex.h
|
|
@@ -32,10 +32,7 @@ struct rt_mutex {
|
|
struct rb_root_cached waiters;
|
|
struct task_struct *owner;
|
|
#ifdef CONFIG_DEBUG_RT_MUTEXES
|
|
- int save_state;
|
|
- const char *name, *file;
|
|
- int line;
|
|
- void *magic;
|
|
+ const char *name;
|
|
#endif
|
|
#ifdef CONFIG_DEBUG_LOCK_ALLOC
|
|
struct lockdep_map dep_map;
|
|
@@ -60,7 +57,7 @@ struct hrtimer_sleeper;
|
|
|
|
#ifdef CONFIG_DEBUG_RT_MUTEXES
|
|
# define __DEBUG_RT_MUTEX_INITIALIZER(mutexname) \
|
|
- , .name = #mutexname, .file = __FILE__, .line = __LINE__
|
|
+ , .name = #mutexname
|
|
|
|
# define rt_mutex_init(mutex) \
|
|
do { \
|
|
--- a/kernel/locking/rtmutex-debug.c
|
|
+++ b/kernel/locking/rtmutex-debug.c
|
|
@@ -42,12 +42,7 @@ static void printk_task(struct task_stru
|
|
|
|
static void printk_lock(struct rt_mutex *lock, int print_owner)
|
|
{
|
|
- if (lock->name)
|
|
- printk(" [%p] {%s}\n",
|
|
- lock, lock->name);
|
|
- else
|
|
- printk(" [%p] {%s:%d}\n",
|
|
- lock, lock->file, lock->line);
|
|
+ printk(" [%p] {%s}\n", lock, lock->name);
|
|
|
|
if (print_owner && rt_mutex_owner(lock)) {
|
|
printk(".. ->owner: %p\n", lock->owner);
|
|
--- a/kernel/locking/rtmutex.c
|
|
+++ b/kernel/locking/rtmutex.c
|
|
@@ -1655,9 +1655,6 @@ void __sched rt_mutex_futex_unlock(struc
|
|
void rt_mutex_destroy(struct rt_mutex *lock)
|
|
{
|
|
WARN_ON(rt_mutex_is_locked(lock));
|
|
-#ifdef CONFIG_DEBUG_RT_MUTEXES
|
|
- lock->magic = NULL;
|
|
-#endif
|
|
}
|
|
EXPORT_SYMBOL_GPL(rt_mutex_destroy);
|
|
|
|
--- a/kernel/locking/rtmutex_common.h
|
|
+++ b/kernel/locking/rtmutex_common.h
|
|
@@ -30,7 +30,6 @@ struct rt_mutex_waiter {
|
|
struct task_struct *task;
|
|
struct rt_mutex *lock;
|
|
#ifdef CONFIG_DEBUG_RT_MUTEXES
|
|
- unsigned long ip;
|
|
struct pid *deadlock_task_pid;
|
|
struct rt_mutex *deadlock_lock;
|
|
#endif
|