Nicholas Nethercote 38ff4e69d1 Comment changes only: s/skin/tool/
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2555
2004-08-03 13:29:09 +00:00

39 lines
1.2 KiB
C

#include <sys/mman.h>
#include <stdlib.h>
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
/* The quick sanity check of Memcheck (and other tools with shadow memory)
relies on the first 64KB of memory never being used. So our mmap()
refuses to touch this area. This program tests for that. */
int main(void)
{
/* mmap(0x0, ... FIXED) should fail */
int* m = mmap(0x0, 1000000, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANON|MAP_FIXED, -1, 0);
if (m != (int*)-1)
printf("succeeded?!\n");
/* mmap(0x1000, ... FIXED) should fail */
m = mmap((void*)0x1000, 1000000, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANON|MAP_FIXED, -1, 0);
if (m != (int*)-1)
printf("succeeded?!\n");
/* mmap(0xa000, ... FIXED) should fail */
m = mmap((void*)0xa000, 1000000, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANON|MAP_FIXED, -1, 0);
if (m != (int*)-1)
printf("succeeded?!\n");
/* mmap(0x10000, ... FIXED) should fail */
m = mmap((void*)0x10000, 1000000, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANON|MAP_FIXED, -1, 0);
if (m == (int*)-1)
printf("failed?!\n");
return 0;
}