[ARM] 3352/1: DSB required for the completion of a TLB maintenance operation
Patch from Catalin Marinas Chapter B2.7.3 in the latest ARM ARM (with v6 information) states that the completion of a TLB maintenance operation is only guaranteed by the execution of a DSB (Data Syncronization Barrier, formerly Data Write Barrier or Drain Write Buffer). Note that a DSB is only needed in the flush_tlb_kernel_* functions since the completion is guaranteed by a mode change (i.e. switching back to user mode) for the flush_tlb_user_* functions. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
このコミットが含まれているのは:
@@ -80,6 +80,7 @@ ENTRY(v6wbi_flush_kern_tlb_range)
|
||||
add r0, r0, #PAGE_SZ
|
||||
cmp r0, r1
|
||||
blo 1b
|
||||
mcr p15, 0, r2, c7, c10, 4 @ data synchronization barrier
|
||||
mov pc, lr
|
||||
|
||||
.section ".text.init", #alloc, #execinstr
|
||||
|
新しいイシューから参照
ユーザーをブロックする