diff options
| author | Ingo Molnar <mingo@kernel.org> | 2018-01-08 11:27:19 -0500 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2018-01-08 11:30:45 -0500 |
| commit | 527187d28569e39c5d489d6306d3b79605cf85a6 (patch) | |
| tree | f3735296962d24a3952f1d72ec1bb29bd57cec80 | |
| parent | dba04eb76df982703fefc021a4d278347b6176a9 (diff) | |
locking/lockdep: Remove cross-release leftovers
There's two cross-release leftover facilities:
- the crossrelease_hist_*() irq-tracing callbacks (NOPs currently)
- the complete_release_commit() callback (NOP as well)
Remove them.
Cc: David Sterba <dsterba@suse.com>
Cc: Byungchul Park <byungchul.park@lge.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
| -rw-r--r-- | include/linux/completion.h | 1 | ||||
| -rw-r--r-- | include/linux/irqflags.h | 4 | ||||
| -rw-r--r-- | include/linux/lockdep.h | 2 | ||||
| -rw-r--r-- | kernel/sched/completion.c | 5 |
4 files changed, 0 insertions, 12 deletions
diff --git a/include/linux/completion.h b/include/linux/completion.h index 94a59ba7d422..519e94915d18 100644 --- a/include/linux/completion.h +++ b/include/linux/completion.h | |||
| @@ -32,7 +32,6 @@ struct completion { | |||
| 32 | #define init_completion(x) __init_completion(x) | 32 | #define init_completion(x) __init_completion(x) |
| 33 | static inline void complete_acquire(struct completion *x) {} | 33 | static inline void complete_acquire(struct completion *x) {} |
| 34 | static inline void complete_release(struct completion *x) {} | 34 | static inline void complete_release(struct completion *x) {} |
| 35 | static inline void complete_release_commit(struct completion *x) {} | ||
| 36 | 35 | ||
| 37 | #define COMPLETION_INITIALIZER(work) \ | 36 | #define COMPLETION_INITIALIZER(work) \ |
| 38 | { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) } | 37 | { 0, __WAIT_QUEUE_HEAD_INITIALIZER((work).wait) } |
diff --git a/include/linux/irqflags.h b/include/linux/irqflags.h index 46cb57d5eb13..1b3996ff3f16 100644 --- a/include/linux/irqflags.h +++ b/include/linux/irqflags.h | |||
| @@ -27,22 +27,18 @@ | |||
| 27 | # define trace_hardirq_enter() \ | 27 | # define trace_hardirq_enter() \ |
| 28 | do { \ | 28 | do { \ |
| 29 | current->hardirq_context++; \ | 29 | current->hardirq_context++; \ |
| 30 | crossrelease_hist_start(XHLOCK_HARD); \ | ||
| 31 | } while (0) | 30 | } while (0) |
| 32 | # define trace_hardirq_exit() \ | 31 | # define trace_hardirq_exit() \ |
| 33 | do { \ | 32 | do { \ |
| 34 | current->hardirq_context--; \ | 33 | current->hardirq_context--; \ |
| 35 | crossrelease_hist_end(XHLOCK_HARD); \ | ||
| 36 | } while (0) | 34 | } while (0) |
| 37 | # define lockdep_softirq_enter() \ | 35 | # define lockdep_softirq_enter() \ |
| 38 | do { \ | 36 | do { \ |
| 39 | current->softirq_context++; \ | 37 | current->softirq_context++; \ |
| 40 | crossrelease_hist_start(XHLOCK_SOFT); \ | ||
| 41 | } while (0) | 38 | } while (0) |
| 42 | # define lockdep_softirq_exit() \ | 39 | # define lockdep_softirq_exit() \ |
| 43 | do { \ | 40 | do { \ |
| 44 | current->softirq_context--; \ | 41 | current->softirq_context--; \ |
| 45 | crossrelease_hist_end(XHLOCK_SOFT); \ | ||
| 46 | } while (0) | 42 | } while (0) |
| 47 | # define INIT_TRACE_IRQFLAGS .softirqs_enabled = 1, | 43 | # define INIT_TRACE_IRQFLAGS .softirqs_enabled = 1, |
| 48 | #else | 44 | #else |
diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h index 2e75dc34bff5..3251d9c0d313 100644 --- a/include/linux/lockdep.h +++ b/include/linux/lockdep.h | |||
| @@ -475,8 +475,6 @@ enum xhlock_context_t { | |||
| 475 | #define STATIC_LOCKDEP_MAP_INIT(_name, _key) \ | 475 | #define STATIC_LOCKDEP_MAP_INIT(_name, _key) \ |
| 476 | { .name = (_name), .key = (void *)(_key), } | 476 | { .name = (_name), .key = (void *)(_key), } |
| 477 | 477 | ||
| 478 | static inline void crossrelease_hist_start(enum xhlock_context_t c) {} | ||
| 479 | static inline void crossrelease_hist_end(enum xhlock_context_t c) {} | ||
| 480 | static inline void lockdep_invariant_state(bool force) {} | 478 | static inline void lockdep_invariant_state(bool force) {} |
| 481 | static inline void lockdep_init_task(struct task_struct *task) {} | 479 | static inline void lockdep_init_task(struct task_struct *task) {} |
| 482 | static inline void lockdep_free_task(struct task_struct *task) {} | 480 | static inline void lockdep_free_task(struct task_struct *task) {} |
diff --git a/kernel/sched/completion.c b/kernel/sched/completion.c index 2ddaec40956f..0926aef10dad 100644 --- a/kernel/sched/completion.c +++ b/kernel/sched/completion.c | |||
| @@ -34,11 +34,6 @@ void complete(struct completion *x) | |||
| 34 | 34 | ||
| 35 | spin_lock_irqsave(&x->wait.lock, flags); | 35 | spin_lock_irqsave(&x->wait.lock, flags); |
| 36 | 36 | ||
| 37 | /* | ||
| 38 | * Perform commit of crossrelease here. | ||
| 39 | */ | ||
| 40 | complete_release_commit(x); | ||
| 41 | |||
| 42 | if (x->done != UINT_MAX) | 37 | if (x->done != UINT_MAX) |
| 43 | x->done++; | 38 | x->done++; |
| 44 | __wake_up_locked(&x->wait, TASK_NORMAL, 1); | 39 | __wake_up_locked(&x->wait, TASK_NORMAL, 1); |
