[PATCH 0/3] MIPS VDSO support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

This series adds a proper VDSO to the kernel on MIPS. The first commit
adds the basic VDSO, replacing the current signal return trampoline
page. The following commits add user implementations of gettimeofday() and
clock_gettime() which can make use of either the CP0 count or the GIC
user-mode visible section.

A tree with these changes can be found at [1]. It's based on v4.3-rc3

Use of the time functions relies on glibc modifications. A patch for
this can be found in my repository at [2] and I will soon post it to the glibc
mailing list.

[1]: http://git.linux-mips.org/cgit/mchandras/linux.git/log/?h=4.3-vdso
[2]: https://github.com/hwoarang/glibc/tree/2.22-vdso

Alex Smith (3):
  MIPS: Initial implementation of a VDSO
  irqchip: irq-mips-gic: Provide function to map GIC user section
  MIPS: VDSO: Add implementations of gettimeofday() and clock_gettime()

 arch/mips/Kbuild                     |   1 +
 arch/mips/Kconfig                    |   5 +
 arch/mips/include/asm/abi.h          |   5 +-
 arch/mips/include/asm/clocksource.h  |  29 ++++
 arch/mips/include/asm/elf.h          |   7 +
 arch/mips/include/asm/processor.h    |   8 +-
 arch/mips/include/asm/vdso.h         | 139 +++++++++++++++--
 arch/mips/include/uapi/asm/Kbuild    |   2 +-
 arch/mips/include/uapi/asm/auxvec.h  |  17 ++
 arch/mips/kernel/csrc-r4k.c          |  44 ++++++
 arch/mips/kernel/signal.c            |  12 +-
 arch/mips/kernel/signal32.c          |   7 +-
 arch/mips/kernel/signal_n32.c        |   5 +-
 arch/mips/kernel/vdso.c              | 198 ++++++++++++++---------
 arch/mips/vdso/.gitignore            |   4 +
 arch/mips/vdso/Makefile              | 142 +++++++++++++++++
 arch/mips/vdso/elf.S                 |  68 ++++++++
 arch/mips/vdso/genvdso.c             | 294 +++++++++++++++++++++++++++++++++++
 arch/mips/vdso/genvdso.h             | 188 ++++++++++++++++++++++
 arch/mips/vdso/gettimeofday.c        | 232 +++++++++++++++++++++++++++
 arch/mips/vdso/sigreturn.S           |  49 ++++++
 arch/mips/vdso/vdso.h                |  84 ++++++++++
 arch/mips/vdso/vdso.lds.S            | 103 ++++++++++++
 drivers/clocksource/mips-gic-timer.c |   7 +-
 drivers/irqchip/irq-mips-gic.c       |  27 +++-
 include/linux/irqchip/mips-gic.h     |  24 ++-
 26 files changed, 1572 insertions(+), 129 deletions(-)
 create mode 100644 arch/mips/include/asm/clocksource.h
 create mode 100644 arch/mips/include/uapi/asm/auxvec.h
 create mode 100644 arch/mips/vdso/.gitignore
 create mode 100644 arch/mips/vdso/Makefile
 create mode 100644 arch/mips/vdso/elf.S
 create mode 100644 arch/mips/vdso/genvdso.c
 create mode 100644 arch/mips/vdso/genvdso.h
 create mode 100644 arch/mips/vdso/gettimeofday.c
 create mode 100644 arch/mips/vdso/sigreturn.S
 create mode 100644 arch/mips/vdso/vdso.h
 create mode 100644 arch/mips/vdso/vdso.lds.S

-- 
2.5.3





[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux