aboutsummaryrefslogtreecommitdiff
path: root/arch/arm
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2015-03-03 09:36:44 +0000
committerMark Brown <broonie@kernel.org>2015-03-03 09:36:44 +0000
commita0d6a47ed69978c84ba8859c3cdbbbd04e79eb2d (patch)
tree30cf64632dd0c25fb07c1ab8dd590efa6991f1a3 /arch/arm
parent3af2dae32ca1108e47a435eaeec276a1c8289a36 (diff)
parent413cb08cebe9fd8107f556eee48b2d40773cacde (diff)
Merge tag 'v3.14.34' into linux-linaro-lsk-v3.14
This is the 3.14.34 stable release Conflicts: arch/arm64/kernel/setup.c
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mm/context.c26
1 files changed, 11 insertions, 15 deletions
diff --git a/arch/arm/mm/context.c b/arch/arm/mm/context.c
index 6eb97b3a7481..4370933f16cd 100644
--- a/arch/arm/mm/context.c
+++ b/arch/arm/mm/context.c
@@ -144,21 +144,17 @@ static void flush_context(unsigned int cpu)
/* Update the list of reserved ASIDs and the ASID bitmap. */
bitmap_clear(asid_map, 0, NUM_USER_ASIDS);
for_each_possible_cpu(i) {
- if (i == cpu) {
- asid = 0;
- } else {
- asid = atomic64_xchg(&per_cpu(active_asids, i), 0);
- /*
- * If this CPU has already been through a
- * rollover, but hasn't run another task in
- * the meantime, we must preserve its reserved
- * ASID, as this is the only trace we have of
- * the process it is still running.
- */
- if (asid == 0)
- asid = per_cpu(reserved_asids, i);
- __set_bit(asid & ~ASID_MASK, asid_map);
- }
+ asid = atomic64_xchg(&per_cpu(active_asids, i), 0);
+ /*
+ * If this CPU has already been through a
+ * rollover, but hasn't run another task in
+ * the meantime, we must preserve its reserved
+ * ASID, as this is the only trace we have of
+ * the process it is still running.
+ */
+ if (asid == 0)
+ asid = per_cpu(reserved_asids, i);
+ __set_bit(asid & ~ASID_MASK, asid_map);
per_cpu(reserved_asids, i) = asid;
}