blob: f4a24630843b2477a18908aa9b9e00391fa5ccc3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#include <u.h>
#include <sys/mman.h>
#include "threadimpl.h"
#ifndef MAP_STACK
#define MAP_STACK 0
#endif
void*
_threadstkalloc(int n)
{
void *p;
p = mmap(nil, n, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON|MAP_STACK, -1, 0);
if(p == (void*)-1)
return nil;
return p;
}
void
_threadstkfree(void *v, int n)
{
if(n > 0)
munmap(v, n);
}
|