diff options
| author | 2024-02-14 16:02:20 +0100 | |
|---|---|---|
| committer | 2024-06-18 10:52:22 +0200 | |
| commit | 701a0e7ed87eb86201870c3189f1f748fe913e30 (patch) | |
| tree | 1aa5c708f997fe06d328574686a0387a0ea7e08e /api/api.go | |
| parent | eacb2c6312c7b7419b0572d3cca655861ad4a503 (diff) | |
Allow AppExitInfoTracker to have multiple ExitInfos per pid.
Currently the AppExitInfoTracker only allows a single
ApplicationExitInfo entry per pid. This caused some problems with
Recoverable GWP-ASan, where we'd report a native crash from Recoverable
GWP-ASan, that would end up in the AppExitInfoTracker, then the process
would die of other causes (or natural causes) for the same pid, and the
GWP-ASan data would get lost. This was fixed in aosp/2520518 by having a
separate tracking database specifically for Recoverable GWP-ASan
crashes.
Unfortunately that didn't fix the whole problem. For regular GWP-ASan,
where the process actually does crash, there's still an outstanding
issue where an app will encounter a native crash in a test, and there's
a race condition where the AppExitInfoTracker will receive the
"instrumentation finished" from the test, and overwrite the regular
GWP-ASan crash.
To support recoverable GWP-ASan, and to avoid this race with regular
GWP-ASan, I've modified the container to allow multiple AppExitInfos per
pid.
Bug: 286667521
Test: Boot the device, atest CtsGwpAsanTestCases --iterations=10,
atest ApplicationExitInfoTest.
Change-Id: Ifd73d0b5e4bde8bf87caed0aee51291cc6be8d32
Diffstat (limited to 'api/api.go')
0 files changed, 0 insertions, 0 deletions