Gerald Schaefer
335d7afbfb
mutexes, sched: Introduce arch_mutex_cpu_relax()
...
The spinning mutex implementation uses cpu_relax() in busy loops as a
compiler barrier. Depending on the architecture, cpu_relax() may do more
than needed in this specific mutex spin loops. On System z we also give
up the time slice of the virtual cpu in cpu_relax(), which prevents
effective spinning on the mutex.
This patch replaces cpu_relax() in the spinning mutex code with
arch_mutex_cpu_relax(), which can be defined by each architecture that
selects HAVE_ARCH_MUTEX_CPU_RELAX. The default is still cpu_relax(), so
this patch should not affect other architectures than System z for now.
Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com >
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl >
LKML-Reference: <1290437256.7455.4.camel@thinkpad>
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2010-11-26 15:05:34 +01:00
..
2010-11-17 13:54:57 -06:00
2010-10-15 15:53:27 +02:00
2010-11-18 13:22:26 +01:00
2010-11-11 01:51:26 +01:00
2010-09-09 20:48:37 +02:00
2010-11-26 15:05:21 +01:00
2010-08-09 16:48:42 -04:00
2010-07-14 11:29:46 +02:00
2010-10-30 02:18:32 -04:00
2010-10-30 01:42:19 -04:00
2010-10-30 08:45:42 -04:00
2010-10-30 01:42:19 -04:00
2010-10-30 01:41:57 -04:00
2010-10-30 08:45:43 -04:00
2010-10-27 18:03:08 -07:00
2010-10-29 04:17:06 -04:00
2010-09-14 16:08:45 -07:00
2010-10-15 15:53:27 +02:00
2010-11-23 10:29:08 +01:00
2010-10-29 04:17:06 -04:00
2010-10-27 18:03:12 -07:00
2010-08-09 20:45:05 -07:00
2010-11-05 14:16:03 -07:00
2010-10-27 18:03:12 -07:00
2010-11-10 13:27:50 +01:00
2010-11-10 13:27:50 +01:00
2010-09-09 18:57:24 -07:00
2010-10-14 13:29:59 +02:00
2010-08-17 09:11:52 +02:00
2010-10-18 19:58:55 +02:00
2010-10-18 19:58:50 +02:00
2010-10-29 12:56:13 -04:00
2010-11-19 11:54:40 -08:00
2010-10-26 16:52:13 -07:00
2010-10-01 10:50:58 -07:00
2010-08-17 18:07:43 -07:00
2010-10-29 12:55:55 -04:00
2010-05-21 09:37:31 -07:00
2010-10-23 17:56:48 +02:00
2010-11-12 07:55:31 -08:00
2010-05-04 05:38:16 +02:00
2010-10-18 18:44:26 +02:00
2010-10-21 18:52:11 -07:00
2010-10-27 20:33:05 +10:30
2010-11-26 15:05:34 +01:00
2010-10-27 18:03:09 -07:00
2010-08-04 15:23:14 -07:00
2010-08-11 08:59:22 -07:00
2010-08-11 23:04:20 +09:30
2010-11-10 22:58:39 +01:00
2010-08-19 17:18:02 -07:00
2010-11-15 22:45:22 +01:00
2010-08-10 12:07:51 -07:00
2010-07-23 15:08:12 +02:00
2010-11-15 15:40:01 -08:00
2010-10-15 15:53:27 +02:00
2010-10-27 18:03:12 -07:00
2010-11-12 07:55:31 -08:00
2010-10-07 09:43:11 +02:00
2010-08-27 10:51:17 -07:00
2010-08-20 08:55:00 -07:00
2010-09-23 09:16:42 -07:00
2010-09-02 16:15:30 -07:00
2010-09-23 09:16:53 -07:00
2010-10-07 10:41:06 -07:00
2010-09-23 09:16:53 -07:00
2010-11-05 08:21:34 -07:00
2010-10-28 11:59:52 -07:00
2010-10-19 11:29:56 +02:00
2010-11-23 10:29:08 +01:00
2010-07-17 12:06:22 +02:00
2010-07-17 12:06:22 +02:00
2010-11-23 10:29:08 +01:00
2010-11-26 15:05:21 +01:00
2010-11-18 13:27:46 +01:00
2010-04-23 11:02:02 +02:00
2010-11-18 13:27:47 +01:00
2010-10-24 13:29:01 +02:00
2010-11-11 14:37:23 +01:00
2010-11-26 15:05:34 +01:00
2010-10-27 18:03:12 -07:00
2010-10-27 17:28:36 +01:00
2010-11-18 13:22:26 +01:00
2010-09-23 09:14:51 -07:00
2010-10-26 16:52:15 -07:00
2010-09-23 17:03:55 +10:00
2010-08-31 17:00:18 -07:00
2010-05-25 08:07:05 -07:00
2010-10-15 14:42:24 -07:00
2010-11-26 15:05:21 +01:00
2010-10-27 18:03:17 -07:00
2010-10-14 08:55:27 +02:00
2010-07-27 12:40:54 +02:00
2010-10-18 19:58:50 +02:00
2010-10-18 19:58:56 +02:00
2010-10-27 18:03:17 -07:00
2010-06-16 14:55:34 -07:00
2010-10-26 16:52:15 -07:00
2010-10-26 17:32:41 -07:00
2010-11-18 13:22:26 +01:00
2010-06-29 10:07:14 +02:00
2010-10-26 16:52:14 -07:00