Hi -

This patchset fixes some issues with our signal handlers and changes
glibc to use PDR locks for its low-level locks, which was a potential
source of deadlock in vcore context (e.g. some signal handlers).

Barret


The following changes since commit 29d6d3978d877889692d68e5046106ffb206779f:

  Set a default sysname in #cons (2016-09-07 12:38:17 -0400)

are available in the git repository at:

  g...@github.com:brho/akaros.git sigs

for you to fetch changes up to 72711c07e336c244663f945930bb0e9e578c143c:

  Clean up x86_64 sysdeps (XCC) (2016-09-12 16:38:25 -0400)

----------------------------------------------------------------
View this online at:
https://github.com/brho/akaros/compare/29d6d3978d87...72711c07e336

----------------------------------------------------------------
Barret Rhoden (14):
      Use a helper for determining if a uth handles sigs
      Make signal handler functions vcore-ctx-safe
      Move the get_user_ctx_* helpers to ros/ (XCC)
      Add a helper for finding current_uthread's context
      Always provide a user context to signal handlers
      Fix include paths in lock_test
      Fix sbrk's lock initialization (XCC)
      Allow uth_disable_notifs without current_uthread
      Remove the NO_CAS version of spin_pdr locks
      Fix spinlock_trylock's return value
      Add spin_pdr_trylock
      Use PDR locks for glibc's internal locks (XCC)
      Set the glibc thread's pointer_guard (XCC)
      Clean up x86_64 sysdeps (XCC)

 kern/arch/riscv/ros/trapframe.h                    | 64 +++++++++++++++++
 kern/arch/riscv/trap.h                             | 64 -----------------
 kern/arch/x86/ros/trapframe.h                      | 45 ++++++++++++
 kern/arch/x86/trap64.h                             | 45 ------------
 kern/include/ros/trapframe.h                       | 39 +++++++++++
 kern/src/trap.c                                    | 42 ------------
 tests/linux-lock-hacks.h                           | 19 ++---
 tests/lock_test.c                                  |  4 +-
 .../glibc-2.19-akaros/sysdeps/akaros/Versions      |  3 +
 .../sysdeps/akaros/lowlevellock.h                  | 17 +++--
 .../sysdeps/akaros/parlib-compat.c                 | 46 ++++++++++++-
 .../glibc-2.19-akaros/sysdeps/akaros/sbrk.c        |  2 +-
 .../glibc-2.19-akaros/sysdeps/akaros/tls.c         |  2 +
 .../sysdeps/akaros/x86_64/sysdep.h                 | 49 ++++++++++++-
 user/parlib/include/parlib/spinlock.h              | 31 ++-------
 user/parlib/include/parlib/uthread.h               | 10 +++
 user/parlib/include/parlib/x86/atomic.h            |  1 -
 user/parlib/signal.c                               | 45 ++++++++++--
 user/parlib/spinlock.c                             | 80 ++++++++--------------
 user/parlib/uthread.c                              | 22 +++---
 user/utest/atexit.c                                | 65 ++++++++++++++++++
 21 files changed, 432 insertions(+), 263 deletions(-)
 create mode 100644 user/utest/atexit.c

-- 
You received this message because you are subscribed to the Google Groups 
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to akaros+unsubscr...@googlegroups.com.
To post to this group, send email to akaros@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to