1*433d6423SLionel Sambuc 2*433d6423SLionel Sambuc #define _SYSTEM 1 3*433d6423SLionel Sambuc 4*433d6423SLionel Sambuc #include <stdio.h> 5*433d6423SLionel Sambuc #include <unistd.h> 6*433d6423SLionel Sambuc #include <fcntl.h> 7*433d6423SLionel Sambuc #include <stdlib.h> 8*433d6423SLionel Sambuc #include <signal.h> 9*433d6423SLionel Sambuc #include <sys/types.h> 10*433d6423SLionel Sambuc #include <sys/wait.h> 11*433d6423SLionel Sambuc 12*433d6423SLionel Sambuc #include <minix/config.h> 13*433d6423SLionel Sambuc #include <minix/com.h> 14*433d6423SLionel Sambuc #include <minix/type.h> 15*433d6423SLionel Sambuc #include <minix/const.h> 16*433d6423SLionel Sambuc #include <minix/endpoint.h> 17*433d6423SLionel Sambuc #include <minix/safecopies.h> 18*433d6423SLionel Sambuc #include <minix/syslib.h> 19*433d6423SLionel Sambuc #include <minix/sysutil.h> 20*433d6423SLionel Sambuc #include <minix/minlib.h> 21*433d6423SLionel Sambuc #include <errno.h> 22*433d6423SLionel Sambuc 23*433d6423SLionel Sambuc /* TEST_PAGE_SHIFT = 24*433d6423SLionel Sambuc * log2(CLICK_SIZE * TEST_PAGE_NUM) = CLICK_SHIFT + log2(TEST_PAGE_NUM) 25*433d6423SLionel Sambuc */ 26*433d6423SLionel Sambuc #define TEST_PAGE_NUM 8 27*433d6423SLionel Sambuc #define TEST_PAGE_SHIFT 15 28*433d6423SLionel Sambuc 29*433d6423SLionel Sambuc #define BUF_SIZE (TEST_PAGE_NUM * CLICK_SIZE) 30*433d6423SLionel Sambuc #define BUF_START 100 31*433d6423SLionel Sambuc 32*433d6423SLionel Sambuc #define FIFO_REQUESTOR "/usr/src/test/safecopy/1fifo" 33*433d6423SLionel Sambuc #define FIFO_GRANTOR "/usr/src/test/safecopy/2fifo" 34*433d6423SLionel Sambuc 35*433d6423SLionel Sambuc #define FIFO_WAIT(fid) { \ 36*433d6423SLionel Sambuc int a; \ 37*433d6423SLionel Sambuc if(read(fid, &a, sizeof(a)) != sizeof(a)) \ 38*433d6423SLionel Sambuc panic("FIFO_WAIT failed"); \ 39*433d6423SLionel Sambuc } 40*433d6423SLionel Sambuc #define FIFO_NOTIFY(fid) { \ 41*433d6423SLionel Sambuc int a = 1; \ 42*433d6423SLionel Sambuc if(write(fid, &a, sizeof(a)) != sizeof(a)) \ 43*433d6423SLionel Sambuc panic("FIFO_NOTIFY failed"); \ 44*433d6423SLionel Sambuc } 45*433d6423SLionel Sambuc 46*433d6423SLionel Sambuc #define DEBUG 0 47*433d6423SLionel Sambuc #if DEBUG 48*433d6423SLionel Sambuc # define dprint(x) printf x 49*433d6423SLionel Sambuc #else 50*433d6423SLionel Sambuc # define dprint(x) 51*433d6423SLionel Sambuc #endif 52*433d6423SLionel Sambuc 53