summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2019-07-29 16:10:16 +0000
committerJan Kratochvil <jan.kratochvil@redhat.com>2019-07-29 16:10:16 +0000
commit2b389517999eef70089811ca395a74b05d69c6cd (patch)
treec849fb79371b94c7ba2611072e4cb7abad9835f4 /lldb/packages/Python/lldbsuite/test
parentb32a6592ebc49cea15630dc9871533bd5455f2fc (diff)
downloadbcm5719-llvm-2b389517999eef70089811ca395a74b05d69c6cd.tar.gz
bcm5719-llvm-2b389517999eef70089811ca395a74b05d69c6cd.zip
[lldb] Increase testsuite packet-timeout 5secs -> 1min
rL357954 did increase `packet-timeout` 1sec -> 5secs. Which is IMO about the maximum timeout reasonable for regular use. But for testsuite I think the timeout should be higher as the testsuite runs in parallel and it can be run even on slow hosts and with other load (moreover if it runs on some slow arch). I have chosen 60 secs, that should be enough hopefully. Larger value could make debugging with hanging `lldb-server` annoying. This patch was based on this testsuite timeout: http://lab.llvm.org:8014/builders/lldb-x86_64-fedora/builds/546/steps/test/logs/stdio FAIL: test_connect (TestGDBRemoteClient.TestGDBRemoteClient) Test connecting to a remote gdb server ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/jkratoch/slave-lldb-x86_64-fedora/lldb-x86_64-fedora/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestGDBRemoteClient.py", line 13, in test_connect process = self.connect(target) File "/home/jkratoch/slave-lldb-x86_64-fedora/lldb-x86_64-fedora/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/gdbclientutils.py", line 480, in connect self.assertTrue(error.Success(), error.description) AssertionError: False is not True : failed to get reply to handshake packet Differential Revision: https://reviews.llvm.org/D65271 llvm-svn: 367234
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
-rw-r--r--lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template2
-rw-r--r--lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py1
-rw-r--r--lldb/packages/Python/lldbsuite/test/lldbtest.py20
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py3
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py16
5 files changed, 28 insertions, 14 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template b/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template
index ebe7b8c8e17..32459425c88 100644
--- a/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template
+++ b/lldb/packages/Python/lldbsuite/test/api/multithreaded/driver.cpp.template
@@ -32,6 +32,8 @@ int main(int argc, char** argv) {
SBDebugger::Initialize();
SBDebugger dbg = SBDebugger::Create();
dbg.HandleCommand("settings set symbols.enable-external-lookup false");
+ dbg.HandleCommand(
+ "settings set plugin.process.gdb-remote.packet-timeout 60");
try {
if (!dbg.IsValid())
diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py b/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py
index a9ae29d97ec..3bf22d376b2 100644
--- a/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py
+++ b/lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestNoWatchpointSupportInfo.py
@@ -21,6 +21,7 @@ class TestNoWatchpointSupportInfo(GDBRemoteTestBase):
def threadStopInfo(self, threadnum):
if threadnum == 0x1ff0d:
return "T02thread:1ff0d;thread-pcs:10001bc00;"
+ return ""
def setBreakpoint(self, packet):
if packet.startswith("Z2,"):
diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py
index 0d78dc1e17a..975bfac3ec4 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -696,6 +696,17 @@ class Base(unittest2.TestCase):
"""Return absolute path to a file in the test's source directory."""
return os.path.join(self.getSourceDir(), name)
+ @staticmethod
+ def setUpCommands():
+ return [
+ # Disable Spotlight lookup. The testsuite creates
+ # different binaries with the same UUID, because they only
+ # differ in the debug info, which is not being hashed.
+ "settings set symbols.enable-external-lookup false",
+
+ # Testsuite runs in parallel and the host can have also other load.
+ "settings set plugin.process.gdb-remote.packet-timeout 60"]
+
def setUp(self):
"""Fixture for unittest test case setup.
@@ -714,7 +725,8 @@ class Base(unittest2.TestCase):
else:
self.lldbVSCodeExec = None
- self.lldbOption = "-o 'settings set symbols.enable-external-lookup false'"
+ self.lldbOption = " ".join(
+ "-o '" + s + "'" for s in self.setUpCommands())
# If we spawn an lldb process for test (via pexpect), do not load the
# init file unless told otherwise.
@@ -1854,10 +1866,8 @@ class TestBase(Base):
self.runCmd('settings set symbols.clang-modules-cache-path "%s"'
% mod_cache)
- # Disable Spotlight lookup. The testsuite creates
- # different binaries with the same UUID, because they only
- # differ in the debug info, which is not being hashed.
- self.runCmd('settings set symbols.enable-external-lookup false')
+ for s in self.setUpCommands():
+ self.runCmd(s)
# Disable color.
self.runCmd("settings set use-color false")
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
index c66c6bb7af6..662a0570871 100644
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
+++ b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/lldbvscode_testcase.py
@@ -11,7 +11,8 @@ class VSCodeTestCaseBase(TestBase):
'''Create the Visual Studio Code debug adaptor'''
self.assertTrue(os.path.exists(self.lldbVSCodeExec),
'lldb-vscode must exist')
- self.vscode = vscode.DebugAdaptor(executable=self.lldbVSCodeExec)
+ self.vscode = vscode.DebugAdaptor(
+ executable=self.lldbVSCodeExec, init_commands=Base.setUpCommands())
def build_and_create_debug_adaptor(self):
self.build()
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
index adb8ad50bff..638c038e169 100644
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
+++ b/lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
@@ -99,7 +99,7 @@ def read_packet_thread(vs_comm):
class DebugCommunication(object):
- def __init__(self, recv, send):
+ def __init__(self, recv, send, init_commands):
self.trace_file = None
self.send = send
self.recv = recv
@@ -118,6 +118,7 @@ class DebugCommunication(object):
self.output = {}
self.configuration_done_sent = False
self.frame_scopes = {}
+ self.init_commands = init_commands
@classmethod
def encode_content(cls, s):
@@ -447,8 +448,7 @@ class DebugCommunication(object):
args_dict['waitFor'] = waitFor
if trace:
args_dict['trace'] = trace
- args_dict['initCommands'] = [
- 'settings set symbols.enable-external-lookup false']
+ args_dict['initCommands'] = self.init_commands
if initCommands:
args_dict['initCommands'].extend(initCommands)
if preRunCommands:
@@ -578,8 +578,7 @@ class DebugCommunication(object):
args_dict['shellExpandArguments'] = shellExpandArguments
if trace:
args_dict['trace'] = trace
- args_dict['initCommands'] = [
- 'settings set symbols.enable-external-lookup false']
+ args_dict['initCommands'] = self.init_commands
if initCommands:
args_dict['initCommands'].extend(initCommands)
if preRunCommands:
@@ -822,7 +821,7 @@ class DebugCommunication(object):
class DebugAdaptor(DebugCommunication):
- def __init__(self, executable=None, port=None):
+ def __init__(self, executable=None, port=None, init_commands=[]):
self.process = None
if executable is not None:
self.process = subprocess.Popen([executable],
@@ -830,11 +829,12 @@ class DebugAdaptor(DebugCommunication):
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
DebugCommunication.__init__(self, self.process.stdout,
- self.process.stdin)
+ self.process.stdin, init_commands)
elif port is not None:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('127.0.0.1', port))
- DebugCommunication.__init__(self, s.makefile('r'), s.makefile('w'))
+ DebugCommunication.__init__(self, s.makefile('r'), s.makefile('w'),
+ init_commands)
def get_pid(self):
if self.process:
OpenPOWER on IntegriCloud