commit 3923d91d2ade70e9fcfe22aa965710ff8a2ae535
Author: David S. Miller <[EMAIL PROTECTED]>
Date: Mon Apr 7 00:26:11 2008 -0700
SPARC64: flush_ptrace_access() needs preemption disable.
Upstream commit: f6a843d939ade435e060d580f5c56d958464f8a5
Based upon a report by Mariusz Kozlowski.
Signed-off-by: David S. Miller <[EMAIL PROTECTED]>
Signed-off-by: Chris Wright <[EMAIL PROTECTED]>
diff --git a/arch/sparc64/kernel/ptrace.c b/arch/sparc64/kernel/ptrace.c
index 81111a1..d4af131 100644
--- a/arch/sparc64/kernel/ptrace.c
+++ b/arch/sparc64/kernel/ptrace.c
@@ -127,6 +127,8 @@ void flush_ptrace_access(struct vm_area_struct *vma, struct
page *page,
if (tlb_type == hypervisor)
return;
+ preempt_disable();
+
#ifdef DCACHE_ALIASING_POSSIBLE
/* If bit 13 of the kernel address we used to access the
* user page is the same as the virtual address that page
@@ -165,6 +167,8 @@ void flush_ptrace_access(struct vm_area_struct *vma, struct
page *page,
for (; start < end; start += icache_line_size)
flushi(start);
}
+
+ preempt_enable();
}
asmlinkage void do_ptrace(struct pt_regs *regs)
_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs