aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2023-04-22 02:43:31 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-04-22 02:43:31 +0000
commit7ac067b8cdd5080a4c133726aa7df64127dfb368 (patch)
treeb710ec6b97260436470a021f1c193645207a8cc0
parent6f5f7247a900e1f976222357d448f3016ece5554 (diff)
parentd25afca1cc8f5b18310f6686174d184605f48573 (diff)
downloadbionic-7ac067b8cdd5080a4c133726aa7df64127dfb368.tar.gz
Fix pthread#pthread_heap_allocated_stack for jemalloc. am: d25afca1cc
Original change: https://googleplex-android-review.googlesource.com/c/platform/bionic/+/22794431 Change-Id: Ib5680f2ecf4f70284531aed8f1d65c1146bbb88f Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--tests/pthread_test.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/tests/pthread_test.cpp b/tests/pthread_test.cpp
index 06a0f3dc3..aad2a4df0 100644
--- a/tests/pthread_test.cpp
+++ b/tests/pthread_test.cpp
@@ -195,12 +195,12 @@ TEST(pthread, pthread_heap_allocated_stack) {
SKIP_WITH_HWASAN; // TODO(b/148982147): Re-enable when fixed.
size_t stack_size = 640 * 1024;
- std::vector<char> stack_vec(stack_size, '\xff');
- void* stack = stack_vec.data();
+ std::unique_ptr<char[]> stack(new (std::align_val_t(getpagesize())) char[stack_size]);
+ memset(stack.get(), '\xff', stack_size);
pthread_attr_t attr;
ASSERT_EQ(0, pthread_attr_init(&attr));
- ASSERT_EQ(0, pthread_attr_setstack(&attr, stack, stack_size));
+ ASSERT_EQ(0, pthread_attr_setstack(&attr, stack.get(), stack_size));
pthread_t t;
ASSERT_EQ(0, pthread_create(&t, &attr, FnWithStackFrame, nullptr));