summaryrefslogtreecommitdiff
path: root/sysdeps/l4/pt-stack-alloc.c
diff options
context:
space:
mode:
authorMarcus Brinkmann <marcus@gnu.org>2004-03-18 02:44:20 +0000
committerThomas Schwinge <tschwinge@gnu.org>2009-04-06 22:16:47 +0200
commitef01119ea9239c3e91c33dc3b51bb059eb621677 (patch)
treee2d13d56fbd0b59e959efc8b0f6bda8fca63b2ed /sysdeps/l4/pt-stack-alloc.c
parentcb62fb204d22daea8ec0367c7590f32116276aa7 (diff)
2004-03-17 Marcus Brinkmann <marcus@gnu.org>
* libpthread: New directory, populated with Neal H. Walfields pthread implementation.
Diffstat (limited to 'sysdeps/l4/pt-stack-alloc.c')
-rw-r--r--sysdeps/l4/pt-stack-alloc.c25
1 files changed, 4 insertions, 21 deletions
diff --git a/sysdeps/l4/pt-stack-alloc.c b/sysdeps/l4/pt-stack-alloc.c
index e28d531..9a25414 100644
--- a/sysdeps/l4/pt-stack-alloc.c
+++ b/sysdeps/l4/pt-stack-alloc.c
@@ -17,37 +17,20 @@
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
-#include <l4/l4.h>
+#include <l4.h>
#include <errno.h>
+#include <sys/mman.h>
#include <pt-internal.h>
#define __pthread_stacksize __pthread_default_attr.stacksize
-#include <l4/sigma0.h>
-#include <hurd/debug.h>
static void *
allocate_page (void)
{
- L4_Fpage_t p;
- /* The Kernel Interface page. */
- static L4_KernelInterfacePage_t *kip;
-
- if (! kip)
- kip = L4_GetKernelInterface ();
-
-#define sigma0_tid() (L4_GlobalId (kip->ThreadInfo.X.UserBase, 1))
- p = L4_Sigma0_GetPage (sigma0_tid (),
- L4_Fpage_Set_Attrs (L4_FpageLog2 (-1UL << 10,
- PAGE_SHIFT),
- L4_FullyAccessible));
- p.raw &= ~0x3ff;
-
- printf ("%s: Allocated page %x\n",
- __FUNCTION__, p.raw);
-
- return (void *) p.raw;
+ return mmap
+ (NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, 0, 0);
}