Peter Zijlstra
febdbfe8a9
arch: Prepare for smp_mb__{before,after}_atomic()
...
Since the smp_mb__{before,after}*() ops are fundamentally dependent on
how an arch can implement atomics it doesn't make sense to have 3
variants of them. They must all be the same.
Furthermore, the 3 variants suggest they're only valid for those 3
atomic ops, while we have many more where they could be applied.
So move away from
smp_mb__{before,after}_{atomic,clear}_{dec,inc,bit}() and reduce the
interface to just the two: smp_mb__{before,after}_atomic().
This patch prepares the way by introducing default implementations in
asm-generic/barrier.h that default to a full barrier and providing
__deprecated inlines for the previous 6 barriers if they're not
provided by the arch.
This should allow for a mostly painless transition (lots of deprecated
warns in the interim).
Signed-off-by: Peter Zijlstra <peterz@infradead.org >
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com >
Link: http://lkml.kernel.org/n/tip-wr59327qdyi9mbzn6x937s4e@git.kernel.org
Cc: Arnd Bergmann <arnd@arndb.de >
Cc: "Chen, Gong" <gong.chen@linux.intel.com >
Cc: John Sullivan <jsrhbz@kanargh.force9.co.uk >
Cc: Linus Torvalds <torvalds@linux-foundation.org >
Cc: Mauro Carvalho Chehab <m.chehab@samsung.com >
Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com >
Cc: "Theodore Ts'o" <tytso@mit.edu >
Cc: linux-arch@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org >
2014-04-18 11:40:30 +02:00
..
2014-03-07 09:18:23 +01:00
2014-04-04 21:08:20 -07:00
2014-04-05 15:46:37 -07:00
2014-04-04 21:07:28 -07:00
2014-04-03 16:21:12 -07:00
2014-03-19 14:41:58 +09:00
2014-03-28 20:42:01 +01:00
2014-04-09 08:45:40 -07:00
2014-03-30 13:25:19 -07:00
2014-03-08 23:32:26 -08:00
2014-04-10 09:06:10 -07:00
2014-03-28 16:29:35 -04:00
2014-03-07 11:40:04 -08:00
2014-04-09 08:39:39 -07:00
2014-03-25 23:31:26 -07:00
2014-04-08 10:56:12 +02:00
2014-03-09 12:45:08 +05:30
2014-04-10 09:06:10 -07:00
2014-03-26 16:58:11 +00:00
2014-04-02 16:23:38 -07:00
2014-04-12 17:31:22 -07:00
2014-04-02 20:53:45 -07:00
2014-04-01 15:14:04 -07:00
2014-04-18 11:40:30 +02:00
2014-04-10 17:51:29 -04:00
2014-04-03 16:20:49 -07:00
2014-04-03 16:21:09 -07:00
2014-04-07 16:36:05 -07:00
2014-04-12 14:49:50 -07:00
2014-04-18 11:40:30 +02:00
2014-04-09 21:54:06 -06:00
2014-03-13 09:38:42 -06:00
2014-04-01 19:19:15 -07:00
2014-04-12 14:49:50 -07:00
2014-04-01 23:19:19 -04:00
2014-03-29 09:15:54 -04:00
2014-03-24 17:10:07 -07:00
2014-02-24 17:13:55 -08:00
2014-04-02 12:51:41 -07:00
2014-04-09 13:44:35 -07:00
2014-04-09 13:44:35 -07:00
2014-04-07 14:55:46 -07:00
2014-04-07 14:43:50 +02:00
2014-03-11 11:52:47 +01:00
2014-04-03 16:20:58 -07:00
2014-03-13 15:56:44 +01:00
2014-04-07 16:36:06 -07:00
2014-04-03 16:21:05 -07:00
2014-04-01 17:08:43 +02:00
2014-03-27 16:56:24 -04:00
2014-04-01 16:28:19 -07:00
2014-03-06 20:41:15 +05:30
2014-03-24 14:05:08 +00:00
2014-03-05 18:15:37 +00:00
2014-02-24 14:46:38 -08:00
2014-04-03 16:21:06 -07:00
2014-03-19 14:41:58 +09:00
2014-02-27 19:56:09 +09:00
2014-04-01 23:19:14 -04:00
2014-03-10 11:44:42 -04:00
2014-04-14 16:26:47 -04:00
2014-03-07 10:19:57 -05:00
2014-02-28 15:12:09 -08:00
2014-04-12 14:49:50 -07:00
2014-04-03 16:20:51 -07:00
2014-04-08 20:43:28 -04:00
2014-03-11 22:52:43 -04:00
2014-03-03 11:32:08 +01:00
2014-03-10 17:26:19 -07:00
2014-03-13 12:48:32 +01:00
2014-04-02 16:24:28 -07:00
2014-04-01 19:06:50 +02:00
2014-04-04 09:12:49 +02:00
2014-03-20 12:35:45 +01:00
2014-03-04 07:55:47 -08:00
2014-04-03 16:20:59 -07:00
2014-03-08 22:15:52 -08:00
2014-03-05 17:16:45 +01:00
2014-04-07 16:36:07 -07:00
2014-03-20 11:53:20 -04:00
2014-03-26 16:41:28 -04:00
2014-03-07 11:41:32 -05:00
2014-03-24 14:07:31 +00:00
2014-04-07 16:36:11 -07:00
2014-02-26 14:42:09 -07:00
2014-03-04 17:51:06 +01:00
2014-02-25 15:25:45 -08:00
2014-04-17 12:30:40 -07:00
2014-04-17 12:23:07 -07:00
2014-03-14 13:43:33 +01:00
2014-03-13 12:11:00 +10:30
2014-03-31 00:45:09 -04:00
2014-04-01 11:22:57 -07:00
2014-04-06 09:38:07 -07:00
2014-03-08 22:08:29 -08:00
2014-03-06 16:30:46 +01:00
2014-04-03 16:20:50 -07:00
2014-04-03 16:21:04 -07:00
2014-03-21 13:43:13 +01:00
2014-04-07 16:36:14 -07:00
2014-03-19 16:30:23 -04:00
2014-04-03 16:21:01 -07:00
2014-03-31 14:13:25 -07:00
2014-03-18 19:19:41 -04:00
2014-02-28 15:36:37 -08:00
2014-03-12 00:16:56 +00:00
2014-04-07 16:36:13 -07:00
2014-04-07 16:35:54 -07:00
2014-04-02 20:53:45 -07:00
2014-04-13 13:28:13 -07:00
2014-04-12 12:38:53 -07:00
2014-04-07 16:35:55 -07:00
2014-04-03 16:21:01 -07:00
2014-04-09 13:44:35 -07:00
2014-04-06 09:38:07 -07:00
2014-03-24 12:21:00 +10:30
2014-04-01 23:19:08 -04:00
2014-03-04 13:51:06 -05:00
2014-03-11 12:14:56 +01:00
2014-04-01 23:19:10 -04:00
2014-04-03 14:31:34 -04:00
2014-04-03 14:29:12 -04:00
2014-03-29 17:58:37 -04:00
2014-03-17 15:14:16 -04:00
2014-03-17 15:15:21 -04:00
2014-04-03 16:21:26 -07:00
2014-04-01 16:25:51 -04:00
2014-04-07 10:59:19 -07:00
2014-04-11 16:45:59 -07:00
2014-03-11 17:26:47 +00:00
2014-03-07 16:02:46 +01:00
2014-03-10 22:42:28 -07:00
2014-03-11 17:27:12 +00:00
2014-04-02 14:27:15 -07:00
2014-04-04 00:31:49 +01:00
2014-04-03 16:21:04 -07:00
2014-04-03 16:21:00 -07:00
2014-04-01 18:49:04 -07:00
2014-03-19 15:11:19 -06:00
2014-04-07 16:36:14 -07:00
2014-03-20 13:43:40 +01:00
2014-04-12 14:49:50 -07:00
2014-03-02 00:18:15 +01:00
2014-03-20 13:25:54 +01:00
2014-04-03 16:21:08 -07:00
2014-04-01 16:43:18 -04:00
2014-03-21 14:21:13 -04:00
2014-03-21 18:26:03 +01:00
2014-04-03 16:20:54 -07:00
2014-04-03 16:21:01 -07:00
2014-03-19 22:24:08 -04:00
2014-03-31 11:05:24 -07:00
2014-03-20 17:12:25 -07:00
2014-03-20 17:12:25 -07:00
2014-04-16 08:56:09 +02:00
2014-04-01 16:13:21 -07:00
2014-04-07 16:35:54 -07:00
2014-03-09 19:53:45 +01:00
2014-04-07 16:36:07 -07:00
2014-03-20 22:09:09 -07:00
2014-04-12 12:38:53 -07:00
2014-03-31 00:45:09 -04:00
2014-04-01 17:08:43 +02:00
2014-02-28 16:27:18 -08:00
2014-03-21 04:12:33 +09:00
2014-03-17 16:20:49 -07:00
2014-04-03 16:21:00 -07:00
2014-04-02 20:53:45 -07:00
2014-04-13 13:28:13 -07:00
2014-04-07 16:36:13 -07:00
2014-02-24 14:47:15 -08:00
2014-03-19 08:58:30 +00:00
2014-04-03 16:21:01 -07:00
2014-03-26 16:49:31 -04:00
2014-04-12 13:06:10 -07:00
2014-04-06 09:38:07 -07:00
2014-02-26 17:08:40 -05:00
2014-04-07 16:36:13 -07:00
2014-04-09 10:12:11 -04:00
2014-04-02 20:53:45 -07:00
2014-03-14 22:41:36 -04:00
2014-04-01 23:19:21 -04:00
2014-03-18 16:39:34 -04:00
2014-03-04 15:38:16 -08:00
2014-04-01 17:06:09 -07:00
2014-02-26 11:38:39 -07:00
2014-04-03 16:21:04 -07:00
2014-04-07 16:35:53 -07:00
2014-04-07 16:36:14 -07:00
2014-04-07 11:24:06 -07:00
2014-02-28 14:08:26 -05:00
2014-04-01 11:00:07 -07:00
2014-04-07 16:35:57 -07:00