\hypertarget{mpool__sm_8h}{\section{ompi/mca/mpool/sm/mpool\+\_\+sm.h File Reference}
\label{mpool__sm_8h}\index{ompi/mca/mpool/sm/mpool\+\_\+sm.\+h@{ompi/mca/mpool/sm/mpool\+\_\+sm.\+h}}
}
{\ttfamily \#include \char`\"{}ompi\+\_\+config.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/mca/event/event.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}ompi/mca/common/sm/common\+\_\+sm.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}ompi/mca/mpool/mpool.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}ompi/mca/allocator/allocator.\+h\char`\"{}}\\*
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structmca__mpool__sm__component__t}{mca\+\_\+mpool\+\_\+sm\+\_\+component\+\_\+t}
\item 
struct \hyperlink{structmca__mpool__base__resources__t}{mca\+\_\+mpool\+\_\+base\+\_\+resources\+\_\+t}
\item 
struct \hyperlink{structmca__mpool__sm__module__t}{mca\+\_\+mpool\+\_\+sm\+\_\+module\+\_\+t}
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{mpool__sm_8h_aa4053540ac218daa070ecabce7c9c33d}{typedef struct \\*
\hyperlink{structmca__mpool__sm__component__t}{mca\+\_\+mpool\+\_\+sm\+\_\+component\+\_\+t} {\bfseries mca\+\_\+mpool\+\_\+sm\+\_\+component\+\_\+t}}\label{mpool__sm_8h_aa4053540ac218daa070ecabce7c9c33d}

\item 
\hypertarget{mpool__sm_8h_abe2543f9d9269943115f49523f1d3539}{typedef struct \\*
\hyperlink{structmca__mpool__base__resources__t}{mca\+\_\+mpool\+\_\+base\+\_\+resources\+\_\+t} {\bfseries mca\+\_\+mpool\+\_\+base\+\_\+resources\+\_\+t}}\label{mpool__sm_8h_abe2543f9d9269943115f49523f1d3539}

\item 
\hypertarget{mpool__sm_8h_ab6c912a771db851e5b705a8ba97d4876}{typedef struct \\*
\hyperlink{structmca__mpool__sm__module__t}{mca\+\_\+mpool\+\_\+sm\+\_\+module\+\_\+t} {\bfseries mca\+\_\+mpool\+\_\+sm\+\_\+module\+\_\+t}}\label{mpool__sm_8h_ab6c912a771db851e5b705a8ba97d4876}

\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{mpool__sm_8h_ade9ec99b42a3a2611887acc5477f9e00}{void {\bfseries mca\+\_\+mpool\+\_\+sm\+\_\+module\+\_\+init} (\hyperlink{structmca__mpool__sm__module__t}{mca\+\_\+mpool\+\_\+sm\+\_\+module\+\_\+t} $\ast$mpool)}\label{mpool__sm_8h_ade9ec99b42a3a2611887acc5477f9e00}

\item 
\hypertarget{mpool__sm_8h_a12d0b2b50ccfb60102be4a3f44eed7f8}{void $\ast$ {\bfseries mca\+\_\+mpool\+\_\+sm\+\_\+base} (\hyperlink{structmca__mpool__base__module__t}{mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t} $\ast$)}\label{mpool__sm_8h_a12d0b2b50ccfb60102be4a3f44eed7f8}

\item 
void $\ast$ \hyperlink{mpool__sm_8h_a21b98650f5c5ad7cbe6121d3603bad3b}{mca\+\_\+mpool\+\_\+sm\+\_\+alloc} (\hyperlink{structmca__mpool__base__module__t}{mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t} $\ast$mpool, size\+\_\+t size, size\+\_\+t align, uint32\+\_\+t flags, \hyperlink{structmca__mpool__base__registration__t}{mca\+\_\+mpool\+\_\+base\+\_\+registration\+\_\+t} $\ast$$\ast$registration)
\begin{DoxyCompactList}\small\item\em Allocate block of shared memory. \end{DoxyCompactList}\item 
void $\ast$ \hyperlink{mpool__sm_8h_ae8f581688a4d599ad092fd1d5c04ab04}{mca\+\_\+mpool\+\_\+sm\+\_\+realloc} (\hyperlink{structmca__mpool__base__module__t}{mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t} $\ast$mpool, void $\ast$addr, size\+\_\+t size, \hyperlink{structmca__mpool__base__registration__t}{mca\+\_\+mpool\+\_\+base\+\_\+registration\+\_\+t} $\ast$$\ast$registration)
\begin{DoxyCompactList}\small\item\em realloc function typedef \end{DoxyCompactList}\item 
void \hyperlink{mpool__sm_8h_a37ed9809371c64df6a6bc5c8b3bff4f2}{mca\+\_\+mpool\+\_\+sm\+\_\+free} (\hyperlink{structmca__mpool__base__module__t}{mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t} $\ast$mpool, void $\ast$addr, \hyperlink{structmca__mpool__base__registration__t}{mca\+\_\+mpool\+\_\+base\+\_\+registration\+\_\+t} $\ast$registration)
\begin{DoxyCompactList}\small\item\em free function typedef \end{DoxyCompactList}\item 
int \hyperlink{mpool__sm_8h_a9865236792f93b4e782bb94cfe456564}{mca\+\_\+mpool\+\_\+sm\+\_\+ft\+\_\+event} (int state)
\begin{DoxyCompactList}\small\item\em Fault Tolerance Event Notification \hyperlink{structFunction}{Function}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hypertarget{mpool__sm_8h_ae5d45ea8d1a8e4ac0589d13571dcf1da}{O\+M\+P\+I\+\_\+\+M\+O\+D\+U\+L\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C \\*
\hyperlink{structmca__mpool__sm__component__t}{mca\+\_\+mpool\+\_\+sm\+\_\+component\+\_\+t} {\bfseries mca\+\_\+mpool\+\_\+sm\+\_\+component}}\label{mpool__sm_8h_ae5d45ea8d1a8e4ac0589d13571dcf1da}

\end{DoxyCompactItemize}


\subsection{Function Documentation}
\hypertarget{mpool__sm_8h_a21b98650f5c5ad7cbe6121d3603bad3b}{\index{mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}!mca\+\_\+mpool\+\_\+sm\+\_\+alloc@{mca\+\_\+mpool\+\_\+sm\+\_\+alloc}}
\index{mca\+\_\+mpool\+\_\+sm\+\_\+alloc@{mca\+\_\+mpool\+\_\+sm\+\_\+alloc}!mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}}
\subsubsection[{mca\+\_\+mpool\+\_\+sm\+\_\+alloc}]{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ mca\+\_\+mpool\+\_\+sm\+\_\+alloc (
\begin{DoxyParamCaption}
\item[{{\bf mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t} $\ast$}]{mpool, }
\item[{size\+\_\+t}]{size, }
\item[{size\+\_\+t}]{align, }
\item[{uint32\+\_\+t}]{flags, }
\item[{{\bf mca\+\_\+mpool\+\_\+base\+\_\+registration\+\_\+t} $\ast$$\ast$}]{registration}
\end{DoxyParamCaption}
)}}\label{mpool__sm_8h_a21b98650f5c5ad7cbe6121d3603bad3b}


Allocate block of shared memory. 

Allocate block of shared memory. 

References mca\+\_\+allocator\+\_\+base\+\_\+module\+\_\+t\+::alc\+\_\+alloc, opal\+\_\+maffinity\+\_\+base\+\_\+segment\+\_\+t\+::mbs\+\_\+len, opal\+\_\+maffinity\+\_\+base\+\_\+segment\+\_\+t\+::mbs\+\_\+start\+\_\+addr, mca\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t\+::mca\+\_\+component\+\_\+name, mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t\+::mpool\+\_\+component, and mca\+\_\+mpool\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t\+::mpool\+\_\+version.

\hypertarget{mpool__sm_8h_a37ed9809371c64df6a6bc5c8b3bff4f2}{\index{mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}!mca\+\_\+mpool\+\_\+sm\+\_\+free@{mca\+\_\+mpool\+\_\+sm\+\_\+free}}
\index{mca\+\_\+mpool\+\_\+sm\+\_\+free@{mca\+\_\+mpool\+\_\+sm\+\_\+free}!mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}}
\subsubsection[{mca\+\_\+mpool\+\_\+sm\+\_\+free}]{\setlength{\rightskip}{0pt plus 5cm}void mca\+\_\+mpool\+\_\+sm\+\_\+free (
\begin{DoxyParamCaption}
\item[{{\bf mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t} $\ast$}]{mpool, }
\item[{void $\ast$}]{addr, }
\item[{{\bf mca\+\_\+mpool\+\_\+base\+\_\+registration\+\_\+t} $\ast$}]{registration}
\end{DoxyParamCaption}
)}}\label{mpool__sm_8h_a37ed9809371c64df6a6bc5c8b3bff4f2}


free function typedef 

free function typedef 

References mca\+\_\+allocator\+\_\+base\+\_\+module\+\_\+t\+::alc\+\_\+free.

\hypertarget{mpool__sm_8h_a9865236792f93b4e782bb94cfe456564}{\index{mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}!mca\+\_\+mpool\+\_\+sm\+\_\+ft\+\_\+event@{mca\+\_\+mpool\+\_\+sm\+\_\+ft\+\_\+event}}
\index{mca\+\_\+mpool\+\_\+sm\+\_\+ft\+\_\+event@{mca\+\_\+mpool\+\_\+sm\+\_\+ft\+\_\+event}!mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}}
\subsubsection[{mca\+\_\+mpool\+\_\+sm\+\_\+ft\+\_\+event}]{\setlength{\rightskip}{0pt plus 5cm}int mca\+\_\+mpool\+\_\+sm\+\_\+ft\+\_\+event (
\begin{DoxyParamCaption}
\item[{int}]{state}
\end{DoxyParamCaption}
)}}\label{mpool__sm_8h_a9865236792f93b4e782bb94cfe456564}


Fault Tolerance Event Notification \hyperlink{structFunction}{Function}. 


\begin{DoxyParams}{Parameters}
{\em state} & Checkpoint Stae \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
O\+M\+P\+I\+\_\+\+S\+U\+C\+C\+E\+S\+S or failure status 
\end{DoxyReturn}
\hypertarget{mpool__sm_8h_ae8f581688a4d599ad092fd1d5c04ab04}{\index{mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}!mca\+\_\+mpool\+\_\+sm\+\_\+realloc@{mca\+\_\+mpool\+\_\+sm\+\_\+realloc}}
\index{mca\+\_\+mpool\+\_\+sm\+\_\+realloc@{mca\+\_\+mpool\+\_\+sm\+\_\+realloc}!mpool\+\_\+sm.\+h@{mpool\+\_\+sm.\+h}}
\subsubsection[{mca\+\_\+mpool\+\_\+sm\+\_\+realloc}]{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ mca\+\_\+mpool\+\_\+sm\+\_\+realloc (
\begin{DoxyParamCaption}
\item[{{\bf mca\+\_\+mpool\+\_\+base\+\_\+module\+\_\+t} $\ast$}]{mpool, }
\item[{void $\ast$}]{addr, }
\item[{size\+\_\+t}]{size, }
\item[{{\bf mca\+\_\+mpool\+\_\+base\+\_\+registration\+\_\+t} $\ast$$\ast$}]{registration}
\end{DoxyParamCaption}
)}}\label{mpool__sm_8h_ae8f581688a4d599ad092fd1d5c04ab04}


realloc function typedef 

realloc function typedef 

References mca\+\_\+allocator\+\_\+base\+\_\+module\+\_\+t\+::alc\+\_\+realloc, opal\+\_\+maffinity\+\_\+base\+\_\+segment\+\_\+t\+::mbs\+\_\+len, and opal\+\_\+maffinity\+\_\+base\+\_\+segment\+\_\+t\+::mbs\+\_\+start\+\_\+addr.

