OSDN Git Service

Handle nested signals
authorDave Allison <dallison@google.com>
Tue, 26 Aug 2014 18:07:58 +0000 (11:07 -0700)
committerDave Allison <dallison@google.com>
Wed, 27 Aug 2014 19:47:44 +0000 (12:47 -0700)
commit8ce6b9040747054b444a7fa706503cd257801936
tree04712170addb252d307ef9015abfc9bfc2b73581
parenta0a0da29e7d4d5c1bd471c49f1a4b6ec98fb767a
Handle nested signals

This allows for signals to be raised inside the ART signal handler.
This can occur when the JavaStackTraceHandler attempts to generate
a stack trace and something goes wrong.

It also fixes an issue where the fault manager was not being
correctly shut down inside the signal chaining code.  In this
case the signal handler was not restored to the original.

Bug: 17006816
Bug: 17133266

(cherry picked from commit fabe91e0d558936ac26b98d2b4ee1af08f58831d)

Change-Id: I10730ef52d5d8d34610a5293253b3be6caf4829e
runtime/arch/arm/fault_handler_arm.cc
runtime/arch/arm64/fault_handler_arm64.cc
runtime/arch/x86/fault_handler_x86.cc
runtime/arch/x86/quick_entrypoints_x86.S
runtime/arch/x86_64/quick_entrypoints_x86_64.S
runtime/entrypoints_order_test.cc
runtime/fault_handler.cc
runtime/fault_handler.h
runtime/thread.cc
runtime/thread.h
sigchainlib/sigchain.cc