llvm-project/lldb
Todd Fiala 2cd84c905d added Linux support for test timeout sampling
This is the Linux counterpart to the sampling support I added
on the macOS side.

This change also introduces zip-file compression if the size of
the sample output is greater than 10 KB.  The Linux side can be
quite large and the textual content is averaging over a 10x
compression factor on tests that I force to time out.  When
compression takes place, the filename becomes:

    {session_dir}/{TestFilename.py}-{pid}.sample.zip

This support relies on the linux 'perf' tool.  If it isn't
present, the behavior is to ignore pre-kill processing of
the timed out test process.

Note calling the perf tool under the timeout command appears
to nuke the profiled process.  This was causing the timeout
kill logic to fail due to the process having disappeared.
I modified the kill logic to catch the case of the process
not existing, and I have it ignore the kill request in that
case.  Any other exception is still raised.

Reviewers: labath

Subscribers: lldb-commits

Differential Revision: https://reviews.llvm.org/D24890

llvm-svn: 282436
2016-09-26 20:25:47 +00:00
..
cmake [CMake] Fixing a small hack in add_lldb_library 2016-09-22 21:08:27 +00:00
docs gdb-remote: Add jModulesInfo packet 2016-09-08 10:07:04 +00:00
examples *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
include/lldb Added a setting that enables saving all .o files from a given JIT expression. 2016-09-26 20:18:51 +00:00
lit [cmake] Don't depend on lldb-server unless it's built. 2016-09-15 21:32:51 +00:00
lldb.xcodeproj Install only the manpage and only in the proper location 2016-09-23 21:24:08 +00:00
lldb.xcworkspace Revert r275223, which committed the wrong thing. 2016-07-12 23:31:42 +00:00
packages/Python/lldbsuite added Linux support for test timeout sampling 2016-09-26 20:25:47 +00:00
resources Bump the lldb version # in the xcode project files from 2016-03-15 04:36:11 +00:00
scripts Add an accessor to get the value of RC_PLATFORM_NAME at build time 2016-09-23 22:30:08 +00:00
source Added a setting that enables saving all .o files from a given JIT expression. 2016-09-26 20:18:51 +00:00
test *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
third_party/Python/module *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
tools Fix parsing expressions to evaluate with spaces and optional args (MI) 2016-09-22 05:08:41 +00:00
unittests added environment variable-related Args gtests 2016-09-22 16:00:01 +00:00
utils *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00
www Remove lldb coding conventions as they are no longer relevant. 2016-09-08 00:42:02 +00:00
.arcconfig Upgrade all the .arcconfigs to https. 2016-07-14 13:15:37 +00:00
.clang-format Updated .clang-format rules so bring LLDB in line with LLVM standards. 2016-09-06 17:19:00 +00:00
.gitignore Add StructuredData plugin type; showcase with new DarwinLog feature 2016-08-19 04:21:48 +00:00
CMakeLists.txt [CMake] Initial support for LLDB.framework 2016-09-21 21:02:16 +00:00
CODE_OWNERS.txt Switch linux and android CODE_OWNERS 2016-08-26 10:06:13 +00:00
INSTALL.txt Revert the patch to Test Commit Access 2015-07-06 11:26:51 +00:00
LICENSE.TXT
use_lldb_suite_root.py *** This commit represents a complete reformatting of the LLDB source code 2016-09-06 20:57:50 +00:00