diff options
Diffstat (limited to 'repo/media/aom/fix-stack-size-e53da0b.patch')
-rw-r--r-- | repo/media/aom/fix-stack-size-e53da0b.patch | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/repo/media/aom/fix-stack-size-e53da0b.patch b/repo/media/aom/fix-stack-size-e53da0b.patch deleted file mode 100644 index d8206e8..0000000 --- a/repo/media/aom/fix-stack-size-e53da0b.patch +++ /dev/null @@ -1,78 +0,0 @@ -From e53da0b1bf2652896bed7b65929a1d8d0729d922 Mon Sep 17 00:00:00 2001 -From: Wan-Teh Chang <wtc@google.com> -Date: Thu, 27 Aug 2020 20:49:03 -0700 -Subject: [PATCH] Ensure thread stack size is at least 256 KB - -BUG=aomedia:2754 - -Change-Id: Ia6e211f9b87bc2efe376e7b9f4adb11741850b18 ---- - -diff --git a/aom_util/aom_thread.c b/aom_util/aom_thread.c -index a749a22..8411569 100644 ---- a/aom_util/aom_thread.c -+++ b/aom_util/aom_thread.c -@@ -133,16 +133,39 @@ - goto Error; - } - if (pthread_cond_init(&worker->impl_->condition_, NULL)) { -- pthread_mutex_destroy(&worker->impl_->mutex_); -- goto Error; -+ goto Error1; - } -+ pthread_attr_t *attr = NULL; -+#if HAVE_PTHREAD_H -+ pthread_attr_t thread_attributes; -+ attr = &thread_attributes; -+ if (pthread_attr_init(attr)) { -+ goto Error2; -+ } -+ size_t stack_size; -+ if (pthread_attr_getstacksize(attr, &stack_size)) { -+ pthread_attr_destroy(attr); -+ goto Error2; -+ } -+ const size_t kMinStackSize = 256 * 1024; -+ if (stack_size < kMinStackSize && -+ pthread_attr_setstacksize(attr, kMinStackSize)) { -+ pthread_attr_destroy(attr); -+ goto Error2; -+ } -+#endif // HAVE_PTHREAD_H - pthread_mutex_lock(&worker->impl_->mutex_); -- ok = !pthread_create(&worker->impl_->thread_, NULL, thread_loop, worker); -+ ok = !pthread_create(&worker->impl_->thread_, attr, thread_loop, worker); - if (ok) worker->status_ = OK; - pthread_mutex_unlock(&worker->impl_->mutex_); -+#if HAVE_PTHREAD_H -+ pthread_attr_destroy(attr); -+#endif - if (!ok) { -- pthread_mutex_destroy(&worker->impl_->mutex_); -+ Error2: - pthread_cond_destroy(&worker->impl_->condition_); -+ Error1: -+ pthread_mutex_destroy(&worker->impl_->mutex_); - Error: - aom_free(worker->impl_); - worker->impl_ = NULL; -diff --git a/aom_util/aom_thread.h b/aom_util/aom_thread.h -index 8d04312..efbed78 100644 ---- a/aom_util/aom_thread.h -+++ b/aom_util/aom_thread.h -@@ -32,6 +32,7 @@ - #include <process.h> // NOLINT - #include <windows.h> // NOLINT - typedef HANDLE pthread_t; -+typedef int pthread_attr_t; - typedef CRITICAL_SECTION pthread_mutex_t; - - #if _WIN32_WINNT < 0x0600 -@@ -147,6 +148,7 @@ - #include <sys/builtin.h> // NOLINT - - #define pthread_t TID -+#define pthread_attr_t int - #define pthread_mutex_t HMTX - - typedef struct { |