blob: ce994293927dc6b58287c23f52571c5db072945c [file] [log] [blame]
// kills itself using poison
#define _GNU_SOURCE 1
#include <stdlib.h>
#include <sys/mman.h>
#include <stdio.h>
#include <unistd.h>
#define MADV_POISON 100
int main(void)
{
int PS = getpagesize();
char *ptr = mmap(NULL, PS, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_POPULATE, 0,0);;
printf("ptr = %p\n", ptr);
madvise(ptr, PS, MADV_POISON);
printf("faulting\n");
*ptr = 1;
printf("waiting\n");
sleep(100);
return 0;
}