diff options
Diffstat (limited to 'kernel/locking/rtmutex.c')
-rw-r--r-- | kernel/locking/rtmutex.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c index fa83d36e30c6..2874bf556162 100644 --- a/kernel/locking/rtmutex.c +++ b/kernel/locking/rtmutex.c | |||
@@ -628,8 +628,7 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task, | |||
628 | } | 628 | } |
629 | 629 | ||
630 | /* [10] Grab the next task, i.e. owner of @lock */ | 630 | /* [10] Grab the next task, i.e. owner of @lock */ |
631 | task = rt_mutex_owner(lock); | 631 | task = get_task_struct(rt_mutex_owner(lock)); |
632 | get_task_struct(task); | ||
633 | raw_spin_lock(&task->pi_lock); | 632 | raw_spin_lock(&task->pi_lock); |
634 | 633 | ||
635 | /* | 634 | /* |
@@ -709,8 +708,7 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task, | |||
709 | } | 708 | } |
710 | 709 | ||
711 | /* [10] Grab the next task, i.e. the owner of @lock */ | 710 | /* [10] Grab the next task, i.e. the owner of @lock */ |
712 | task = rt_mutex_owner(lock); | 711 | task = get_task_struct(rt_mutex_owner(lock)); |
713 | get_task_struct(task); | ||
714 | raw_spin_lock(&task->pi_lock); | 712 | raw_spin_lock(&task->pi_lock); |
715 | 713 | ||
716 | /* [11] requeue the pi waiters if necessary */ | 714 | /* [11] requeue the pi waiters if necessary */ |