1 2 #include "syslib.h" 3 4 #include <minix/vm.h> 5 #include <string.h> 6 7 /*===========================================================================* 8 * vm_procctl * 9 *===========================================================================*/ 10 static int vm_procctl(endpoint_t ep, int param, 11 vir_bytes m1, vir_bytes len, int flags) 12 { 13 message m; 14 int result; 15 16 memset(&m, 0, sizeof(m)); 17 18 m.VMPCTL_WHO = ep; 19 m.VMPCTL_PARAM = param; 20 m.VMPCTL_M1 = m1; 21 m.VMPCTL_LEN = len; 22 m.VMPCTL_FLAGS = flags; 23 24 result = _taskcall(VM_PROC_NR, VM_PROCCTL, &m); 25 return(result); 26 } 27 28 int vm_procctl_clear(endpoint_t ep) 29 { 30 return vm_procctl(ep, VMPPARAM_CLEAR, 0, 0, 0); 31 } 32 33 int vm_procctl_handlemem(endpoint_t ep, vir_bytes m1, vir_bytes len, 34 int writeflag) 35 { 36 return vm_procctl(ep, VMPPARAM_HANDLEMEM, m1, len, writeflag); 37 } 38 39