\hypertarget{sys__process_8c}{}\doxysection{kern/sys\+\_\+process.c File Reference}
\label{sys__process_8c}\index{kern/sys\_process.c@{kern/sys\_process.c}}
{\ttfamily \#include $<$sys/cdefs.\+h$>$}\newline
{\ttfamily \#include $<$sys/param.\+h$>$}\newline
{\ttfamily \#include $<$sys/systm.\+h$>$}\newline
{\ttfamily \#include $<$sys/ktr.\+h$>$}\newline
{\ttfamily \#include $<$sys/limits.\+h$>$}\newline
{\ttfamily \#include $<$sys/lock.\+h$>$}\newline
{\ttfamily \#include $<$sys/mutex.\+h$>$}\newline
{\ttfamily \#include $<$sys/reg.\+h$>$}\newline
{\ttfamily \#include $<$sys/syscallsubr.\+h$>$}\newline
{\ttfamily \#include $<$sys/sysent.\+h$>$}\newline
{\ttfamily \#include $<$sys/sysproto.\+h$>$}\newline
{\ttfamily \#include $<$sys/priv.\+h$>$}\newline
{\ttfamily \#include $<$sys/proc.\+h$>$}\newline
{\ttfamily \#include $<$sys/vnode.\+h$>$}\newline
{\ttfamily \#include $<$sys/ptrace.\+h$>$}\newline
{\ttfamily \#include $<$sys/rwlock.\+h$>$}\newline
{\ttfamily \#include $<$sys/sx.\+h$>$}\newline
{\ttfamily \#include $<$sys/malloc.\+h$>$}\newline
{\ttfamily \#include $<$sys/signalvar.\+h$>$}\newline
{\ttfamily \#include $<$sys/caprights.\+h$>$}\newline
{\ttfamily \#include $<$sys/filedesc.\+h$>$}\newline
{\ttfamily \#include $<$security/audit/audit.\+h$>$}\newline
{\ttfamily \#include $<$vm/vm.\+h$>$}\newline
{\ttfamily \#include $<$vm/pmap.\+h$>$}\newline
{\ttfamily \#include $<$vm/vm\+\_\+extern.\+h$>$}\newline
{\ttfamily \#include $<$vm/vm\+\_\+map.\+h$>$}\newline
{\ttfamily \#include $<$vm/vm\+\_\+kern.\+h$>$}\newline
{\ttfamily \#include $<$vm/vm\+\_\+object.\+h$>$}\newline
{\ttfamily \#include $<$vm/vm\+\_\+page.\+h$>$}\newline
{\ttfamily \#include $<$vm/vm\+\_\+param.\+h$>$}\newline
Include dependency graph for sys\+\_\+process.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d3/d88/sys__process_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structptrace__args}{ptrace\+\_\+args}}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{sys__process_8c_afe5a3984d1faf0679da3c1189d31550a}{PROC\+\_\+\+ASSERT\+\_\+\+TRACEREQ}}(p)~MPASS(((p)-\/$>$p\+\_\+flag2 \& P2\+\_\+\+PTRACEREQ) != 0)
\item 
\#define \mbox{\hyperlink{sys__process_8c_a335fee6ebf4226bf34446d4e32fc83b0}{PROC\+\_\+\+ACTION}}(action)
\item 
\#define \mbox{\hyperlink{sys__process_8c_a87cf83de133947df29fadd53e99fa83f}{PROC\+\_\+\+READ}}(w,  t,  a)~proc\+\_\+read\+\_\+ \#\# w (t, a)
\item 
\#define \mbox{\hyperlink{sys__process_8c_a60dc560503d72fd172e5176e303d6e40}{PROC\+\_\+\+WRITE}}(w,  t,  a)~proc\+\_\+write\+\_\+ \#\# w (t, a)
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{sys__process_8c_a8c3ef283470a68cd30afe9b8a72cb60f}{\+\_\+\+\_\+\+FBSDID}} (\char`\"{}\$Free\+BSD\$\char`\"{})
\item 
int \mbox{\hyperlink{sys__process_8c_a22877bfe37a5dcbbf2f22c22d6c83897}{proc\+\_\+read\+\_\+regs}} (struct thread $\ast$td, struct reg $\ast$regs)
\item 
int \mbox{\hyperlink{sys__process_8c_ae9508140ef896f80c97d6cecbb865358}{proc\+\_\+write\+\_\+regs}} (struct thread $\ast$td, struct reg $\ast$regs)
\item 
int \mbox{\hyperlink{sys__process_8c_a4df910a35a93e5e5321e6311e8af2ea9}{proc\+\_\+read\+\_\+dbregs}} (struct thread $\ast$td, struct dbreg $\ast$dbregs)
\item 
int \mbox{\hyperlink{sys__process_8c_a4ece99362aefe1a8c0c9432ef5207ab8}{proc\+\_\+write\+\_\+dbregs}} (struct thread $\ast$td, struct dbreg $\ast$dbregs)
\item 
int \mbox{\hyperlink{sys__process_8c_af4fbc6f1f3971e397f95d8c99eec7c19}{proc\+\_\+read\+\_\+fpregs}} (struct thread $\ast$td, struct fpreg $\ast$fpregs)
\item 
int \mbox{\hyperlink{sys__process_8c_ad76849a1c7ada50ae0f10e49f7a92511}{proc\+\_\+write\+\_\+fpregs}} (struct thread $\ast$td, struct fpreg $\ast$fpregs)
\item 
static struct regset $\ast$ \mbox{\hyperlink{sys__process_8c_a172832a4cdc97859ea43b2106c625ad0}{proc\+\_\+find\+\_\+regset}} (struct thread $\ast$td, int note)
\item 
static int \mbox{\hyperlink{sys__process_8c_a5c0e28efd9d685a10debbb917066ce68}{proc\+\_\+read\+\_\+regset}} (struct thread $\ast$td, int note, struct iovec $\ast$iov)
\item 
static int \mbox{\hyperlink{sys__process_8c_af9ed9ed671d84c77383f0148e84f190e}{proc\+\_\+write\+\_\+regset}} (struct thread $\ast$td, int note, struct iovec $\ast$iov)
\item 
int \mbox{\hyperlink{sys__process_8c_af34be7a9d70ffc4b579e941beb261222}{proc\+\_\+sstep}} (struct thread $\ast$td)
\item 
int \mbox{\hyperlink{sys__process_8c_a08981da15cff0e19c1aa1ec2389640ed}{proc\+\_\+rwmem}} (struct proc $\ast$p, struct uio $\ast$uio)
\item 
static ssize\+\_\+t \mbox{\hyperlink{sys__process_8c_adaec5cf3fa16c5cd761d6fd28e677e5d}{proc\+\_\+iop}} (struct thread $\ast$td, struct proc $\ast$p, vm\+\_\+offset\+\_\+t va, void $\ast$\mbox{\hyperlink{vfs__syscalls_8c_a6defe41b89c760943b86089ec1838319}{buf}}, size\+\_\+t len, enum uio\+\_\+rw rw)
\item 
ssize\+\_\+t \mbox{\hyperlink{sys__process_8c_a3bfde23d6fbad61aca7b53ed6b7b8260}{proc\+\_\+readmem}} (struct thread $\ast$td, struct proc $\ast$p, vm\+\_\+offset\+\_\+t va, void $\ast$\mbox{\hyperlink{vfs__syscalls_8c_a6defe41b89c760943b86089ec1838319}{buf}}, size\+\_\+t len)
\item 
ssize\+\_\+t \mbox{\hyperlink{sys__process_8c_a56c42e43a0f514efe9c37d07aef14541}{proc\+\_\+writemem}} (struct thread $\ast$td, struct proc $\ast$p, vm\+\_\+offset\+\_\+t va, void $\ast$\mbox{\hyperlink{vfs__syscalls_8c_a6defe41b89c760943b86089ec1838319}{buf}}, size\+\_\+t len)
\item 
static int \mbox{\hyperlink{sys__process_8c_aa44894c4194003c9926b2a158a9ef6da}{ptrace\+\_\+vm\+\_\+entry}} (struct thread $\ast$td, struct proc $\ast$p, struct ptrace\+\_\+vm\+\_\+entry $\ast$pve)
\item 
int \mbox{\hyperlink{sys__process_8c_af355c8cb6efcff3b5149686f75db8a37}{sys\+\_\+ptrace}} (struct thread $\ast$td, struct \mbox{\hyperlink{structptrace__args}{ptrace\+\_\+args}} $\ast$uap)
\item 
void \mbox{\hyperlink{sys__process_8c_aef8b99819717960dc631e17afa3d2c73}{proc\+\_\+set\+\_\+traced}} (struct proc $\ast$p, bool \mbox{\hyperlink{linker__if_8m_a2d59b472688469b2e379b38051e256fb}{stop}})
\item 
void \mbox{\hyperlink{sys__process_8c_aa89897fd9387e2d0bdfb2ef68578f167}{ptrace\+\_\+unsuspend}} (struct proc $\ast$p)
\item 
static int \mbox{\hyperlink{sys__process_8c_a669f13e02dfcb124cd1cc8a94176bb45}{proc\+\_\+can\+\_\+ptrace}} (struct thread $\ast$td, struct proc $\ast$p)
\item 
static struct thread $\ast$ \mbox{\hyperlink{sys__process_8c_aba6f0abb6e8e6ef6f46377a9b3ea4804}{ptrace\+\_\+sel\+\_\+coredump\+\_\+thread}} (struct proc $\ast$p)
\item 
int \mbox{\hyperlink{sys__process_8c_a8e295f83907dc3bc6278c19b3f90c822}{kern\+\_\+ptrace}} (struct thread $\ast$td, int req, pid\+\_\+t pid, void $\ast$\mbox{\hyperlink{msi__if_8m_a7345ae8680eeb32913b762d1d5e502b4}{addr}}, int \mbox{\hyperlink{vfs__extattr_8c_a735984d41155bc1032e09bece8f8d66d}{data}})
\end{DoxyCompactItemize}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{sys__process_8c_a335fee6ebf4226bf34446d4e32fc83b0}\label{sys__process_8c_a335fee6ebf4226bf34446d4e32fc83b0}} 
\index{sys\_process.c@{sys\_process.c}!PROC\_ACTION@{PROC\_ACTION}}
\index{PROC\_ACTION@{PROC\_ACTION}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{PROC\_ACTION}{PROC\_ACTION}}
{\footnotesize\ttfamily \#define PROC\+\_\+\+ACTION(\begin{DoxyParamCaption}\item[{}]{action }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{        \textcolor{keywordflow}{do} \{                                    \(\backslash\)}
\DoxyCodeLine{        int error;                                                      \(\backslash\)}
\DoxyCodeLine{                                                                        \(\backslash\)}
\DoxyCodeLine{        PROC\_LOCK\_ASSERT(td-\/>td\_proc, MA\_OWNED);                        \(\backslash\)}
\DoxyCodeLine{        if ((td-\/>td\_proc-\/>p\_flag \& P\_INMEM) == 0)                       \(\backslash\)}
\DoxyCodeLine{                error = EIO;                                            \(\backslash\)}
\DoxyCodeLine{        else                                                            \(\backslash\)}
\DoxyCodeLine{                error = (action);                                       \(\backslash\)}
\DoxyCodeLine{        return (error);                                                 \(\backslash\)}
\DoxyCodeLine{\} \textcolor{keywordflow}{while} (0)}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{sys__process_8c_source_l00102}{102}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.

\mbox{\Hypertarget{sys__process_8c_afe5a3984d1faf0679da3c1189d31550a}\label{sys__process_8c_afe5a3984d1faf0679da3c1189d31550a}} 
\index{sys\_process.c@{sys\_process.c}!PROC\_ASSERT\_TRACEREQ@{PROC\_ASSERT\_TRACEREQ}}
\index{PROC\_ASSERT\_TRACEREQ@{PROC\_ASSERT\_TRACEREQ}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{PROC\_ASSERT\_TRACEREQ}{PROC\_ASSERT\_TRACEREQ}}
{\footnotesize\ttfamily \#define PROC\+\_\+\+ASSERT\+\_\+\+TRACEREQ(\begin{DoxyParamCaption}\item[{}]{p }\end{DoxyParamCaption})~MPASS(((p)-\/$>$p\+\_\+flag2 \& P2\+\_\+\+PTRACEREQ) != 0)}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00074}{74}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.

\mbox{\Hypertarget{sys__process_8c_a87cf83de133947df29fadd53e99fa83f}\label{sys__process_8c_a87cf83de133947df29fadd53e99fa83f}} 
\index{sys\_process.c@{sys\_process.c}!PROC\_READ@{PROC\_READ}}
\index{PROC\_READ@{PROC\_READ}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{PROC\_READ}{PROC\_READ}}
{\footnotesize\ttfamily \#define PROC\+\_\+\+READ(\begin{DoxyParamCaption}\item[{}]{w,  }\item[{}]{t,  }\item[{}]{a }\end{DoxyParamCaption})~proc\+\_\+read\+\_\+ \#\# w (t, a)}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00729}{729}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.

\mbox{\Hypertarget{sys__process_8c_a60dc560503d72fd172e5176e303d6e40}\label{sys__process_8c_a60dc560503d72fd172e5176e303d6e40}} 
\index{sys\_process.c@{sys\_process.c}!PROC\_WRITE@{PROC\_WRITE}}
\index{PROC\_WRITE@{PROC\_WRITE}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{PROC\_WRITE}{PROC\_WRITE}}
{\footnotesize\ttfamily \#define PROC\+\_\+\+WRITE(\begin{DoxyParamCaption}\item[{}]{w,  }\item[{}]{t,  }\item[{}]{a }\end{DoxyParamCaption})~proc\+\_\+write\+\_\+ \#\# w (t, a)}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00730}{730}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{sys__process_8c_a8c3ef283470a68cd30afe9b8a72cb60f}\label{sys__process_8c_a8c3ef283470a68cd30afe9b8a72cb60f}} 
\index{sys\_process.c@{sys\_process.c}!\_\_FBSDID@{\_\_FBSDID}}
\index{\_\_FBSDID@{\_\_FBSDID}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{\_\_FBSDID()}{\_\_FBSDID()}}
{\footnotesize\ttfamily \+\_\+\+\_\+\+FBSDID (\begin{DoxyParamCaption}\item[{\char`\"{}\$Free\+BSD\$\char`\"{}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{sys__process_8c_a8e295f83907dc3bc6278c19b3f90c822}\label{sys__process_8c_a8e295f83907dc3bc6278c19b3f90c822}} 
\index{sys\_process.c@{sys\_process.c}!kern\_ptrace@{kern\_ptrace}}
\index{kern\_ptrace@{kern\_ptrace}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{kern\_ptrace()}{kern\_ptrace()}}
{\footnotesize\ttfamily int kern\+\_\+ptrace (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{int}]{req,  }\item[{pid\+\_\+t}]{pid,  }\item[{void $\ast$}]{addr,  }\item[{int}]{data }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00806}{806}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{msi__if_8m_source_l00089}{addr}}, \mbox{\hyperlink{vfs__syscalls_8c_source_l02423}{buf}}, \mbox{\hyperlink{subr__capability_8c_source_l00099}{cap\+\_\+write\+\_\+rights}}, \mbox{\hyperlink{msi__if_8m_source_l00090}{data}}, \mbox{\hyperlink{kern__descrip_8c_source_l03402}{fget\+\_\+write()}}, \mbox{\hyperlink{kern__malloc_8c_source_l00907}{free()}}, \mbox{\hyperlink{init__main_8c_source_l00112}{initproc}}, \mbox{\hyperlink{kern__sig_8c_source_l02117}{kern\+\_\+psignal()}}, \mbox{\hyperlink{kern__malloc_8c_source_l00632}{malloc()}}, \mbox{\hyperlink{kern__prot_8c_source_l01681}{p\+\_\+candebug()}}, \mbox{\hyperlink{kern__prot_8c_source_l01462}{p\+\_\+cansee()}}, \mbox{\hyperlink{kern__proc_8c_source_l00468}{pfind()}}, \mbox{\hyperlink{sys__process_8c_source_l00759}{proc\+\_\+can\+\_\+ptrace()}}, \mbox{\hyperlink{sys__process_8c_source_l00729}{PROC\+\_\+\+READ}}, \mbox{\hyperlink{sys__process_8c_source_l00183}{proc\+\_\+read\+\_\+regset()}}, \mbox{\hyperlink{sys__process_8c_source_l00444}{proc\+\_\+readmem()}}, \mbox{\hyperlink{kern__exit_8c_source_l00114}{proc\+\_\+realparent()}}, \mbox{\hyperlink{kern__exit_8c_source_l01444}{proc\+\_\+reparent()}}, \mbox{\hyperlink{sys__process_8c_source_l00331}{proc\+\_\+rwmem()}}, \mbox{\hyperlink{sys__process_8c_source_l00734}{proc\+\_\+set\+\_\+traced()}}, \mbox{\hyperlink{kern__sig_8c_source_l03374}{proc\+\_\+wkilled()}}, \mbox{\hyperlink{sys__process_8c_source_l00730}{PROC\+\_\+\+WRITE}}, \mbox{\hyperlink{sys__process_8c_source_l00238}{proc\+\_\+write\+\_\+regset()}}, \mbox{\hyperlink{sys__process_8c_source_l00452}{proc\+\_\+writemem()}}, \mbox{\hyperlink{kern__proc_8c_source_l00135}{proctree\+\_\+lock}}, \mbox{\hyperlink{kern__sig_8c_source_l02554}{ptrace\+\_\+coredump()}}, \mbox{\hyperlink{sys__process_8c_source_l00791}{ptrace\+\_\+sel\+\_\+coredump\+\_\+thread()}}, \mbox{\hyperlink{sys__process_8c_source_l00746}{ptrace\+\_\+unsuspend()}}, \mbox{\hyperlink{sys__process_8c_source_l00460}{ptrace\+\_\+vm\+\_\+entry()}}, \mbox{\hyperlink{kern__sig_8c_source_l00574}{sigqueue\+\_\+delete()}}, \mbox{\hyperlink{kern__sig_8c_source_l00380}{sigqueue\+\_\+take()}}, \mbox{\hyperlink{kern__thread_8c_source_l01729}{tdfind()}}, \mbox{\hyperlink{kern__thread_8c_source_l01562}{thread\+\_\+run\+\_\+flash()}}, \mbox{\hyperlink{kern__thread_8c_source_l01590}{thread\+\_\+unsuspend()}}, and \mbox{\hyperlink{kern__synch_8c_source_l00349}{wakeup()}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00584}{sys\+\_\+ptrace()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a8e295f83907dc3bc6278c19b3f90c822_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=259pt]{d1/d2c/sys__process_8c_a8e295f83907dc3bc6278c19b3f90c822_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_a669f13e02dfcb124cd1cc8a94176bb45}\label{sys__process_8c_a669f13e02dfcb124cd1cc8a94176bb45}} 
\index{sys\_process.c@{sys\_process.c}!proc\_can\_ptrace@{proc\_can\_ptrace}}
\index{proc\_can\_ptrace@{proc\_can\_ptrace}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_can\_ptrace()}{proc\_can\_ptrace()}}
{\footnotesize\ttfamily static int proc\+\_\+can\+\_\+ptrace (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct proc $\ast$}]{p }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00759}{759}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{kern__prot_8c_source_l01681}{p\+\_\+candebug()}}, and \mbox{\hyperlink{kern__prot_8c_source_l01462}{p\+\_\+cansee()}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a669f13e02dfcb124cd1cc8a94176bb45_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a669f13e02dfcb124cd1cc8a94176bb45_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_a172832a4cdc97859ea43b2106c625ad0}\label{sys__process_8c_a172832a4cdc97859ea43b2106c625ad0}} 
\index{sys\_process.c@{sys\_process.c}!proc\_find\_regset@{proc\_find\_regset}}
\index{proc\_find\_regset@{proc\_find\_regset}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_find\_regset()}{proc\_find\_regset()}}
{\footnotesize\ttfamily static struct regset $\ast$ proc\+\_\+find\+\_\+regset (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{int}]{note }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00160}{160}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00183}{proc\+\_\+read\+\_\+regset()}}, and \mbox{\hyperlink{sys__process_8c_source_l00238}{proc\+\_\+write\+\_\+regset()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a172832a4cdc97859ea43b2106c625ad0_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_adaec5cf3fa16c5cd761d6fd28e677e5d}\label{sys__process_8c_adaec5cf3fa16c5cd761d6fd28e677e5d}} 
\index{sys\_process.c@{sys\_process.c}!proc\_iop@{proc\_iop}}
\index{proc\_iop@{proc\_iop}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_iop()}{proc\_iop()}}
{\footnotesize\ttfamily static ssize\+\_\+t proc\+\_\+iop (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct proc $\ast$}]{p,  }\item[{vm\+\_\+offset\+\_\+t}]{va,  }\item[{void $\ast$}]{buf,  }\item[{size\+\_\+t}]{len,  }\item[{enum uio\+\_\+rw}]{rw }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00418}{418}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{vfs__syscalls_8c_source_l02423}{buf}}, and \mbox{\hyperlink{sys__process_8c_source_l00331}{proc\+\_\+rwmem()}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00444}{proc\+\_\+readmem()}}, and \mbox{\hyperlink{sys__process_8c_source_l00452}{proc\+\_\+writemem()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=254pt]{d1/d2c/sys__process_8c_adaec5cf3fa16c5cd761d6fd28e677e5d_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_adaec5cf3fa16c5cd761d6fd28e677e5d_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_a4df910a35a93e5e5321e6311e8af2ea9}\label{sys__process_8c_a4df910a35a93e5e5321e6311e8af2ea9}} 
\index{sys\_process.c@{sys\_process.c}!proc\_read\_dbregs@{proc\_read\_dbregs}}
\index{proc\_read\_dbregs@{proc\_read\_dbregs}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_read\_dbregs()}{proc\_read\_dbregs()}}
{\footnotesize\ttfamily int proc\+\_\+read\+\_\+dbregs (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct dbreg $\ast$}]{dbregs }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00128}{128}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{sys__process_8c_source_l00102}{PROC\+\_\+\+ACTION}}.

\mbox{\Hypertarget{sys__process_8c_af4fbc6f1f3971e397f95d8c99eec7c19}\label{sys__process_8c_af4fbc6f1f3971e397f95d8c99eec7c19}} 
\index{sys\_process.c@{sys\_process.c}!proc\_read\_fpregs@{proc\_read\_fpregs}}
\index{proc\_read\_fpregs@{proc\_read\_fpregs}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_read\_fpregs()}{proc\_read\_fpregs()}}
{\footnotesize\ttfamily int proc\+\_\+read\+\_\+fpregs (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct fpreg $\ast$}]{fpregs }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00146}{146}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{sys__process_8c_source_l00102}{PROC\+\_\+\+ACTION}}.

\mbox{\Hypertarget{sys__process_8c_a22877bfe37a5dcbbf2f22c22d6c83897}\label{sys__process_8c_a22877bfe37a5dcbbf2f22c22d6c83897}} 
\index{sys\_process.c@{sys\_process.c}!proc\_read\_regs@{proc\_read\_regs}}
\index{proc\_read\_regs@{proc\_read\_regs}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_read\_regs()}{proc\_read\_regs()}}
{\footnotesize\ttfamily int proc\+\_\+read\+\_\+regs (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct reg $\ast$}]{regs }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00114}{114}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{sys__process_8c_source_l00102}{PROC\+\_\+\+ACTION}}.

\mbox{\Hypertarget{sys__process_8c_a5c0e28efd9d685a10debbb917066ce68}\label{sys__process_8c_a5c0e28efd9d685a10debbb917066ce68}} 
\index{sys\_process.c@{sys\_process.c}!proc\_read\_regset@{proc\_read\_regset}}
\index{proc\_read\_regset@{proc\_read\_regset}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_read\_regset()}{proc\_read\_regset()}}
{\footnotesize\ttfamily static int proc\+\_\+read\+\_\+regset (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{int}]{note,  }\item[{struct iovec $\ast$}]{iov }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00183}{183}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{vfs__syscalls_8c_source_l02423}{buf}}, \mbox{\hyperlink{kern__malloc_8c_source_l00907}{free()}}, \mbox{\hyperlink{kern__malloc_8c_source_l00632}{malloc()}}, \mbox{\hyperlink{sys__process_8c_source_l00074}{PROC\+\_\+\+ASSERT\+\_\+\+TRACEREQ}}, and \mbox{\hyperlink{sys__process_8c_source_l00160}{proc\+\_\+find\+\_\+regset()}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a5c0e28efd9d685a10debbb917066ce68_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a5c0e28efd9d685a10debbb917066ce68_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_a3bfde23d6fbad61aca7b53ed6b7b8260}\label{sys__process_8c_a3bfde23d6fbad61aca7b53ed6b7b8260}} 
\index{sys\_process.c@{sys\_process.c}!proc\_readmem@{proc\_readmem}}
\index{proc\_readmem@{proc\_readmem}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_readmem()}{proc\_readmem()}}
{\footnotesize\ttfamily ssize\+\_\+t proc\+\_\+readmem (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct proc $\ast$}]{p,  }\item[{vm\+\_\+offset\+\_\+t}]{va,  }\item[{void $\ast$}]{buf,  }\item[{size\+\_\+t}]{len }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00444}{444}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{vfs__syscalls_8c_source_l02423}{buf}}, and \mbox{\hyperlink{sys__process_8c_source_l00418}{proc\+\_\+iop()}}.



Referenced by \mbox{\hyperlink{kern__proc_8c_source_l01903}{get\+\_\+proc\+\_\+vector()}}, \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}, and \mbox{\hyperlink{kern__proc_8c_source_l01803}{proc\+\_\+read\+\_\+string()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a3bfde23d6fbad61aca7b53ed6b7b8260_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a3bfde23d6fbad61aca7b53ed6b7b8260_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_a08981da15cff0e19c1aa1ec2389640ed}\label{sys__process_8c_a08981da15cff0e19c1aa1ec2389640ed}} 
\index{sys\_process.c@{sys\_process.c}!proc\_rwmem@{proc\_rwmem}}
\index{proc\_rwmem@{proc\_rwmem}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_rwmem()}{proc\_rwmem()}}
{\footnotesize\ttfamily int proc\+\_\+rwmem (\begin{DoxyParamCaption}\item[{struct proc $\ast$}]{p,  }\item[{struct uio $\ast$}]{uio }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00331}{331}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}, and \mbox{\hyperlink{sys__process_8c_source_l00418}{proc\+\_\+iop()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a08981da15cff0e19c1aa1ec2389640ed_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_aef8b99819717960dc631e17afa3d2c73}\label{sys__process_8c_aef8b99819717960dc631e17afa3d2c73}} 
\index{sys\_process.c@{sys\_process.c}!proc\_set\_traced@{proc\_set\_traced}}
\index{proc\_set\_traced@{proc\_set\_traced}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_set\_traced()}{proc\_set\_traced()}}
{\footnotesize\ttfamily void proc\+\_\+set\+\_\+traced (\begin{DoxyParamCaption}\item[{struct proc $\ast$}]{p,  }\item[{bool}]{stop }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00734}{734}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{kern__proc_8c_source_l00135}{proctree\+\_\+lock}}, and \mbox{\hyperlink{linker__if_8m_source_l00099}{stop}}.



Referenced by \mbox{\hyperlink{kern__fork_8c_source_l00369}{do\+\_\+fork()}}, and \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_aef8b99819717960dc631e17afa3d2c73_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_af34be7a9d70ffc4b579e941beb261222}\label{sys__process_8c_af34be7a9d70ffc4b579e941beb261222}} 
\index{sys\_process.c@{sys\_process.c}!proc\_sstep@{proc\_sstep}}
\index{proc\_sstep@{proc\_sstep}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_sstep()}{proc\_sstep()}}
{\footnotesize\ttfamily int proc\+\_\+sstep (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00324}{324}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{sys__process_8c_source_l00102}{PROC\+\_\+\+ACTION}}.

\mbox{\Hypertarget{sys__process_8c_a4ece99362aefe1a8c0c9432ef5207ab8}\label{sys__process_8c_a4ece99362aefe1a8c0c9432ef5207ab8}} 
\index{sys\_process.c@{sys\_process.c}!proc\_write\_dbregs@{proc\_write\_dbregs}}
\index{proc\_write\_dbregs@{proc\_write\_dbregs}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_write\_dbregs()}{proc\_write\_dbregs()}}
{\footnotesize\ttfamily int proc\+\_\+write\+\_\+dbregs (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct dbreg $\ast$}]{dbregs }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00135}{135}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{sys__process_8c_source_l00102}{PROC\+\_\+\+ACTION}}.

\mbox{\Hypertarget{sys__process_8c_ad76849a1c7ada50ae0f10e49f7a92511}\label{sys__process_8c_ad76849a1c7ada50ae0f10e49f7a92511}} 
\index{sys\_process.c@{sys\_process.c}!proc\_write\_fpregs@{proc\_write\_fpregs}}
\index{proc\_write\_fpregs@{proc\_write\_fpregs}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_write\_fpregs()}{proc\_write\_fpregs()}}
{\footnotesize\ttfamily int proc\+\_\+write\+\_\+fpregs (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct fpreg $\ast$}]{fpregs }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00153}{153}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{sys__process_8c_source_l00102}{PROC\+\_\+\+ACTION}}.

\mbox{\Hypertarget{sys__process_8c_ae9508140ef896f80c97d6cecbb865358}\label{sys__process_8c_ae9508140ef896f80c97d6cecbb865358}} 
\index{sys\_process.c@{sys\_process.c}!proc\_write\_regs@{proc\_write\_regs}}
\index{proc\_write\_regs@{proc\_write\_regs}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_write\_regs()}{proc\_write\_regs()}}
{\footnotesize\ttfamily int proc\+\_\+write\+\_\+regs (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct reg $\ast$}]{regs }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00121}{121}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{sys__process_8c_source_l00102}{PROC\+\_\+\+ACTION}}.

\mbox{\Hypertarget{sys__process_8c_af9ed9ed671d84c77383f0148e84f190e}\label{sys__process_8c_af9ed9ed671d84c77383f0148e84f190e}} 
\index{sys\_process.c@{sys\_process.c}!proc\_write\_regset@{proc\_write\_regset}}
\index{proc\_write\_regset@{proc\_write\_regset}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_write\_regset()}{proc\_write\_regset()}}
{\footnotesize\ttfamily static int proc\+\_\+write\+\_\+regset (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{int}]{note,  }\item[{struct iovec $\ast$}]{iov }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00238}{238}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{vfs__syscalls_8c_source_l02423}{buf}}, \mbox{\hyperlink{kern__malloc_8c_source_l00907}{free()}}, \mbox{\hyperlink{kern__malloc_8c_source_l00632}{malloc()}}, \mbox{\hyperlink{sys__process_8c_source_l00074}{PROC\+\_\+\+ASSERT\+\_\+\+TRACEREQ}}, and \mbox{\hyperlink{sys__process_8c_source_l00160}{proc\+\_\+find\+\_\+regset()}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_af9ed9ed671d84c77383f0148e84f190e_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_af9ed9ed671d84c77383f0148e84f190e_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_a56c42e43a0f514efe9c37d07aef14541}\label{sys__process_8c_a56c42e43a0f514efe9c37d07aef14541}} 
\index{sys\_process.c@{sys\_process.c}!proc\_writemem@{proc\_writemem}}
\index{proc\_writemem@{proc\_writemem}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{proc\_writemem()}{proc\_writemem()}}
{\footnotesize\ttfamily ssize\+\_\+t proc\+\_\+writemem (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct proc $\ast$}]{p,  }\item[{vm\+\_\+offset\+\_\+t}]{va,  }\item[{void $\ast$}]{buf,  }\item[{size\+\_\+t}]{len }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00452}{452}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{vfs__syscalls_8c_source_l02423}{buf}}, and \mbox{\hyperlink{sys__process_8c_source_l00418}{proc\+\_\+iop()}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a56c42e43a0f514efe9c37d07aef14541_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_a56c42e43a0f514efe9c37d07aef14541_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_aba6f0abb6e8e6ef6f46377a9b3ea4804}\label{sys__process_8c_aba6f0abb6e8e6ef6f46377a9b3ea4804}} 
\index{sys\_process.c@{sys\_process.c}!ptrace\_sel\_coredump\_thread@{ptrace\_sel\_coredump\_thread}}
\index{ptrace\_sel\_coredump\_thread@{ptrace\_sel\_coredump\_thread}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{ptrace\_sel\_coredump\_thread()}{ptrace\_sel\_coredump\_thread()}}
{\footnotesize\ttfamily static struct thread $\ast$ ptrace\+\_\+sel\+\_\+coredump\+\_\+thread (\begin{DoxyParamCaption}\item[{struct proc $\ast$}]{p }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00791}{791}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_aba6f0abb6e8e6ef6f46377a9b3ea4804_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_aa89897fd9387e2d0bdfb2ef68578f167}\label{sys__process_8c_aa89897fd9387e2d0bdfb2ef68578f167}} 
\index{sys\_process.c@{sys\_process.c}!ptrace\_unsuspend@{ptrace\_unsuspend}}
\index{ptrace\_unsuspend@{ptrace\_unsuspend}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{ptrace\_unsuspend()}{ptrace\_unsuspend()}}
{\footnotesize\ttfamily void ptrace\+\_\+unsuspend (\begin{DoxyParamCaption}\item[{struct proc $\ast$}]{p }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00746}{746}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{kern__time_8c_source_l00897}{itimer\+\_\+proc\+\_\+continue()}}, \mbox{\hyperlink{kern__event_8c_source_l00699}{kqtimer\+\_\+proc\+\_\+continue()}}, and \mbox{\hyperlink{kern__thread_8c_source_l01590}{thread\+\_\+unsuspend()}}.



Referenced by \mbox{\hyperlink{kern__exit_8c_source_l00222}{exit1()}}, and \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_aa89897fd9387e2d0bdfb2ef68578f167_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_aa89897fd9387e2d0bdfb2ef68578f167_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_aa44894c4194003c9926b2a158a9ef6da}\label{sys__process_8c_aa44894c4194003c9926b2a158a9ef6da}} 
\index{sys\_process.c@{sys\_process.c}!ptrace\_vm\_entry@{ptrace\_vm\_entry}}
\index{ptrace\_vm\_entry@{ptrace\_vm\_entry}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{ptrace\_vm\_entry()}{ptrace\_vm\_entry()}}
{\footnotesize\ttfamily static int ptrace\+\_\+vm\+\_\+entry (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct proc $\ast$}]{p,  }\item[{struct ptrace\+\_\+vm\+\_\+entry $\ast$}]{pve }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00460}{460}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{kern__malloc_8c_source_l00907}{free()}}, \mbox{\hyperlink{vfs__cache_8c_source_l03170}{vn\+\_\+fullpath()}}, \mbox{\hyperlink{vfs__subr_8c_source_l03348}{vput()}}, and \mbox{\hyperlink{vfs__subr_8c_source_l03065}{vref()}}.



Referenced by \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}, and \mbox{\hyperlink{sys__process_8c_source_l00584}{sys\+\_\+ptrace()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_aa44894c4194003c9926b2a158a9ef6da_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_aa44894c4194003c9926b2a158a9ef6da_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{sys__process_8c_af355c8cb6efcff3b5149686f75db8a37}\label{sys__process_8c_af355c8cb6efcff3b5149686f75db8a37}} 
\index{sys\_process.c@{sys\_process.c}!sys\_ptrace@{sys\_ptrace}}
\index{sys\_ptrace@{sys\_ptrace}!sys\_process.c@{sys\_process.c}}
\doxysubsubsection{\texorpdfstring{sys\_ptrace()}{sys\_ptrace()}}
{\footnotesize\ttfamily int sys\+\_\+ptrace (\begin{DoxyParamCaption}\item[{struct thread $\ast$}]{td,  }\item[{struct \mbox{\hyperlink{structptrace__args}{ptrace\+\_\+args}} $\ast$}]{uap }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{sys__process_8c_source_l00584}{584}} of file \mbox{\hyperlink{sys__process_8c_source}{sys\+\_\+process.\+c}}.



References \mbox{\hyperlink{msi__if_8m_source_l00089}{addr}}, \mbox{\hyperlink{sys__process_8c_source_l00578}{ptrace\+\_\+args\+::addr}}, \mbox{\hyperlink{kern__prot_8c_source_l02490}{allow\+\_\+ptrace}}, \mbox{\hyperlink{sys__process_8c_source_l00579}{ptrace\+\_\+args\+::data}}, \mbox{\hyperlink{sys__process_8c_source_l00806}{kern\+\_\+ptrace()}}, \mbox{\hyperlink{sys__process_8c_source_l00577}{ptrace\+\_\+args\+::pid}}, \mbox{\hyperlink{kern__sig_8c_source_l02554}{ptrace\+\_\+coredump()}}, \mbox{\hyperlink{sys__process_8c_source_l00460}{ptrace\+\_\+vm\+\_\+entry()}}, and \mbox{\hyperlink{sys__process_8c_source_l00576}{ptrace\+\_\+args\+::req}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d2c/sys__process_8c_af355c8cb6efcff3b5149686f75db8a37_cgraph}
\end{center}
\end{figure}
