[PATCH] Reduce gdb.base/many-headers.c iterations on Solaris [PR34555]
Rainer Orth <[email protected]>
| Newsgroups | gmane.comp.gdb.patches |
|---|---|
| Message-ID | <[email protected]> |
As detailed in PR corefiles/34555, when reading the core file in the gdb.base/many-headers.exp test, gdb consumes excessive amounts of memory on Solaris. If left unchecked, e.g. with ulimit -Sv 8388608, the test will consume all available swap space. Since Solaris doesn't do lazy allocation, this will cause the system to become unusably slow. To avoid this, this patch reduces the iteration count by a factor of 100. Tested on sparcv9-sun-solaris2.11, x86_64-pc-solaris2.11, and x86_64-pc-linux-gnu. Ok for trunk and the gdb-18 branch? AFAICT, the issue is purely in gdb's Solaris corefile reader, which seems to need a complete rewrite rather than a couple of bugfixes. Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University
sol2-many-headers-iter.patch
(text/x-patch, 626 B)
# HG changeset patch
# Parent c3dbfb6080fbfc4d3b581adca10f1951ecb880e6
Reduce gdb.base/many-headers.c iterations on Solaris [PR34555]
diff --git a/gdb/testsuite/gdb.base/many-headers.c b/gdb/testsuite/gdb.base/many-headers.c
--- a/gdb/testsuite/gdb.base/many-headers.c
+++ b/gdb/testsuite/gdb.base/many-headers.c
@@ -25,7 +25,12 @@ main (void)
char *ptr;
int ind, cnt;
+#if defined __sun__ && defined __svr4__
+ /* PR corefiles/34555. */
+ cnt = 1000;
+#else
cnt = 100000;
+#endif
for (ind = 0; ind < cnt; ind++)
{
ptr = mmap (NULL, 100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);