diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-09 06:39:30 +0900 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-09 06:39:30 +0900 |
commit | 3c5af8d1aad6f193c0a89702c87292a0ed81add0 (patch) | |
tree | c44aaa89c45dda5d023601ab0ca4d6f1d4631698 /arch/sparc/lib/NG4patch.S | |
parent | e9eca4de957ac33744fb994ccacd4a5102e445a8 (diff) | |
parent | 2863bc54ec03df7a6e2c48cff0477d7e2384efc9 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
Pull sparc changes from David S Miller:
"There is an attempt to fix a bad interaction between syscall tracing
and force_successful_syscall() from Al Viro, but it needs to be redone
as it introduced regressions and thus had to be reverted for now.
Al is working on an updated version.
But what we do have here are some significant bzero/memset
improvements for Niagara-4. An 8K page can be cleared in around 600
cycles, because we essentially have a store that behaves like
powerpc's dcbz that we can actually make real use of."
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
Revert strace hiccups fix.
sparc64: Niagara-4 bzero/memset, plus use MRU stores in page copy.
sparc64: Fix strace hiccups when force_successful_syscall() triggers.
sparc64: Rearrange thread info to cheaply clear syscall noerror state.
Diffstat (limited to 'arch/sparc/lib/NG4patch.S')
-rw-r--r-- | arch/sparc/lib/NG4patch.S | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/arch/sparc/lib/NG4patch.S b/arch/sparc/lib/NG4patch.S index c21c34c61dda..a114cbcf2a48 100644 --- a/arch/sparc/lib/NG4patch.S +++ b/arch/sparc/lib/NG4patch.S @@ -32,12 +32,23 @@ niagara4_patch_copyops: nop .size niagara4_patch_copyops,.-niagara4_patch_copyops + .globl niagara4_patch_bzero + .type niagara4_patch_bzero,#function +niagara4_patch_bzero: + NG_DO_PATCH(memset, NG4memset) + NG_DO_PATCH(__bzero, NG4bzero) + NG_DO_PATCH(__clear_user, NGclear_user) + NG_DO_PATCH(tsb_init, NGtsb_init) + retl + nop + .size niagara4_patch_bzero,.-niagara4_patch_bzero + .globl niagara4_patch_pageops .type niagara4_patch_pageops,#function niagara4_patch_pageops: NG_DO_PATCH(copy_user_page, NG4copy_user_page) - NG_DO_PATCH(_clear_page, NGclear_page) - NG_DO_PATCH(clear_user_page, NGclear_user_page) + NG_DO_PATCH(_clear_page, NG4clear_page) + NG_DO_PATCH(clear_user_page, NG4clear_user_page) retl nop .size niagara4_patch_pageops,.-niagara4_patch_pageops |