diff options
author | Lai Jiangshan <laijs@cn.fujitsu.com> | 2010-12-21 04:55:10 -0500 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2011-03-11 15:09:53 -0500 |
commit | 017f2b239dabb2740b91df162e004371b861f371 (patch) | |
tree | ed429ce014e9998abe35a764e48e1ad22b46da59 /kernel/futex.c | |
parent | 2e12978a9f7a7abd54e8eb9ce70a7718767b8b2c (diff) |
futex,plist: Remove debug lock assignment from plist_node
The original code uses &plist_node->plist as the fake head of
the priority list for plist_del(), these debug locks in
the fake head are needed for CONFIG_DEBUG_PI_LIST.
But now we always pass the real head to plist_del(), the debug locks
in plist_node will not be used, so we remove these assignments.
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
LKML-Reference: <4D10797E.7040803@cn.fujitsu.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/futex.c')
-rw-r--r-- | kernel/futex.c | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/kernel/futex.c b/kernel/futex.c index 6feeea4f8f15..9fe913141ec9 100644 --- a/kernel/futex.c +++ b/kernel/futex.c | |||
@@ -1089,9 +1089,6 @@ void requeue_futex(struct futex_q *q, struct futex_hash_bucket *hb1, | |||
1089 | plist_del(&q->list, &hb1->chain); | 1089 | plist_del(&q->list, &hb1->chain); |
1090 | plist_add(&q->list, &hb2->chain); | 1090 | plist_add(&q->list, &hb2->chain); |
1091 | q->lock_ptr = &hb2->lock; | 1091 | q->lock_ptr = &hb2->lock; |
1092 | #ifdef CONFIG_DEBUG_PI_LIST | ||
1093 | q->list.plist.spinlock = &hb2->lock; | ||
1094 | #endif | ||
1095 | } | 1092 | } |
1096 | get_futex_key_refs(key2); | 1093 | get_futex_key_refs(key2); |
1097 | q->key = *key2; | 1094 | q->key = *key2; |
@@ -1124,9 +1121,6 @@ void requeue_pi_wake_futex(struct futex_q *q, union futex_key *key, | |||
1124 | q->rt_waiter = NULL; | 1121 | q->rt_waiter = NULL; |
1125 | 1122 | ||
1126 | q->lock_ptr = &hb->lock; | 1123 | q->lock_ptr = &hb->lock; |
1127 | #ifdef CONFIG_DEBUG_PI_LIST | ||
1128 | q->list.plist.spinlock = &hb->lock; | ||
1129 | #endif | ||
1130 | 1124 | ||
1131 | wake_up_state(q->task, TASK_NORMAL); | 1125 | wake_up_state(q->task, TASK_NORMAL); |
1132 | } | 1126 | } |
@@ -1474,9 +1468,6 @@ static inline void queue_me(struct futex_q *q, struct futex_hash_bucket *hb) | |||
1474 | prio = min(current->normal_prio, MAX_RT_PRIO); | 1468 | prio = min(current->normal_prio, MAX_RT_PRIO); |
1475 | 1469 | ||
1476 | plist_node_init(&q->list, prio); | 1470 | plist_node_init(&q->list, prio); |
1477 | #ifdef CONFIG_DEBUG_PI_LIST | ||
1478 | q->list.plist.spinlock = &hb->lock; | ||
1479 | #endif | ||
1480 | plist_add(&q->list, &hb->chain); | 1471 | plist_add(&q->list, &hb->chain); |
1481 | q->task = current; | 1472 | q->task = current; |
1482 | spin_unlock(&hb->lock); | 1473 | spin_unlock(&hb->lock); |