aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-06-30 16:53:57 +0200
committerGitHub <noreply@github.com>2023-06-30 16:53:57 +0200
commit13311c7b7d5cd1539cbe3c263b2a4daf0ceeef2f (patch)
treeaae99c05d7fd07497ac2a600d353168a5ea0fd0f
parent042e03f464f29a8656391b9e48c780b8acd8e795 (diff)
parent0618c82fb073581382f585a9bb4d3886e20d6b48 (diff)
Merge pull request #27599 from vespa-engine/balder/need-larger-stack-when-running-address-sanitizer
Need larger stack when using address santizer
-rw-r--r--searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp b/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp
index 864dd64b98f..7dfd8bcb17a 100644
--- a/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp
+++ b/searchlib/src/vespa/searchlib/fef/blueprintresolver.cpp
@@ -6,6 +6,7 @@
#include "blueprint.h"
#include <vespa/vespalib/util/stringfmt.h>
#include <vespa/vespalib/util/size_literals.h>
+#include <vespa/config.h>
#include <cassert>
#include <set>
@@ -287,6 +288,14 @@ BlueprintResolver::addSeed(vespalib::stringref feature)
_seeds.emplace_back(feature);
}
+namespace {
+#if defined(VESPA_USE_ADDRESS_SANITIZER)
+ constexpr size_t STACK_MULTIPLIER = 8;
+#else
+ constexpr size_t STACK_MULTIPLIER = 1;
+#endif
+}
+
bool
BlueprintResolver::compile()
{
@@ -304,7 +313,7 @@ BlueprintResolver::compile()
}
size_t stack_usage = compiler.stack_usage();
- if (stack_usage > (128_Ki)) {
+ if (stack_usage > (STACK_MULTIPLIER * 128_Ki)) {
_warnings.emplace_back(fmt("high stack usage: %zu bytes", stack_usage));
}
return !compiler.failed();