\hypertarget{structg__concat__softc}{}\doxysection{g\+\_\+concat\+\_\+softc Struct Reference}
\label{structg__concat__softc}\index{g\_concat\_softc@{g\_concat\_softc}}


{\ttfamily \#include $<$g\+\_\+concat.\+h$>$}



Collaboration diagram for g\+\_\+concat\+\_\+softc\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=242pt]{d4/da5/structg__concat__softc__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{structg__concat__softc_ac05c9e7395fb0a160b29613b61f14562}{TAILQ\+\_\+\+HEAD}} (g\+\_\+concat\+\_\+disks, \mbox{\hyperlink{structg__concat__disk}{g\+\_\+concat\+\_\+disk}}) sc\+\_\+disks
\end{DoxyCompactItemize}
\doxysubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
u\+\_\+int \mbox{\hyperlink{structg__concat__softc_a6d04f19d26f671c30aaf9ae0034b8ab2}{sc\+\_\+type}}
\item 
struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$ \mbox{\hyperlink{structg__concat__softc_aab1e9beae63d526b8c9173482ef54470}{sc\+\_\+geom}}
\item 
struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$ \mbox{\hyperlink{structg__concat__softc_a292ecd6fd28b7608d891274393d4e57e}{sc\+\_\+provider}}
\item 
uint32\+\_\+t \mbox{\hyperlink{structg__concat__softc_aabf9c0261119bcd2e55baf309e214fce}{sc\+\_\+id}}
\item 
uint16\+\_\+t \mbox{\hyperlink{structg__concat__softc_aa192b79a8cb5c29602248f577c2f577a}{sc\+\_\+ndisks}}
\item 
struct mtx \mbox{\hyperlink{structg__concat__softc_a8538ff5f2236dc8a3b63ad57a0671498}{sc\+\_\+completion\+\_\+lock}}
\item 
struct sx \mbox{\hyperlink{structg__concat__softc_a069575e0ea0c19d13d83285112d841df}{sc\+\_\+disks\+\_\+lock}}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


Definition at line \mbox{\hyperlink{g__concat_8h_source_l00068}{68}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{structg__concat__softc_ac05c9e7395fb0a160b29613b61f14562}\label{structg__concat__softc_ac05c9e7395fb0a160b29613b61f14562}} 
\index{g\_concat\_softc@{g\_concat\_softc}!TAILQ\_HEAD@{TAILQ\_HEAD}}
\index{TAILQ\_HEAD@{TAILQ\_HEAD}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{TAILQ\_HEAD()}{TAILQ\_HEAD()}}
{\footnotesize\ttfamily g\+\_\+concat\+\_\+softc\+::\+TAILQ\+\_\+\+HEAD (\begin{DoxyParamCaption}\item[{g\+\_\+concat\+\_\+disks}]{,  }\item[{\mbox{\hyperlink{structg__concat__disk}{g\+\_\+concat\+\_\+disk}}}]{ }\end{DoxyParamCaption})}



\doxysubsection{Field Documentation}
\mbox{\Hypertarget{structg__concat__softc_a8538ff5f2236dc8a3b63ad57a0671498}\label{structg__concat__softc_a8538ff5f2236dc8a3b63ad57a0671498}} 
\index{g\_concat\_softc@{g\_concat\_softc}!sc\_completion\_lock@{sc\_completion\_lock}}
\index{sc\_completion\_lock@{sc\_completion\_lock}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{sc\_completion\_lock}{sc\_completion\_lock}}
{\footnotesize\ttfamily struct mtx g\+\_\+concat\+\_\+softc\+::sc\+\_\+completion\+\_\+lock}



Definition at line \mbox{\hyperlink{g__concat_8h_source_l00077}{77}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, and \mbox{\hyperlink{g__concat_8c_source_l00269}{g\+\_\+concat\+\_\+done()}}.

\mbox{\Hypertarget{structg__concat__softc_a069575e0ea0c19d13d83285112d841df}\label{structg__concat__softc_a069575e0ea0c19d13d83285112d841df}} 
\index{g\_concat\_softc@{g\_concat\_softc}!sc\_disks\_lock@{sc\_disks\_lock}}
\index{sc\_disks\_lock@{sc\_disks\_lock}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{sc\_disks\_lock}{sc\_disks\_lock}}
{\footnotesize\ttfamily struct sx g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}



Definition at line \mbox{\hyperlink{g__concat_8h_source_l00078}{78}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00174}{g\+\_\+concat\+\_\+access()}}, \mbox{\hyperlink{g__concat_8c_source_l00531}{g\+\_\+concat\+\_\+add\+\_\+disk()}}, \mbox{\hyperlink{g__concat_8c_source_l00218}{g\+\_\+concat\+\_\+candelete()}}, \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, \mbox{\hyperlink{g__concat_8c_source_l01221}{g\+\_\+concat\+\_\+dumpconf()}}, \mbox{\hyperlink{g__concat_8c_source_l00993}{g\+\_\+concat\+\_\+find\+\_\+disk()}}, \mbox{\hyperlink{g__concat_8c_source_l00104}{g\+\_\+concat\+\_\+nvalid()}}, \mbox{\hyperlink{g__concat_8c_source_l00293}{g\+\_\+concat\+\_\+passdown()}}, and \mbox{\hyperlink{g__concat_8c_source_l00327}{g\+\_\+concat\+\_\+start()}}.

\mbox{\Hypertarget{structg__concat__softc_aab1e9beae63d526b8c9173482ef54470}\label{structg__concat__softc_aab1e9beae63d526b8c9173482ef54470}} 
\index{g\_concat\_softc@{g\_concat\_softc}!sc\_geom@{sc\_geom}}
\index{sc\_geom@{sc\_geom}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{sc\_geom}{sc\_geom}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}}$\ast$ g\+\_\+concat\+\_\+softc\+::sc\+\_\+geom}



Definition at line \mbox{\hyperlink{g__concat_8h_source_l00070}{70}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00531}{g\+\_\+concat\+\_\+add\+\_\+disk()}}, \mbox{\hyperlink{g__concat_8c_source_l00442}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run()}}, \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, and \mbox{\hyperlink{g__concat_8c_source_l00121}{g\+\_\+concat\+\_\+remove\+\_\+disk()}}.

\mbox{\Hypertarget{structg__concat__softc_aabf9c0261119bcd2e55baf309e214fce}\label{structg__concat__softc_aabf9c0261119bcd2e55baf309e214fce}} 
\index{g\_concat\_softc@{g\_concat\_softc}!sc\_id@{sc\_id}}
\index{sc\_id@{sc\_id}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{sc\_id}{sc\_id}}
{\footnotesize\ttfamily uint32\+\_\+t g\+\_\+concat\+\_\+softc\+::sc\+\_\+id}



Definition at line \mbox{\hyperlink{g__concat_8h_source_l00072}{72}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00531}{g\+\_\+concat\+\_\+add\+\_\+disk()}}, \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l01221}{g\+\_\+concat\+\_\+dumpconf()}}, \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}, and \mbox{\hyperlink{g__concat_8c_source_l01012}{g\+\_\+concat\+\_\+write\+\_\+metadata()}}.

\mbox{\Hypertarget{structg__concat__softc_aa192b79a8cb5c29602248f577c2f577a}\label{structg__concat__softc_aa192b79a8cb5c29602248f577c2f577a}} 
\index{g\_concat\_softc@{g\_concat\_softc}!sc\_ndisks@{sc\_ndisks}}
\index{sc\_ndisks@{sc\_ndisks}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{sc\_ndisks}{sc\_ndisks}}
{\footnotesize\ttfamily uint16\+\_\+t g\+\_\+concat\+\_\+softc\+::sc\+\_\+ndisks}



Definition at line \mbox{\hyperlink{g__concat_8h_source_l00074}{74}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00531}{g\+\_\+concat\+\_\+add\+\_\+disk()}}, \mbox{\hyperlink{g__concat_8c_source_l00442}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run()}}, \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}, \mbox{\hyperlink{g__concat_8c_source_l01221}{g\+\_\+concat\+\_\+dumpconf()}}, and \mbox{\hyperlink{g__concat_8c_source_l01012}{g\+\_\+concat\+\_\+write\+\_\+metadata()}}.

\mbox{\Hypertarget{structg__concat__softc_a292ecd6fd28b7608d891274393d4e57e}\label{structg__concat__softc_a292ecd6fd28b7608d891274393d4e57e}} 
\index{g\_concat\_softc@{g\_concat\_softc}!sc\_provider@{sc\_provider}}
\index{sc\_provider@{sc\_provider}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{sc\_provider}{sc\_provider}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}}$\ast$ g\+\_\+concat\+\_\+softc\+::sc\+\_\+provider}



Definition at line \mbox{\hyperlink{g__concat_8h_source_l00071}{71}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00442}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run()}}, \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, \mbox{\hyperlink{g__concat_8c_source_l01221}{g\+\_\+concat\+\_\+dumpconf()}}, and \mbox{\hyperlink{g__concat_8c_source_l00121}{g\+\_\+concat\+\_\+remove\+\_\+disk()}}.

\mbox{\Hypertarget{structg__concat__softc_a6d04f19d26f671c30aaf9ae0034b8ab2}\label{structg__concat__softc_a6d04f19d26f671c30aaf9ae0034b8ab2}} 
\index{g\_concat\_softc@{g\_concat\_softc}!sc\_type@{sc\_type}}
\index{sc\_type@{sc\_type}!g\_concat\_softc@{g\_concat\_softc}}
\doxysubsubsection{\texorpdfstring{sc\_type}{sc\_type}}
{\footnotesize\ttfamily u\+\_\+int g\+\_\+concat\+\_\+softc\+::sc\+\_\+type}



Definition at line \mbox{\hyperlink{g__concat_8h_source_l00069}{69}} of file \mbox{\hyperlink{g__concat_8h_source}{g\+\_\+concat.\+h}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00531}{g\+\_\+concat\+\_\+add\+\_\+disk()}}, \mbox{\hyperlink{g__concat_8c_source_l00442}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run()}}, \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}, \mbox{\hyperlink{g__concat_8c_source_l01221}{g\+\_\+concat\+\_\+dumpconf()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
geom/concat/\mbox{\hyperlink{g__concat_8h}{g\+\_\+concat.\+h}}\end{DoxyCompactItemize}
