\hypertarget{vmci__hashtable_8c}{}\doxysection{dev/vmware/vmci/vmci\+\_\+hashtable.c File Reference}
\label{vmci__hashtable_8c}\index{dev/vmware/vmci/vmci\_hashtable.c@{dev/vmware/vmci/vmci\_hashtable.c}}
{\ttfamily \#include $<$sys/cdefs.\+h$>$}\newline
{\ttfamily \#include \char`\"{}vmci.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}vmci\+\_\+driver.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}vmci\+\_\+hashtable.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}vmci\+\_\+kernel\+\_\+defs.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}vmci\+\_\+utils.\+h\char`\"{}}\newline
Include dependency graph for vmci\+\_\+hashtable.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/de0/vmci__hashtable_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{vmci__hashtable_8c_a721631f31bb99ab98a3c01f3ad1b7b9f}{LGPFX}}~\char`\"{}vmci\+\_\+hashtable\+: \char`\"{}
\item 
\#define \mbox{\hyperlink{vmci__hashtable_8c_a084e1e1d462175781280cfd107c51586}{VMCI\+\_\+\+HASHTABLE\+\_\+\+HASH}}(\+\_\+h,  \+\_\+sz)~ \mbox{\hyperlink{vmci__utils_8h_acd1df75726a754a59b495306dbd07e63}{vmci\+\_\+hash\+\_\+id}}(\mbox{\hyperlink{vmci__defs_8h_a483b8728b44b02d2d20fbcfe60c8eccb}{VMCI\+\_\+\+HANDLE\+\_\+\+TO\+\_\+\+RESOURCE\+\_\+\+ID}}(\+\_\+h), (\+\_\+sz))
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{vmci__hashtable_8c_a8c3ef283470a68cd30afe9b8a72cb60f}{\+\_\+\+\_\+\+FBSDID}} (\char`\"{}\$Free\+BSD\$\char`\"{})
\item 
static int \mbox{\hyperlink{vmci__hashtable_8c_a9ca516a7e0170a9ee611889af06f5ea1}{hashtable\+\_\+unlink\+\_\+entry}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$entry)
\item 
static bool \mbox{\hyperlink{vmci__hashtable_8c_aff6326ff94b39f56f85408aa9669c69c}{vmci\+\_\+hashtable\+\_\+entry\+\_\+exists\+\_\+locked}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}} handle)
\item 
struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$ \mbox{\hyperlink{vmci__hashtable_8c_a27ca180341abf75c3a66e344b2ef2d89}{vmci\+\_\+hashtable\+\_\+create}} (int size)
\item 
void \mbox{\hyperlink{vmci__hashtable_8c_a9411e8731bdd21c00c2f98f986034965}{vmci\+\_\+hashtable\+\_\+destroy}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table)
\item 
void \mbox{\hyperlink{vmci__hashtable_8c_a43733aa071e1affa0d56b3f9c8355316}{vmci\+\_\+hashtable\+\_\+init\+\_\+entry}} (struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$entry, struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}} handle)
\item 
int \mbox{\hyperlink{vmci__hashtable_8c_a2adc6ed8e9c6b8560678773487c7ba65}{vmci\+\_\+hashtable\+\_\+add\+\_\+entry}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$entry)
\item 
int \mbox{\hyperlink{vmci__hashtable_8c_a8d65d2a60fbe2cb6e83d76c193fb3ef6}{vmci\+\_\+hashtable\+\_\+remove\+\_\+entry}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$entry)
\item 
static struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$ \mbox{\hyperlink{vmci__hashtable_8c_a2e26473b8cfcd47dac3798f8d9e2cccf}{vmci\+\_\+hashtable\+\_\+get\+\_\+entry\+\_\+locked}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}} handle)
\item 
struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$ \mbox{\hyperlink{vmci__hashtable_8c_a21d7ea947cb513481ba4107d3574f17a}{vmci\+\_\+hashtable\+\_\+get\+\_\+entry}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}} handle)
\item 
void \mbox{\hyperlink{vmci__hashtable_8c_af3b3e2fd41450d7eb9c4979cf22fcf6a}{vmci\+\_\+hashtable\+\_\+hold\+\_\+entry}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$entry)
\item 
static int \mbox{\hyperlink{vmci__hashtable_8c_a7e706f09bda70e67584cadc2c903563d}{vmci\+\_\+hashtable\+\_\+release\+\_\+entry\+\_\+locked}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$entry)
\item 
int \mbox{\hyperlink{vmci__hashtable_8c_af2436add4f026b367b9bf5a2bc42efe3}{vmci\+\_\+hashtable\+\_\+release\+\_\+entry}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$entry)
\item 
bool \mbox{\hyperlink{vmci__hashtable_8c_a129bde1f5dc6e985cc49967e64180674}{vmci\+\_\+hashtable\+\_\+entry\+\_\+exists}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table, struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}} handle)
\item 
void \mbox{\hyperlink{vmci__hashtable_8c_a96cef52b52ddb068e802045a2db0337e}{vmci\+\_\+hashtable\+\_\+sync}} (struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$table)
\end{DoxyCompactItemize}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{vmci__hashtable_8c_a721631f31bb99ab98a3c01f3ad1b7b9f}\label{vmci__hashtable_8c_a721631f31bb99ab98a3c01f3ad1b7b9f}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!LGPFX@{LGPFX}}
\index{LGPFX@{LGPFX}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{LGPFX}{LGPFX}}
{\footnotesize\ttfamily \#define LGPFX~\char`\"{}vmci\+\_\+hashtable\+: \char`\"{}}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00018}{18}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.

\mbox{\Hypertarget{vmci__hashtable_8c_a084e1e1d462175781280cfd107c51586}\label{vmci__hashtable_8c_a084e1e1d462175781280cfd107c51586}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!VMCI\_HASHTABLE\_HASH@{VMCI\_HASHTABLE\_HASH}}
\index{VMCI\_HASHTABLE\_HASH@{VMCI\_HASHTABLE\_HASH}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{VMCI\_HASHTABLE\_HASH}{VMCI\_HASHTABLE\_HASH}}
{\footnotesize\ttfamily \#define VMCI\+\_\+\+HASHTABLE\+\_\+\+HASH(\begin{DoxyParamCaption}\item[{}]{\+\_\+h,  }\item[{}]{\+\_\+sz }\end{DoxyParamCaption})~ \mbox{\hyperlink{vmci__utils_8h_acd1df75726a754a59b495306dbd07e63}{vmci\+\_\+hash\+\_\+id}}(\mbox{\hyperlink{vmci__defs_8h_a483b8728b44b02d2d20fbcfe60c8eccb}{VMCI\+\_\+\+HANDLE\+\_\+\+TO\+\_\+\+RESOURCE\+\_\+\+ID}}(\+\_\+h), (\+\_\+sz))}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00020}{20}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



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

\mbox{\Hypertarget{vmci__hashtable_8c_a9ca516a7e0170a9ee611889af06f5ea1}\label{vmci__hashtable_8c_a9ca516a7e0170a9ee611889af06f5ea1}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!hashtable\_unlink\_entry@{hashtable\_unlink\_entry}}
\index{hashtable\_unlink\_entry@{hashtable\_unlink\_entry}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{hashtable\_unlink\_entry()}{hashtable\_unlink\_entry()}}
{\footnotesize\ttfamily static int hashtable\+\_\+unlink\+\_\+entry (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$}]{entry }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00509}{509}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00024}{vmci\+\_\+hashtable\+::entries}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00018}{vmci\+\_\+hash\+\_\+entry\+::handle}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00020}{vmci\+\_\+hash\+\_\+entry\+::next}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00026}{vmci\+\_\+hashtable\+::size}}, \mbox{\hyperlink{vmci__defs_8h_source_l00242}{VMCI\+\_\+\+ERROR\+\_\+\+NOT\+\_\+\+FOUND}}, \mbox{\hyperlink{vmci__defs_8h_source_l00156}{VMCI\+\_\+\+HANDLE\+\_\+\+EQUAL}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00020}{VMCI\+\_\+\+HASHTABLE\+\_\+\+HASH}}, and \mbox{\hyperlink{vmci__defs_8h_source_l00221}{VMCI\+\_\+\+SUCCESS}}.



Referenced by \mbox{\hyperlink{vmci__hashtable_8c_source_l00360}{vmci\+\_\+hashtable\+\_\+release\+\_\+entry\+\_\+locked()}}, and \mbox{\hyperlink{vmci__hashtable_8c_source_l00196}{vmci\+\_\+hashtable\+\_\+remove\+\_\+entry()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a9ca516a7e0170a9ee611889af06f5ea1_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a2adc6ed8e9c6b8560678773487c7ba65}\label{vmci__hashtable_8c_a2adc6ed8e9c6b8560678773487c7ba65}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_add\_entry@{vmci\_hashtable\_add\_entry}}
\index{vmci\_hashtable\_add\_entry@{vmci\_hashtable\_add\_entry}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_add\_entry()}{vmci\_hashtable\_add\_entry()}}
{\footnotesize\ttfamily int vmci\+\_\+hashtable\+\_\+add\+\_\+entry (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$}]{entry }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00149}{149}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__defs_8h_source_l00138}{vmci\+\_\+handle\+::context}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00024}{vmci\+\_\+hashtable\+::entries}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00018}{vmci\+\_\+hash\+\_\+entry\+::handle}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00018}{LGPFX}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00020}{vmci\+\_\+hash\+\_\+entry\+::next}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00019}{vmci\+\_\+hash\+\_\+entry\+::ref\+\_\+count}}, \mbox{\hyperlink{vmci__defs_8h_source_l00139}{vmci\+\_\+handle\+::resource}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00026}{vmci\+\_\+hashtable\+::size}}, \mbox{\hyperlink{vmci__defs_8h_source_l00230}{VMCI\+\_\+\+ERROR\+\_\+\+DUPLICATE\+\_\+\+ENTRY}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00466}{vmci\+\_\+hashtable\+\_\+entry\+\_\+exists\+\_\+locked()}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00020}{VMCI\+\_\+\+HASHTABLE\+\_\+\+HASH}}, \mbox{\hyperlink{vmci__driver_8h_source_l00022}{VMCI\+\_\+\+LOG\+\_\+\+DEBUG}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}, and \mbox{\hyperlink{vmci__defs_8h_source_l00221}{VMCI\+\_\+\+SUCCESS}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00165}{vmci\+\_\+resource\+\_\+add()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a2adc6ed8e9c6b8560678773487c7ba65_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a2adc6ed8e9c6b8560678773487c7ba65_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a27ca180341abf75c3a66e344b2ef2d89}\label{vmci__hashtable_8c_a27ca180341abf75c3a66e344b2ef2d89}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_create@{vmci\_hashtable\_create}}
\index{vmci\_hashtable\_create@{vmci\_hashtable\_create}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_create()}{vmci\_hashtable\_create()}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$ vmci\+\_\+hashtable\+\_\+create (\begin{DoxyParamCaption}\item[{int}]{size }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00045}{45}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__hashtable_8h_source_l00024}{vmci\+\_\+hashtable\+::entries}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00026}{vmci\+\_\+hashtable\+::size}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00210}{vmci\+\_\+alloc\+\_\+kernel\+\_\+mem()}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00241}{vmci\+\_\+free\+\_\+kernel\+\_\+mem()}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00046}{vmci\+\_\+init\+\_\+lock()}}, \mbox{\hyperlink{vmci__kernel__if_8h_source_l00022}{VMCI\+\_\+\+MEMORY\+\_\+\+NORMAL}}, and \mbox{\hyperlink{vmci__defs_8h_source_l00221}{VMCI\+\_\+\+SUCCESS}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00046}{vmci\+\_\+resource\+\_\+init()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a27ca180341abf75c3a66e344b2ef2d89_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a27ca180341abf75c3a66e344b2ef2d89_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a9411e8731bdd21c00c2f98f986034965}\label{vmci__hashtable_8c_a9411e8731bdd21c00c2f98f986034965}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_destroy@{vmci\_hashtable\_destroy}}
\index{vmci\_hashtable\_destroy@{vmci\_hashtable\_destroy}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_destroy()}{vmci\_hashtable\_destroy()}}
{\footnotesize\ttfamily void vmci\+\_\+hashtable\+\_\+destroy (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00093}{93}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00024}{vmci\+\_\+hashtable\+::entries}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00026}{vmci\+\_\+hashtable\+::size}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00070}{vmci\+\_\+cleanup\+\_\+lock()}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00241}{vmci\+\_\+free\+\_\+kernel\+\_\+mem()}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, and \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00082}{vmci\+\_\+resource\+\_\+exit()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a9411e8731bdd21c00c2f98f986034965_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a9411e8731bdd21c00c2f98f986034965_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a129bde1f5dc6e985cc49967e64180674}\label{vmci__hashtable_8c_a129bde1f5dc6e985cc49967e64180674}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_entry\_exists@{vmci\_hashtable\_entry\_exists}}
\index{vmci\_hashtable\_entry\_exists@{vmci\_hashtable\_entry\_exists}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_entry\_exists()}{vmci\_hashtable\_entry\_exists()}}
{\footnotesize\ttfamily bool vmci\+\_\+hashtable\+\_\+entry\+\_\+exists (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}}}]{handle }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00435}{435}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00018}{vmci\+\_\+hash\+\_\+entry\+::handle}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00466}{vmci\+\_\+hashtable\+\_\+entry\+\_\+exists\+\_\+locked()}}, and \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00111}{vmci\+\_\+resource\+\_\+get\+\_\+id()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a129bde1f5dc6e985cc49967e64180674_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a129bde1f5dc6e985cc49967e64180674_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_aff6326ff94b39f56f85408aa9669c69c}\label{vmci__hashtable_8c_aff6326ff94b39f56f85408aa9669c69c}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_entry\_exists\_locked@{vmci\_hashtable\_entry\_exists\_locked}}
\index{vmci\_hashtable\_entry\_exists\_locked@{vmci\_hashtable\_entry\_exists\_locked}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_entry\_exists\_locked()}{vmci\_hashtable\_entry\_exists\_locked()}}
{\footnotesize\ttfamily static bool vmci\+\_\+hashtable\+\_\+entry\+\_\+exists\+\_\+locked (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}}}]{handle }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00466}{466}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00024}{vmci\+\_\+hashtable\+::entries}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00018}{vmci\+\_\+hash\+\_\+entry\+::handle}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00020}{vmci\+\_\+hash\+\_\+entry\+::next}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00026}{vmci\+\_\+hashtable\+::size}}, \mbox{\hyperlink{vmci__defs_8h_source_l00152}{VMCI\+\_\+\+HANDLE\+\_\+\+TO\+\_\+\+CONTEXT\+\_\+\+ID}}, \mbox{\hyperlink{vmci__defs_8h_source_l00154}{VMCI\+\_\+\+HANDLE\+\_\+\+TO\+\_\+\+RESOURCE\+\_\+\+ID}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00020}{VMCI\+\_\+\+HASHTABLE\+\_\+\+HASH}}, and \mbox{\hyperlink{vmci__defs_8h_source_l00159}{VMCI\+\_\+\+INVALID\+\_\+\+ID}}.



Referenced by \mbox{\hyperlink{vmci__hashtable_8c_source_l00149}{vmci\+\_\+hashtable\+\_\+add\+\_\+entry()}}, and \mbox{\hyperlink{vmci__hashtable_8c_source_l00435}{vmci\+\_\+hashtable\+\_\+entry\+\_\+exists()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_aff6326ff94b39f56f85408aa9669c69c_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a21d7ea947cb513481ba4107d3574f17a}\label{vmci__hashtable_8c_a21d7ea947cb513481ba4107d3574f17a}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_get\_entry@{vmci\_hashtable\_get\_entry}}
\index{vmci\_hashtable\_get\_entry@{vmci\_hashtable\_get\_entry}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_get\_entry()}{vmci\_hashtable\_get\_entry()}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$ vmci\+\_\+hashtable\+\_\+get\+\_\+entry (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}}}]{handle }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00292}{292}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00018}{vmci\+\_\+hash\+\_\+entry\+::handle}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, \mbox{\hyperlink{vmci__defs_8h_source_l00156}{VMCI\+\_\+\+HANDLE\+\_\+\+EQUAL}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00244}{vmci\+\_\+hashtable\+\_\+get\+\_\+entry\+\_\+locked()}}, \mbox{\hyperlink{vmci__defs_8h_source_l00160}{VMCI\+\_\+\+INVALID\+\_\+\+HANDLE}}, and \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00247}{vmci\+\_\+resource\+\_\+get()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a21d7ea947cb513481ba4107d3574f17a_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a21d7ea947cb513481ba4107d3574f17a_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a2e26473b8cfcd47dac3798f8d9e2cccf}\label{vmci__hashtable_8c_a2e26473b8cfcd47dac3798f8d9e2cccf}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_get\_entry\_locked@{vmci\_hashtable\_get\_entry\_locked}}
\index{vmci\_hashtable\_get\_entry\_locked@{vmci\_hashtable\_get\_entry\_locked}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_get\_entry\_locked()}{vmci\_hashtable\_get\_entry\_locked()}}
{\footnotesize\ttfamily static struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$ vmci\+\_\+hashtable\+\_\+get\+\_\+entry\+\_\+locked (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}}}]{handle }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00244}{244}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00024}{vmci\+\_\+hashtable\+::entries}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00018}{vmci\+\_\+hash\+\_\+entry\+::handle}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00020}{vmci\+\_\+hash\+\_\+entry\+::next}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00019}{vmci\+\_\+hash\+\_\+entry\+::ref\+\_\+count}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00026}{vmci\+\_\+hashtable\+::size}}, \mbox{\hyperlink{vmci__defs_8h_source_l00156}{VMCI\+\_\+\+HANDLE\+\_\+\+EQUAL}}, \mbox{\hyperlink{vmci__defs_8h_source_l00152}{VMCI\+\_\+\+HANDLE\+\_\+\+TO\+\_\+\+CONTEXT\+\_\+\+ID}}, \mbox{\hyperlink{vmci__defs_8h_source_l00154}{VMCI\+\_\+\+HANDLE\+\_\+\+TO\+\_\+\+RESOURCE\+\_\+\+ID}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00020}{VMCI\+\_\+\+HASHTABLE\+\_\+\+HASH}}, \mbox{\hyperlink{vmci__defs_8h_source_l00160}{VMCI\+\_\+\+INVALID\+\_\+\+HANDLE}}, and \mbox{\hyperlink{vmci__defs_8h_source_l00159}{VMCI\+\_\+\+INVALID\+\_\+\+ID}}.



Referenced by \mbox{\hyperlink{vmci__hashtable_8c_source_l00292}{vmci\+\_\+hashtable\+\_\+get\+\_\+entry()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a2e26473b8cfcd47dac3798f8d9e2cccf_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_af3b3e2fd41450d7eb9c4979cf22fcf6a}\label{vmci__hashtable_8c_af3b3e2fd41450d7eb9c4979cf22fcf6a}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_hold\_entry@{vmci\_hashtable\_hold\_entry}}
\index{vmci\_hashtable\_hold\_entry@{vmci\_hashtable\_hold\_entry}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_hold\_entry()}{vmci\_hashtable\_hold\_entry()}}
{\footnotesize\ttfamily void vmci\+\_\+hashtable\+\_\+hold\+\_\+entry (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$}]{entry }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00328}{328}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00019}{vmci\+\_\+hash\+\_\+entry\+::ref\+\_\+count}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, and \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00283}{vmci\+\_\+resource\+\_\+hold()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_af3b3e2fd41450d7eb9c4979cf22fcf6a_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_af3b3e2fd41450d7eb9c4979cf22fcf6a_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a43733aa071e1affa0d56b3f9c8355316}\label{vmci__hashtable_8c_a43733aa071e1affa0d56b3f9c8355316}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_init\_entry@{vmci\_hashtable\_init\_entry}}
\index{vmci\_hashtable\_init\_entry@{vmci\_hashtable\_init\_entry}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_init\_entry()}{vmci\_hashtable\_init\_entry()}}
{\footnotesize\ttfamily void vmci\+\_\+hashtable\+\_\+init\+\_\+entry (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$}]{entry,  }\item[{struct \mbox{\hyperlink{structvmci__handle}{vmci\+\_\+handle}}}]{handle }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00123}{123}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00018}{vmci\+\_\+hash\+\_\+entry\+::handle}}, and \mbox{\hyperlink{vmci__hashtable_8h_source_l00019}{vmci\+\_\+hash\+\_\+entry\+::ref\+\_\+count}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00165}{vmci\+\_\+resource\+\_\+add()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a43733aa071e1affa0d56b3f9c8355316_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_af2436add4f026b367b9bf5a2bc42efe3}\label{vmci__hashtable_8c_af2436add4f026b367b9bf5a2bc42efe3}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_release\_entry@{vmci\_hashtable\_release\_entry}}
\index{vmci\_hashtable\_release\_entry@{vmci\_hashtable\_release\_entry}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_release\_entry()}{vmci\_hashtable\_release\_entry()}}
{\footnotesize\ttfamily int vmci\+\_\+hashtable\+\_\+release\+\_\+entry (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$}]{entry }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00405}{405}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00360}{vmci\+\_\+hashtable\+\_\+release\+\_\+entry\+\_\+locked()}}, and \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00247}{vmci\+\_\+resource\+\_\+get()}}, and \mbox{\hyperlink{vmci__resource_8c_source_l00334}{vmci\+\_\+resource\+\_\+release()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_af2436add4f026b367b9bf5a2bc42efe3_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_af2436add4f026b367b9bf5a2bc42efe3_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a7e706f09bda70e67584cadc2c903563d}\label{vmci__hashtable_8c_a7e706f09bda70e67584cadc2c903563d}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_release\_entry\_locked@{vmci\_hashtable\_release\_entry\_locked}}
\index{vmci\_hashtable\_release\_entry\_locked@{vmci\_hashtable\_release\_entry\_locked}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_release\_entry\_locked()}{vmci\_hashtable\_release\_entry\_locked()}}
{\footnotesize\ttfamily static int vmci\+\_\+hashtable\+\_\+release\+\_\+entry\+\_\+locked (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$}]{entry }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00360}{360}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00509}{hashtable\+\_\+unlink\+\_\+entry()}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00019}{vmci\+\_\+hash\+\_\+entry\+::ref\+\_\+count}}, \mbox{\hyperlink{vmci__defs_8h_source_l00221}{VMCI\+\_\+\+SUCCESS}}, and \mbox{\hyperlink{vmci__defs_8h_source_l00220}{VMCI\+\_\+\+SUCCESS\+\_\+\+ENTRY\+\_\+\+DEAD}}.



Referenced by \mbox{\hyperlink{vmci__hashtable_8c_source_l00405}{vmci\+\_\+hashtable\+\_\+release\+\_\+entry()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a7e706f09bda70e67584cadc2c903563d_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a7e706f09bda70e67584cadc2c903563d_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a8d65d2a60fbe2cb6e83d76c193fb3ef6}\label{vmci__hashtable_8c_a8d65d2a60fbe2cb6e83d76c193fb3ef6}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_remove\_entry@{vmci\_hashtable\_remove\_entry}}
\index{vmci\_hashtable\_remove\_entry@{vmci\_hashtable\_remove\_entry}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_remove\_entry()}{vmci\_hashtable\_remove\_entry()}}
{\footnotesize\ttfamily int vmci\+\_\+hashtable\+\_\+remove\+\_\+entry (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table,  }\item[{struct \mbox{\hyperlink{structvmci__hash__entry}{vmci\+\_\+hash\+\_\+entry}} $\ast$}]{entry }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00196}{196}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8c_source_l00509}{hashtable\+\_\+unlink\+\_\+entry()}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00019}{vmci\+\_\+hash\+\_\+entry\+::ref\+\_\+count}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}, \mbox{\hyperlink{vmci__defs_8h_source_l00221}{VMCI\+\_\+\+SUCCESS}}, and \mbox{\hyperlink{vmci__defs_8h_source_l00220}{VMCI\+\_\+\+SUCCESS\+\_\+\+ENTRY\+\_\+\+DEAD}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00214}{vmci\+\_\+resource\+\_\+remove()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a8d65d2a60fbe2cb6e83d76c193fb3ef6_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a8d65d2a60fbe2cb6e83d76c193fb3ef6_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{vmci__hashtable_8c_a96cef52b52ddb068e802045a2db0337e}\label{vmci__hashtable_8c_a96cef52b52ddb068e802045a2db0337e}} 
\index{vmci\_hashtable.c@{vmci\_hashtable.c}!vmci\_hashtable\_sync@{vmci\_hashtable\_sync}}
\index{vmci\_hashtable\_sync@{vmci\_hashtable\_sync}!vmci\_hashtable.c@{vmci\_hashtable.c}}
\doxysubsubsection{\texorpdfstring{vmci\_hashtable\_sync()}{vmci\_hashtable\_sync()}}
{\footnotesize\ttfamily void vmci\+\_\+hashtable\+\_\+sync (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structvmci__hashtable}{vmci\+\_\+hashtable}} $\ast$}]{table }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{vmci__hashtable_8c_source_l00561}{561}} of file \mbox{\hyperlink{vmci__hashtable_8c_source}{vmci\+\_\+hashtable.\+c}}.



References \mbox{\hyperlink{vmci__kernel__defs_8h_source_l00019}{ASSERT}}, \mbox{\hyperlink{vmci__hashtable_8h_source_l00027}{vmci\+\_\+hashtable\+::lock}}, \mbox{\hyperlink{vmci__kernel__if_8c_source_l00140}{vmci\+\_\+grab\+\_\+lock\+\_\+bh()}}, and \mbox{\hyperlink{vmci__kernel__if_8c_source_l00163}{vmci\+\_\+release\+\_\+lock\+\_\+bh()}}.



Referenced by \mbox{\hyperlink{vmci__resource_8c_source_l00394}{vmci\+\_\+resource\+\_\+sync()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a96cef52b52ddb068e802045a2db0337e_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d0/d08/vmci__hashtable_8c_a96cef52b52ddb068e802045a2db0337e_icgraph}
\end{center}
\end{figure}
