summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/mmu.h
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2012-11-19 11:30:49 +0000
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-11-19 11:30:49 +0000
commit2079f30e9e83887ca95fa129d0bc734b2c4b406d (patch)
tree91dbfd05c27d757e4e05a265308542bf54d8d3b7 /arch/arm/include/asm/mmu.h
parentf27d9b7198a0a0ffbd872a4b795c7613cd759ea3 (diff)
parentbf51bb82ccd9a74e9702d06107b23e54b27a5707 (diff)
Merge branch 'asid-allocation' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into devel-stable
Diffstat (limited to 'arch/arm/include/asm/mmu.h')
-rw-r--r--arch/arm/include/asm/mmu.h11
1 files changed, 4 insertions, 7 deletions
diff --git a/arch/arm/include/asm/mmu.h b/arch/arm/include/asm/mmu.h
index 14965658a923..5b53b53ab5cf 100644
--- a/arch/arm/include/asm/mmu.h
+++ b/arch/arm/include/asm/mmu.h
@@ -5,18 +5,15 @@
typedef struct {
#ifdef CONFIG_CPU_HAS_ASID
- unsigned int id;
- raw_spinlock_t id_lock;
+ u64 id;
#endif
unsigned int kvm_seq;
} mm_context_t;
#ifdef CONFIG_CPU_HAS_ASID
-#define ASID(mm) ((mm)->context.id & 255)
-
-/* init_mm.context.id_lock should be initialized. */
-#define INIT_MM_CONTEXT(name) \
- .context.id_lock = __RAW_SPIN_LOCK_UNLOCKED(name.context.id_lock),
+#define ASID_BITS 8
+#define ASID_MASK ((~0ULL) << ASID_BITS)
+#define ASID(mm) ((mm)->context.id & ~ASID_MASK)
#else
#define ASID(mm) (0)
#endif