rtmutex.c (712cba5d87a6c0e980ee5fad45734e189c4d7151) | rtmutex.c (194a6b5b9cb6b91a5f7d86984165a3bc55188599) |
---|---|
1/* 2 * RT-Mutexes: simple blocking mutual exclusion locks with PI support 3 * 4 * started by Ingo Molnar and Thomas Gleixner. 5 * 6 * Copyright (C) 2004-2006 Red Hat, Inc., Ingo Molnar <mingo@redhat.com> 7 * Copyright (C) 2005-2006 Timesys Corp., Thomas Gleixner <tglx@timesys.com> 8 * Copyright (C) 2005 Kihon Technologies Inc., Steven Rostedt --- 1368 unchanged lines hidden (view full) --- 1377 return slowfn(lock); 1378} 1379 1380static inline void 1381rt_mutex_fastunlock(struct rt_mutex *lock, 1382 bool (*slowfn)(struct rt_mutex *lock, 1383 struct wake_q_head *wqh)) 1384{ | 1/* 2 * RT-Mutexes: simple blocking mutual exclusion locks with PI support 3 * 4 * started by Ingo Molnar and Thomas Gleixner. 5 * 6 * Copyright (C) 2004-2006 Red Hat, Inc., Ingo Molnar <mingo@redhat.com> 7 * Copyright (C) 2005-2006 Timesys Corp., Thomas Gleixner <tglx@timesys.com> 8 * Copyright (C) 2005 Kihon Technologies Inc., Steven Rostedt --- 1368 unchanged lines hidden (view full) --- 1377 return slowfn(lock); 1378} 1379 1380static inline void 1381rt_mutex_fastunlock(struct rt_mutex *lock, 1382 bool (*slowfn)(struct rt_mutex *lock, 1383 struct wake_q_head *wqh)) 1384{ |
1385 WAKE_Q(wake_q); | 1385 DEFINE_WAKE_Q(wake_q); |
1386 1387 if (likely(rt_mutex_cmpxchg_release(lock, current, NULL))) { 1388 rt_mutex_deadlock_account_unlock(current); 1389 1390 } else { 1391 bool deboost = slowfn(lock, &wake_q); 1392 1393 wake_up_q(&wake_q); --- 306 unchanged lines hidden --- | 1386 1387 if (likely(rt_mutex_cmpxchg_release(lock, current, NULL))) { 1388 rt_mutex_deadlock_account_unlock(current); 1389 1390 } else { 1391 bool deboost = slowfn(lock, &wake_q); 1392 1393 wake_up_q(&wake_q); --- 306 unchanged lines hidden --- |