OSDN Git Service

ART: Speed up stack guard page install
authorAndreas Gampe <agampe@google.com>
Fri, 18 Mar 2016 04:27:19 +0000 (21:27 -0700)
committerAndreas Gampe <agampe@google.com>
Fri, 18 Mar 2016 17:56:03 +0000 (10:56 -0700)
commit8245eb4ddd340769192febf597e80de96603d79d
tree300244b9c07c104741ad6ae38fc6f56b375de5fa
parent02d97c3727a4c7fb611b73fac1a0ff19568de2c9
ART: Speed up stack guard page install

Only the main thread doesn't have its stack mapped in under normal
conditions. Reading each page is a lot of overhead and we should
try to avoid it.

Rewrite to first try a (non-fatal) protect. If the outcome is a
success, finish. Otherwise do the stack mapping, and try again.

Bug: 27718174

(cherry picked from commit 2c2d2a05eaf81d07df27418f8dfd68de6fa28ac1)

Change-Id: I16b214567585ed2f09970f618ccdec7eed219fd3
runtime/thread.cc
runtime/thread.h