patch-2.2.15 linux/arch/sparc64/kernel/ptrace.c
Next file: linux/arch/sparc64/kernel/setup.c
Previous file: linux/arch/sparc64/kernel/itlb_base.S
Back to the patch index
Back to the overall index
- Lines: 45
- Date:
Fri Apr 21 12:45:48 2000
- Orig file:
v2.2.14/arch/sparc64/kernel/ptrace.c
- Orig date:
Tue Jan 4 21:18:43 2000
diff -u --new-file --recursive --exclude-from ../../exclude v2.2.14/arch/sparc64/kernel/ptrace.c linux/arch/sparc64/kernel/ptrace.c
@@ -120,16 +120,14 @@
static __inline__ void write_user_long(unsigned long kvaddr, unsigned long val)
{
- __asm__ __volatile__("stxa %0, [%1] %2"
- : /* no outputs */
- : "r" (val), "r" (__pa(kvaddr)), "i" (ASI_PHYS_USE_EC));
+ *(unsigned long *)kvaddr = val;
+ flush_dcache_page(kvaddr & PAGE_MASK);
}
static __inline__ void write_user_int(unsigned long kvaddr, unsigned int val)
{
- __asm__ __volatile__("stwa %0, [%1] %2"
- : /* no outputs */
- : "r" (val), "r" (__pa(kvaddr)), "i" (ASI_PHYS_USE_EC));
+ *(unsigned int *)kvaddr = val;
+ flush_dcache_page(kvaddr & PAGE_MASK);
}
static inline unsigned long get_long(struct task_struct * tsk,
@@ -164,11 +162,6 @@
pgaddr = page + (addr & ~PAGE_MASK);
write_user_long(pgaddr, data);
-
- __asm__ __volatile__("
- membar #StoreStore
- flush %0
-" : : "r" (pgaddr & ~7) : "memory");
}
/* we're bypassing pagetables, so we have to set the dirty bit ourselves */
/* this should also re-instate whatever read-only mode there was before */
@@ -209,11 +202,6 @@
pgaddr = page + (addr & ~PAGE_MASK);
write_user_int(pgaddr, data);
-
- __asm__ __volatile__("
- membar #StoreStore
- flush %0
-" : : "r" (pgaddr & ~7) : "memory");
}
/* we're bypassing pagetables, so we have to set the dirty bit ourselves */
/* this should also re-instate whatever read-only mode there was before */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)