aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/ruby/files/3.0/902-hppa-pthread-stack-size.patch')
-rw-r--r--dev-lang/ruby/files/3.0/902-hppa-pthread-stack-size.patch54
1 files changed, 0 insertions, 54 deletions
diff --git a/dev-lang/ruby/files/3.0/902-hppa-pthread-stack-size.patch b/dev-lang/ruby/files/3.0/902-hppa-pthread-stack-size.patch
deleted file mode 100644
index 7978566..0000000
--- a/dev-lang/ruby/files/3.0/902-hppa-pthread-stack-size.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-https://bugs.gentoo.org/701494
-
-From 794b6fce94343c4f9dceca5d08224b0fb364fde8 Mon Sep 17 00:00:00 2001
-From: Sam James <sam@gentoo.org>
-Date: Fri, 7 Apr 2023 11:46:12 +0100
-Subject: [PATCH] thread_pthread: Grow main_stack if required (fixes tests on
- HPPA)
-
-On HPPA, test_insns.rb fails (along with various Ruby gems) with
-'stack level too deep (SystemStackError)'. This turns out to be because HPPA
-defaults to a small(er) stack.
-
-With this change, most of Ruby's test suite now passes on HPPA.
-
-Thanks to both Dave and Helge for the investigation and coming up with the
-patch.
-
-Bug: https://bugs.gentoo.org/701494
-Bug: https://bugs.debian.org/881773
-Bug: https://bugs.debian.org/881772 (for PPC64)
-Bug: https://github.com/rack/rack/issues/1640
-Thanks-to: John David Anglin <dave.anglin@bell.net>
-Thanks-to: Helge Deller <deller@gmx.de>
-Signed-off-by: Sam James <sam@gentoo.org>
---- a/thread_pthread.c
-+++ b/thread_pthread.c
-@@ -681,8 +681,22 @@ size_t pthread_get_stacksize_np(pthread_t);
- # define MAINSTACKADDR_AVAILABLE 0
- # endif
- #endif
--#if MAINSTACKADDR_AVAILABLE && !defined(get_main_stack)
--# define get_main_stack(addr, size) get_stack(addr, size)
-+#if MAINSTACKADDR_AVAILABLE
-+static int get_stack(void **, size_t *);
-+static int
-+get_main_stack(void **addr, size_t *size)
-+{
-+ int ret = get_stack(addr, size);
-+
-+#ifdef __hppa__
-+ /* On some architectures, the initial stack size may be too small, but fortunately,
-+ it's growable. Bump it up to the minimum needed if it is too small. */
-+ if (*size < RUBY_VM_THREAD_VM_STACK_SIZE)
-+ *size = RUBY_VM_THREAD_VM_STACK_SIZE;
-+#endif
-+
-+ return ret;
-+}
- #endif
-
- #ifdef STACKADDR_AVAILABLE
---
-2.40.0
-