Matthew Wilcox 64ac24e738 Generic semaphore implementation
Semaphores are no longer performance-critical, so a generic C
implementation is better for maintainability, debuggability and
extensibility.  Thanks to Peter Zijlstra for fixing the lockdep
warning.  Thanks to Harvey Harrison for pointing out that the
unlikely() was unnecessary.

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
2008-04-17 10:42:34 -04:00
..
2008-02-14 14:22:12 +09:00
2007-05-14 09:18:35 +09:00
2006-10-03 13:16:15 +09:00
2005-04-16 15:20:36 -07:00
2008-01-28 13:18:58 +09:00
2008-01-28 13:18:58 +09:00
2008-01-28 13:18:58 +09:00
2008-01-28 13:18:58 +09:00
2008-01-28 13:18:58 +09:00
2008-01-28 13:18:52 +09:00
2008-02-14 14:22:10 +09:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2008-03-06 17:23:15 +09:00
2005-04-16 15:20:36 -07:00
2007-09-21 11:57:53 +09:00
2007-05-09 17:36:15 +09:00
2007-05-09 08:58:16 +02:00
2005-04-16 15:20:36 -07:00
2007-07-17 10:23:11 -07:00
2006-01-16 23:15:28 -08:00
2007-06-18 13:58:32 +09:00
2007-06-18 13:58:32 +09:00
2008-01-28 13:19:01 +09:00
2007-09-21 11:57:51 +09:00
2008-02-14 14:22:11 +09:00
2007-09-21 11:57:48 +09:00
2008-02-14 14:22:09 +09:00
2008-02-14 14:25:37 +09:00
2006-01-10 08:01:34 -08:00
2008-02-14 14:22:07 +09:00
2005-04-16 15:20:36 -07:00
2008-02-14 14:22:12 +09:00
2007-05-07 02:11:55 +00:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2008-01-28 23:21:18 +01:00
2006-02-15 15:32:22 -08:00
2007-02-13 10:54:45 +09:00
2007-06-08 02:43:49 +00:00
2008-01-28 13:18:39 +09:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2008-01-28 13:19:01 +09:00
2008-01-28 13:18:55 +09:00
2005-04-16 15:20:36 -07:00
2006-09-27 16:20:22 +09:00
2007-05-11 08:29:34 -07:00
2005-04-16 15:20:36 -07:00
2008-02-14 14:22:09 +09:00
2008-01-28 13:19:04 +09:00
2006-12-06 10:45:37 +09:00
2005-04-16 15:20:36 -07:00
2008-04-17 10:42:34 -04:00
2005-04-16 15:20:36 -07:00
2007-02-15 18:20:52 +09:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-10-19 17:31:22 +09:00
2008-01-28 13:18:57 +09:00
2005-04-16 15:20:36 -07:00
2007-06-08 02:43:43 +00:00
2005-04-16 15:20:36 -07:00
2008-02-14 14:22:09 +09:00
2008-02-14 14:22:09 +09:00
2008-02-14 14:22:07 +09:00
2008-02-14 14:22:07 +09:00
2008-01-28 23:21:18 +01:00
2005-04-16 15:20:36 -07:00
2007-10-19 11:53:34 -07:00
2007-06-08 02:43:49 +00:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2008-02-14 14:22:08 +09:00
2008-02-14 14:22:08 +09:00
2008-02-07 08:42:30 -08:00
2007-11-07 20:19:30 +09:00
2006-09-27 12:31:01 +09:00
2005-04-16 15:20:36 -07:00