Skip to contentSkip to conversation

Increase size of user stack

PATCH In review Martin Hicks 3 participants 3 messages May 5, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Increase size of user stack

Hello,

The current user stack size limit of 2GB is not big enough for large SMP or SSI clusters. The following patch increases this size from 2GB to 512GB. The new size is negotiable, but right now SGI has programs that require over 100GB of stack size on a 64 processor machine. Setting the user stack size to 512GB seems like a reasonable thing to do for future growth.

The patch is against 2.4.21-bk but it applies against 2.5 as well.

Comments?
mh

Signature · 14 lines
Wild Open Source Inc.                  [email protected]


=== include/asm-ia64/a.out.h 1.4 vs edited ==--- 1.4/include/asm-ia64/a.out.h	Thu Feb 28 06:57:29 2002
+++ edited/include/asm-ia64/a.out.h	Mon May  5 16:39:03 2003
@@ -32,7 +32,7 @@
 #ifdef __KERNEL__
 # include <asm/page.h>
 # define STACK_TOP	(0x6000000000000000UL + (1UL << (4*PAGE_SHIFT - 12)) - PAGE_SIZE)
-# define IA64_RBS_BOT	(STACK_TOP - 0x80000000L + PAGE_SIZE)	/* bottom of reg. backing store */
+# define IA64_RBS_BOT	(STACK_TOP - 0x8000000000UL + PAGE_SIZE)	/* bottom of reg. backing store */
 #endif
 
 #endif /* _ASM_IA64_A_OUT_H */
#1 lore raw

Wouldn't it be better to base this off an rlimit?

Thanks,
Dave Howell

These are my opinions and not official opinions of Intel Corp.

David Howell
Intel Corporation
Telco Server Development
Server Products Division
Voice: (803) 461-6112 Fax: (803) 461-6292

Intel Corporation
Columbia Design Center, CBA-2
250 Berryhill Road, Suite 100
Columbia, SC 29210

[email protected]

-----Original Message-----
From: Martin Hicks [mailto:[email protected]]
Sent: Monday, May 05, 2003 2:19 PM
To: [email protected]
Cc: Bjorn Helgaas; David Mosberger
Subject: [Linux-ia64] [PATCH] Increase size of user stack

Hello,

The current user stack size limit of 2GB is not big enough for large SMP or SSI clusters. The following patch increases this size from 2GB to 512GB. The new size is negotiable, but right now SGI has programs that require over 100GB of stack size on a 64 processor machine. Setting the user stack size to 512GB seems like a reasonable thing to do for future growth.

The patch is against 2.4.21-bk but it applies against 2.5 as well.

Comments?
mh

Signature · 23 lines
Wild Open Source Inc.                  [email protected]


===== include/asm-ia64/a.out.h 1.4 vs edited =====
--- 1.4/include/asm-ia64/a.out.h	Thu Feb 28 06:57:29 2002
+++ edited/include/asm-ia64/a.out.h	Mon May  5 16:39:03 2003
@@ -32,7 +32,7 @@
 #ifdef __KERNEL__
 # include <asm/page.h>
 # define STACK_TOP	(0x6000000000000000UL + (1UL << (4*PAGE_SHIFT -
12)) - PAGE_SIZE)
-# define IA64_RBS_BOT	(STACK_TOP - 0x80000000L + PAGE_SIZE)	/*
bottom of reg. backing store */
+# define IA64_RBS_BOT	(STACK_TOP - 0x8000000000UL + PAGE_SIZE)
/* bottom of reg. backing store */
 #endif
 
 #endif /* _ASM_IA64_A_OUT_H */

_______________________________________________
Linux-IA64 mailing list
[email protected]
http://lists.linuxia64.org/lists/listinfo/linux-ia64
#2 lore raw
In reply to Martin Hicks
Quoted 1 line · David P

Wouldn't it be better to base this off an rlimit?

PA-RISC (which has an upwards-gorwing stack) bases this off RLIMIT_STACK. By default, we set it to 80MB. Of course, sshd likes to set it to -1 (unlimited), so we limit it to 1GB. ia64 will presumably want to be more generous in its clamping value.

I think this is all in the 2.5 tree now; if not you can pick up a recent pa patch at ftp://ftp.kernel.org/pub/linux/kernel/ports/parisc/v2.5/ and look for it. 90% of that diff is drivers/input, so it's not much to look through.

Signature · 3 lines
"It's not Hollywood.  War is real, war is primarily not about defeat or
victory, it is about death.  I've seen thousands and thousands of dead bodies.
Do you think I want to have an academic debate on this subject?" -- Robert Fisk