aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThiago Jung Bauermann <thiago.bauermann@linaro.org>2024-01-16 00:27:37 -0300
committerThiago Bauermann <thiago.bauermann@linaro.org>2024-02-09 15:39:39 +0000
commit6202ffec4b2bcb10c79a47d814bf1609f7d12bec (patch)
tree4ca0244f0d62a77b55396e784842e60ce0979aea
parent0b6ecec677e726c1a976b7c789aa194fe05385a2 (diff)
config/linaro.exp: Change Expect's buffer size to 100k
The default buffer size Expect uses to hold the tool's output is 2000 bytes. This is too low for some GDB tests which run commands generating a lot of output — e.g., when they turn on GDB debug output or when testing GDB's Machine Interface which is verbose. As a result those GDB tests become flaky because depending on the testsuite run, the expected GDB output may have already been removed from the buffer by the time Expect tries to match it. Well-written tests shouldn't have that problem because they are supposed to frequently match GDB's output (which removes it from the buffer), but in practice a number of tests don't yet do that. By increasing the buffer size we can reduce the severity of this problem, increasing the stability of testsuite results. The Expect man page notes that "excessively large values can slow down the pattern matcher". With the default buffer size, a tcwg_gdb_check job on aarch64-linux takes about 115 minutes. With this patch, it takes about 145 minutes. I think the extra time is worth it though. I also tried buffer sizes of 65k and 200k, but with the former the results aren't as good as with 100k, and with 200k the results aren't better. Change-Id: I0466c6f19658f7b638cc0e3dcf5023614de8fa41
-rw-r--r--config/linaro.exp5
1 files changed, 5 insertions, 0 deletions
diff --git a/config/linaro.exp b/config/linaro.exp
index 3d506ec1..d671e84f 100644
--- a/config/linaro.exp
+++ b/config/linaro.exp
@@ -90,3 +90,8 @@ if {[info exists env(ABE_TARGET_BOARD_OPTIONS)]
}
set target_list "$new_target_list"
}
+
+# The default Expect buffer size is 2000, but it is too small for some GDB
+# testcases which run commands generating a lot of output, causing
+# testsuite flakiness.
+match_max 100000