Files
linux/arch/arm64/include/asm
Steve Capper f3eab7184d arm64: percpu: Make this_cpu accessors pre-empt safe
this_cpu operations were implemented for arm64 in:
 5284e1b arm64: xchg: Implement cmpxchg_double
 f97fc81 arm64: percpu: Implement this_cpu operations

Unfortunately, it is possible for pre-emption to take place between
address generation and data access. This can lead to cases where data
is being manipulated by this_cpu for a different CPU than it was
called on. Which effectively breaks the spec.

This patch disables pre-emption for the this_cpu operations
guaranteeing that address generation and data manipulation take place
without a pre-emption in-between.

Fixes: 5284e1b4bc ("arm64: xchg: Implement cmpxchg_double")
Fixes: f97fc81079 ("arm64: percpu: Implement this_cpu operations")
Reported-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Steve Capper <steve.capper@linaro.org>
[catalin.marinas@arm.com: remove space after type cast]
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2015-03-24 18:02:55 +00:00
..
2014-04-18 11:40:33 +02:00
2012-09-17 13:42:21 +01:00
2012-09-17 13:41:59 +01:00
2014-11-05 09:03:25 +01:00
2012-09-17 13:42:21 +01:00
2012-09-17 13:42:04 +01:00
2015-01-22 11:50:56 +00:00
2013-06-14 09:52:40 +01:00
2014-11-17 10:43:42 +00:00
2015-01-23 14:13:14 +00:00
2014-09-25 15:35:41 +01:00
2012-09-17 13:41:56 +01:00
2015-01-23 14:13:14 +00:00
2012-09-17 13:42:19 +01:00
2014-09-30 17:08:57 -06:00
2012-09-17 13:42:17 +01:00
2014-11-28 10:24:59 +00:00
2012-09-17 13:42:07 +01:00
2012-09-17 10:24:46 +01:00
2014-07-10 11:06:00 +01:00
2015-01-13 15:23:53 +02:00
2012-09-17 13:42:09 +01:00
2012-09-17 13:42:09 +01:00