android_system_core/debuggerd
Josh Gao 88846a2ccf Let system_server truncate tombstones.
There's no way to atomically unlink a specific file for which we have an fd from
a path, which means that we can't safely delete a tombstone without coordination
with tombstoned, which is risky. For example, if we use flock on the directory,
and system_server crashes while holding the lock, we risk deadlock.

We do the next best thing, and keep a file descriptor around for every
tombstone, and truncate it, which requires system_server to be able to
write to tombstones (which are owned by the system group).

Test: treehugger
Change-Id: I6ba7f1fe87ee1a4b57bdb3741e8ec9fbc80788c9
2021-02-01 17:48:58 -08:00
..
client debuggerd: use One True timestamp function. 2020-07-23 16:33:53 -07:00
common/include Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
crasher Create a debugger_process_info data structure with the process info pointers. 2020-03-24 17:23:15 -07:00
handler Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
include/debuggerd Add support for MTE error reports in tombstones. 2020-04-27 13:15:49 -07:00
libdebuggerd Remove use of libbase logging in libdebuggerd. 2021-01-27 15:52:43 -08:00
proto Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
seccomp_policy Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
tombstoned Let system_server truncate tombstones. 2021-02-01 17:48:58 -08:00
.clang-format Remove extraneous .clang-format files 2017-03-14 14:06:31 -07:00
Android.bp Remove use of libbase logging in libdebuggerd. 2021-01-27 15:52:43 -08:00
crash_dump.cpp Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
debuggerd.cpp debuggerd: add support for Java traces. 2018-06-14 15:40:06 -07:00
debuggerd_benchmark.cpp debuggerd: add pause time benchmark. 2017-12-19 16:36:04 -08:00
debuggerd_test.cpp Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2009-03-03 19:32:55 -08:00
OWNERS Add OWNERS. 2017-12-07 13:30:03 -08:00
pbtombstone.cpp Reland protobuf tombstones. 2021-01-26 17:55:17 -08:00
protocol.h Add support for MTE error reports in tombstones. 2020-04-27 13:15:49 -07:00
util.cpp Remove unnecessary #includes. 2021-01-19 09:21:52 -08:00
util.h debuggerd: use One True timestamp function. 2020-07-23 16:33:53 -07:00