projects
/
libc-test
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix malloc-brk-fail
[libc-test]
/
src
/
regression
/
malloc-brk-fail.c
diff --git
a/src/regression/malloc-brk-fail.c
b/src/regression/malloc-brk-fail.c
index
13908d8
..
420b000
100644
(file)
--- a/
src/regression/malloc-brk-fail.c
+++ b/
src/regression/malloc-brk-fail.c
@@
-1,7
+1,9
@@
+// commit 5446303328adf4b4e36d9fba21848e6feb55fab4 2014-04-02
// malloc should not fail if brk fails but mmap can still allocate
#include <stdlib.h>
#include <errno.h>
#include <string.h>
// malloc should not fail if brk fails but mmap can still allocate
#include <stdlib.h>
#include <errno.h>
#include <string.h>
+#include <sys/mman.h>
#include <sys/resource.h>
#include "test.h"
#include <sys/resource.h>
#include "test.h"
@@
-19,8
+21,6
@@
int main(void)
t_error("vmfill failed\n");
return 1;
}
t_error("vmfill failed\n");
return 1;
}
- errno = 0;
- T(t_setrlim(RLIMIT_DATA, 0));
// malloc should fail here
errno = 0;
// malloc should fail here
errno = 0;
@@
-30,8
+30,8
@@
int main(void)
else if (errno != ENOMEM)
t_error("malloc did not fail with ENOMEM, got %s\n", strerror(errno));
else if (errno != ENOMEM)
t_error("malloc did not fail with ENOMEM, got %s\n", strerror(errno));
- // make s
ome space available for mmap
- T(munmap(
p+65536,
65536));
+ // make s
pace available for mmap, but ensure it's not contiguous with brk
+ T(munmap(
(char*)p+65536, n-
65536));
// malloc should succeed now
q = malloc(10000);
// malloc should succeed now
q = malloc(10000);