All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] MIPS vdso and signal delivery optimization (v2)
@ 2010-02-19  0:13 David Daney
  2010-02-19  0:13 ` [PATCH 1/3] MIPS: Add SYSCALL to uasm David Daney
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: David Daney @ 2010-02-19  0:13 UTC (permalink / raw)
  To: linux-mips, ralf; +Cc: David Daney

This patch set creates a vdso and moves the signal
trampolines to it from their previous home on the stack.

In the original patch set:
http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=49EE3B0F.3040506%40caviumnetworks.com

I stated:

Tested with a 64-bit kernel on a Cavium Octeon cn3860 where I have the
following results from lmbench2:

Before:
n64 - Signal handler overhead: 14.517 microseconds
n32 - Signal handler overhead: 14.497 microseconds
o32 - Signal handler overhead: 16.637 microseconds

After:

n64 - Signal handler overhead: 7.935 microseconds
n32 - Signal handler overhead: 7.334 microseconds
o32 - Signal handler overhead: 8.628 microsecond

All that is still true.

Improvements from the first version:

* Compiles and runs in 32-bit kernels (on qemu at least).

* Updated for linux-queue based 2.6.33-rc8

David Daney (3):
  MIPS: Add SYSCALL to uasm.
  MIPS: Preliminary vdso.
  MIPS: Move signal trampolines off of the stack.

 arch/mips/include/asm/abi.h         |    6 +-
 arch/mips/include/asm/elf.h         |    4 +
 arch/mips/include/asm/mmu.h         |    5 +-
 arch/mips/include/asm/mmu_context.h |    2 +-
 arch/mips/include/asm/processor.h   |   11 +++-
 arch/mips/include/asm/uasm.h        |    1 +
 arch/mips/include/asm/vdso.h        |   29 +++++++++
 arch/mips/kernel/Makefile           |    2 +-
 arch/mips/kernel/signal-common.h    |    5 --
 arch/mips/kernel/signal.c           |   86 ++++++---------------------
 arch/mips/kernel/signal32.c         |   55 ++++-------------
 arch/mips/kernel/signal_n32.c       |   26 ++------
 arch/mips/kernel/syscall.c          |    6 ++-
 arch/mips/kernel/vdso.c             |  112 +++++++++++++++++++++++++++++++++++
 arch/mips/mm/uasm.c                 |   19 +++++-
 15 files changed, 226 insertions(+), 143 deletions(-)
 create mode 100644 arch/mips/include/asm/vdso.h
 create mode 100644 arch/mips/kernel/vdso.c

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2010-03-16 19:56 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-19  0:13 [PATCH 0/3] MIPS vdso and signal delivery optimization (v2) David Daney
2010-02-19  0:13 ` [PATCH 1/3] MIPS: Add SYSCALL to uasm David Daney
2010-03-16 19:55   ` Ralf Baechle
2010-02-19  0:13 ` [PATCH 2/3] MIPS: Preliminary vdso David Daney
2010-02-23 20:40   ` Manuel Lauss
2010-02-23 21:27     ` David Daney
2010-02-23 21:35     ` Ralf Baechle
2010-03-16 19:55   ` Ralf Baechle
2010-02-19  0:13 ` [PATCH 3/3] MIPS: Move signal trampolines off of the stack David Daney
2010-03-16 19:56   ` Ralf Baechle
2010-02-19  2:02 ` [PATCH 0/3] MIPS vdso and signal delivery optimization (v2) David Daney
2010-02-19 22:08   ` David Daney
2010-02-19 13:57 ` Ralf Baechle
2010-02-19 14:38   ` Ralf Baechle

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.