Put the RSE backing store at a fixed address. This change is triggered

by libguile that needs to know the base of the RSE backing store. We
currently do not export the fixed address to userland by means of a
sysctl so user code needs to hardcode it for now. This will be revisited
later.

The RSE backing store is now at the bottom of region 4. The memory stack
is at the top of region 4. This means that the whole region is usable
for the stacks, giving a 61-bit stack space.

Port: lang/guile (depended of x11/gnome2)
This commit is contained in:
Marcel Moolenaar 2003-10-20 05:34:10 +00:00
parent 3ad8097fd4
commit bab1f05277
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=121268
2 changed files with 3 additions and 1 deletions

View File

@ -144,6 +144,8 @@
#define IA64_ID_PAGE_SIZE (1<<(LOG2_ID_PAGE_SIZE))
#define IA64_ID_PAGE_MASK (IA64_ID_PAGE_SIZE-1)
#define IA64_BACKINGSTORE IA64_RR_BASE(4)
/*
* Mach derived constants
*/

View File

@ -868,7 +868,7 @@ exec_new_vmspace(imgp, sv)
#ifdef __ia64__
/* Allocate a new register stack */
stack_addr = sv->sv_usrstack - 2 * maxssiz;
stack_addr = IA64_BACKINGSTORE;
error = vm_map_stack(map, stack_addr, (vm_size_t)maxssiz,
sv->sv_stackprot, VM_PROT_ALL, MAP_STACK_GROWS_UP);
if (error)