diff options
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.patch | 54 |
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 - |