1*49678Smckusick /* 2*49678Smckusick * Copyright (c) 1982, 1986, 1989 Regents of the University of California. 3*49678Smckusick * All rights reserved. 4*49678Smckusick * 5*49678Smckusick * %sccs.include.redist.c% 6*49678Smckusick * 7*49678Smckusick * from: @(#)sys_process.c 7.22 (Berkeley) 5/11/91 8*49678Smckusick */ 9*49678Smckusick 10*49678Smckusick #define IPCREG 11*49678Smckusick #include "param.h" 12*49678Smckusick #include "proc.h" 13*49678Smckusick #include "vnode.h" 14*49678Smckusick #include "seg.h" 15*49678Smckusick #include "buf.h" 16*49678Smckusick #include "ptrace.h" 17*49678Smckusick 18*49678Smckusick #include "machine/reg.h" 19*49678Smckusick #include "machine/psl.h" 20*49678Smckusick #include "vm/vm.h" 21*49678Smckusick #include "vm/vm_page.h" 22*49678Smckusick 23*49678Smckusick #include "user.h" 24*49678Smckusick 25*49678Smckusick /* 26*49678Smckusick * Process debugging system call. 27*49678Smckusick */ 28*49678Smckusick ptrace(curp, uap, retval) 29*49678Smckusick struct proc *curp; 30*49678Smckusick register struct args { 31*49678Smckusick int req; 32*49678Smckusick int pid; 33*49678Smckusick int *addr; 34*49678Smckusick int data; 35*49678Smckusick } *uap; 36*49678Smckusick int *retval; 37*49678Smckusick { 38*49678Smckusick 39*49678Smckusick /* 40*49678Smckusick * Body deleted. 41*49678Smckusick */ 42*49678Smckusick return (ENOSYS); 43*49678Smckusick } 44*49678Smckusick 45*49678Smckusick /* 46*49678Smckusick * Transmit a tracing request from the parent to the child process 47*49678Smckusick * being debugged. This code runs in the context of the child process 48*49678Smckusick * to fulfill the command requested by the parent. 49*49678Smckusick */ 50*49678Smckusick procxmt(p) 51*49678Smckusick register struct proc *p; 52*49678Smckusick { 53*49678Smckusick 54*49678Smckusick /* 55*49678Smckusick * Body deleted. 56*49678Smckusick */ 57*49678Smckusick return (0); 58*49678Smckusick } 59*49678Smckusick 60*49678Smckusick /* 61*49678Smckusick * Enable process profiling system call. 62*49678Smckusick */ 63*49678Smckusick /* ARGSUSED */ 64*49678Smckusick profil(p, uap, retval) 65*49678Smckusick struct proc *p; 66*49678Smckusick register struct args { 67*49678Smckusick short *bufbase; 68*49678Smckusick unsigned bufsize; 69*49678Smckusick unsigned pcoffset; 70*49678Smckusick unsigned pcscale; 71*49678Smckusick } *uap; 72*49678Smckusick int *retval; 73*49678Smckusick { 74*49678Smckusick 75*49678Smckusick /* 76*49678Smckusick * Body deleted. 77*49678Smckusick */ 78*49678Smckusick return (ENOSYS); 79*49678Smckusick } 80