\hypertarget{g__concat_8c}{}\doxysection{geom/concat/g\+\_\+concat.c File Reference}
\label{g__concat_8c}\index{geom/concat/g\_concat.c@{geom/concat/g\_concat.c}}
{\ttfamily \#include $<$sys/cdefs.\+h$>$}\newline
{\ttfamily \#include $<$sys/param.\+h$>$}\newline
{\ttfamily \#include $<$sys/systm.\+h$>$}\newline
{\ttfamily \#include $<$sys/kernel.\+h$>$}\newline
{\ttfamily \#include $<$sys/module.\+h$>$}\newline
{\ttfamily \#include $<$sys/lock.\+h$>$}\newline
{\ttfamily \#include $<$sys/mutex.\+h$>$}\newline
{\ttfamily \#include $<$sys/sx.\+h$>$}\newline
{\ttfamily \#include $<$sys/bio.\+h$>$}\newline
{\ttfamily \#include $<$sys/sbuf.\+h$>$}\newline
{\ttfamily \#include $<$sys/sysctl.\+h$>$}\newline
{\ttfamily \#include $<$sys/malloc.\+h$>$}\newline
{\ttfamily \#include $<$geom/geom.\+h$>$}\newline
{\ttfamily \#include $<$geom/geom\+\_\+dbg.\+h$>$}\newline
{\ttfamily \#include $<$geom/concat/g\+\_\+concat.\+h$>$}\newline
Include dependency graph for g\+\_\+concat.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d6/d4f/g__concat_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{g__concat_8c_a8c3ef283470a68cd30afe9b8a72cb60f}{\+\_\+\+\_\+\+FBSDID}} (\char`\"{}\$Free\+BSD\$\char`\"{})
\item 
\mbox{\hyperlink{g__concat_8c_acb778b785c487ccb4f197a75f6207720}{FEATURE}} (geom\+\_\+concat, \char`\"{}GEOM concatenation support\char`\"{})
\item 
static \mbox{\hyperlink{g__concat_8c_a03e269246c9cb790b5f48584d1a7fef4}{MALLOC\+\_\+\+DEFINE}} (M\+\_\+\+CONCAT, \char`\"{}concat\+\_\+data\char`\"{}, \char`\"{}GEOM\+\_\+\+CONCAT Data\char`\"{})
\item 
\mbox{\hyperlink{g__concat_8c_a1e69eaa2ef6048550eaeebcf775a3d0f}{SYSCTL\+\_\+\+DECL}} (\+\_\+kern\+\_\+geom)
\item 
static \mbox{\hyperlink{g__concat_8c_aab2b03f3c9958c68774172f58289652c}{SYSCTL\+\_\+\+NODE}} (\+\_\+kern\+\_\+geom, OID\+\_\+\+AUTO, concat, CTLFLAG\+\_\+\+RW$\vert$CTLFLAG\+\_\+\+MPSAFE, 0, \char`\"{}GEOM\+\_\+\+CONCAT stuff\char`\"{})
\item 
\mbox{\hyperlink{g__concat_8c_a33c91653142d361fbeb6e797eb8323c8}{SYSCTL\+\_\+\+UINT}} (\+\_\+kern\+\_\+geom\+\_\+concat, OID\+\_\+\+AUTO, debug, CTLFLAG\+\_\+\+RWTUN, \&\mbox{\hyperlink{g__concat_8c_ac65b0a910cc7ea1f43eccdcac1218238}{g\+\_\+concat\+\_\+debug}}, 0, \char`\"{}Debug level\char`\"{})
\item 
static int \mbox{\hyperlink{g__concat_8c_a0ea0d619c7434d0abb3e6ad33bd3e653}{g\+\_\+concat\+\_\+destroy}} (struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$sc, boolean\+\_\+t force)
\item 
static int \mbox{\hyperlink{g__concat_8c_aa5489164e65635f727d944dde10a7293}{g\+\_\+concat\+\_\+destroy\+\_\+geom}} (struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}}, struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}}, struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a2e19b314cc992e25ba4ea6cddd4b36aa}{gp}})
\item 
static u\+\_\+int \mbox{\hyperlink{g__concat_8c_ac07bba9cc14eabdd7b25aff654726d28}{gcd}} (u\+\_\+int a, u\+\_\+int b)
\item 
static u\+\_\+int \mbox{\hyperlink{g__concat_8c_a692b46e1f064015804ee07d568f88c0d}{lcm}} (u\+\_\+int a, u\+\_\+int b)
\item 
static u\+\_\+int \mbox{\hyperlink{g__concat_8c_a7a0982d5746abe1cb97f57ff51e54235}{g\+\_\+concat\+\_\+nvalid}} (struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$sc)
\item 
static void \mbox{\hyperlink{g__concat_8c_ae6a927d62de8d79af351af88e9487570}{g\+\_\+concat\+\_\+remove\+\_\+disk}} (struct \mbox{\hyperlink{structg__concat__disk}{g\+\_\+concat\+\_\+disk}} $\ast$\mbox{\hyperlink{structdisk}{disk}})
\item 
static void \mbox{\hyperlink{g__concat_8c_a58dfb64c0d3d654eea4cb5fd7e930aba}{g\+\_\+concat\+\_\+orphan}} (struct \mbox{\hyperlink{structg__consumer}{g\+\_\+consumer}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a3d8e3ec9f529e77fa46f92363b115a01}{cp}})
\item 
static int \mbox{\hyperlink{g__concat_8c_a07787fefe5c3d095cf25f0f066768e9b}{g\+\_\+concat\+\_\+access}} (struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$\mbox{\hyperlink{g__part__if_8m_a9bc7638f295763b77465c5ebebbd3442}{pp}}, int dr, int dw, int de)
\item 
static void \mbox{\hyperlink{g__concat_8c_ad316a02db635e890d0f4d1ecff5fb1cb}{g\+\_\+concat\+\_\+candelete}} (struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static void \mbox{\hyperlink{g__concat_8c_a4cd3a14c19a7bb3af14d0e5443525d15}{g\+\_\+concat\+\_\+kernel\+\_\+dump}} (struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static void \mbox{\hyperlink{g__concat_8c_ae63cd4355be7a15d3d53cb16af46047b}{g\+\_\+concat\+\_\+done}} (struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static void \mbox{\hyperlink{g__concat_8c_aa68c9daade6dc5ca27bf398c3eb8816e}{g\+\_\+concat\+\_\+passdown}} (struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$sc, struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static void \mbox{\hyperlink{g__concat_8c_ac7c711fc66f713abae9ec27e9db36e1a}{g\+\_\+concat\+\_\+start}} (struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static void \mbox{\hyperlink{g__concat_8c_a3ee44933fe47aa9813434efd6ee4c0df}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run}} (struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$sc)
\item 
static int \mbox{\hyperlink{g__concat_8c_a691c6cfc6e5dbdace9977d97adc4bbca}{g\+\_\+concat\+\_\+read\+\_\+metadata}} (struct \mbox{\hyperlink{structg__consumer}{g\+\_\+consumer}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a3d8e3ec9f529e77fa46f92363b115a01}{cp}}, struct \mbox{\hyperlink{structg__concat__metadata}{g\+\_\+concat\+\_\+metadata}} $\ast$md)
\item 
static int \mbox{\hyperlink{g__concat_8c_a8925d458efc34dd5874355a75ab4e3cc}{g\+\_\+concat\+\_\+add\+\_\+disk}} (struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$sc, struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$\mbox{\hyperlink{g__part__if_8m_a9bc7638f295763b77465c5ebebbd3442}{pp}}, u\+\_\+int no)
\item 
static struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$ \mbox{\hyperlink{g__concat_8c_a23dd4251bb2d9f59cf9a47cc891cdb07}{g\+\_\+concat\+\_\+create}} (struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}}, const struct \mbox{\hyperlink{structg__concat__metadata}{g\+\_\+concat\+\_\+metadata}} $\ast$md, u\+\_\+int \mbox{\hyperlink{g__part__if_8m_a56fbef8e35abe6f0859d223619275ce4}{type}})
\item 
static int \mbox{\hyperlink{g__concat_8c_a8bad6ad69d89ed78ea9e8e9a8efc7b74}{g\+\_\+concat\+\_\+destroy\+\_\+geom}} (struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}} \+\_\+\+\_\+unused, struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}} \+\_\+\+\_\+unused, struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a2e19b314cc992e25ba4ea6cddd4b36aa}{gp}})
\item 
static struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$ \mbox{\hyperlink{g__concat_8c_ac2ce406ac76020a1b2cc4327dbbd3553}{g\+\_\+concat\+\_\+taste}} (struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}}, struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$\mbox{\hyperlink{g__part__if_8m_a9bc7638f295763b77465c5ebebbd3442}{pp}}, int flags \+\_\+\+\_\+unused)
\item 
static void \mbox{\hyperlink{g__concat_8c_a0f2ca4ed102b05c76bf971ccaf0d2bca}{g\+\_\+concat\+\_\+ctl\+\_\+create}} (struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}}, struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}})
\item 
static struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$ \mbox{\hyperlink{g__concat_8c_a114d1e10b6c4f1ba88fa0ded422eaa40}{g\+\_\+concat\+\_\+find\+\_\+device}} (struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}}, const char $\ast$\mbox{\hyperlink{g__part__if_8m_aff5d3acc33944ecb11914d04ef06bb54}{name}})
\item 
static void \mbox{\hyperlink{g__concat_8c_a9865c7ac48d5c2dedc40216a2607b2ac}{g\+\_\+concat\+\_\+ctl\+\_\+destroy}} (struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}}, struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}})
\item 
static struct \mbox{\hyperlink{structg__concat__disk}{g\+\_\+concat\+\_\+disk}} $\ast$ \mbox{\hyperlink{g__concat_8c_acf416685291fdb249f2c73fd0cd2374f}{g\+\_\+concat\+\_\+find\+\_\+disk}} (struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$sc, const char $\ast$\mbox{\hyperlink{g__part__if_8m_aff5d3acc33944ecb11914d04ef06bb54}{name}})
\item 
static void \mbox{\hyperlink{g__concat_8c_ac4d01d9eba084187a6373433e325ee3b}{g\+\_\+concat\+\_\+write\+\_\+metadata}} (struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}}, struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$sc)
\item 
static void \mbox{\hyperlink{g__concat_8c_a959e639d68c54e092fe3fd468f198816}{g\+\_\+concat\+\_\+ctl\+\_\+append}} (struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}}, struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}})
\item 
static void \mbox{\hyperlink{g__concat_8c_a83228d2e9c26b989e0dc367a03b62dfc}{g\+\_\+concat\+\_\+config}} (struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}}, struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}}, const char $\ast$verb)
\item 
static void \mbox{\hyperlink{g__concat_8c_ab2bff8c21bc9550f4eddba8b037479cd}{g\+\_\+concat\+\_\+dumpconf}} (struct sbuf $\ast$\mbox{\hyperlink{g__part__if_8m_a4c23eb4bab5aa5d69bd84384b94d1f79}{sb}}, const char $\ast$\mbox{\hyperlink{g__part__if_8m_a9a0d9ba518bc8db9a623d0a6ab81f81c}{indent}}, struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a2e19b314cc992e25ba4ea6cddd4b36aa}{gp}}, struct \mbox{\hyperlink{structg__consumer}{g\+\_\+consumer}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a3d8e3ec9f529e77fa46f92363b115a01}{cp}}, struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$\mbox{\hyperlink{g__part__if_8m_a9bc7638f295763b77465c5ebebbd3442}{pp}})
\item 
\mbox{\hyperlink{g__concat_8c_a29d35211a0d5fc5fe267c82ee14bcc22}{DECLARE\+\_\+\+GEOM\+\_\+\+CLASS}} (\mbox{\hyperlink{g__concat_8c_a0c6f3f5208a430303eca088c2c4cac11}{g\+\_\+concat\+\_\+class}}, g\+\_\+concat)
\item 
\mbox{\hyperlink{g__concat_8c_a393022df486cac0d204d4920aa8aaa03}{MODULE\+\_\+\+VERSION}} (geom\+\_\+concat, 0)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static u\+\_\+int \mbox{\hyperlink{g__concat_8c_ac65b0a910cc7ea1f43eccdcac1218238}{g\+\_\+concat\+\_\+debug}} = 0
\item 
static \mbox{\hyperlink{geom_8h_a631656592e7bd0d9b508904254e8e7a7}{g\+\_\+taste\+\_\+t}} \mbox{\hyperlink{g__concat_8c_aae5a62de53ab107c8d00bd902c571562}{g\+\_\+concat\+\_\+taste}}
\item 
static \mbox{\hyperlink{geom_8h_a98129532a3f4d0845714f8b272b9da8a}{g\+\_\+ctl\+\_\+req\+\_\+t}} \mbox{\hyperlink{g__concat_8c_a1f66dbd3bc05740560f22d142a84d647}{g\+\_\+concat\+\_\+config}}
\item 
static \mbox{\hyperlink{geom_8h_afdb390a9279523d96cb700a712939f76}{g\+\_\+dumpconf\+\_\+t}} \mbox{\hyperlink{g__concat_8c_acdf0631a886cc0428f60eb2f7f005c82}{g\+\_\+concat\+\_\+dumpconf}}
\item 
struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} \mbox{\hyperlink{g__concat_8c_a0c6f3f5208a430303eca088c2c4cac11}{g\+\_\+concat\+\_\+class}}
\end{DoxyCompactItemize}


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

\mbox{\Hypertarget{g__concat_8c_a29d35211a0d5fc5fe267c82ee14bcc22}\label{g__concat_8c_a29d35211a0d5fc5fe267c82ee14bcc22}} 
\index{g\_concat.c@{g\_concat.c}!DECLARE\_GEOM\_CLASS@{DECLARE\_GEOM\_CLASS}}
\index{DECLARE\_GEOM\_CLASS@{DECLARE\_GEOM\_CLASS}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{DECLARE\_GEOM\_CLASS()}{DECLARE\_GEOM\_CLASS()}}
{\footnotesize\ttfamily DECLARE\+\_\+\+GEOM\+\_\+\+CLASS (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{g__concat_8c_a0c6f3f5208a430303eca088c2c4cac11}{g\+\_\+concat\+\_\+class}}}]{,  }\item[{g\+\_\+concat}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{g__concat_8c_acb778b785c487ccb4f197a75f6207720}\label{g__concat_8c_acb778b785c487ccb4f197a75f6207720}} 
\index{g\_concat.c@{g\_concat.c}!FEATURE@{FEATURE}}
\index{FEATURE@{FEATURE}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{FEATURE()}{FEATURE()}}
{\footnotesize\ttfamily FEATURE (\begin{DoxyParamCaption}\item[{geom\+\_\+concat}]{,  }\item[{\char`\"{}GEOM concatenation support\char`\"{}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{g__concat_8c_a07787fefe5c3d095cf25f0f066768e9b}\label{g__concat_8c_a07787fefe5c3d095cf25f0f066768e9b}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_access@{g\_concat\_access}}
\index{g\_concat\_access@{g\_concat\_access}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_access()}{g\_concat\_access()}}
{\footnotesize\ttfamily static int g\+\_\+concat\+\_\+access (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$}]{pp,  }\item[{int}]{dr,  }\item[{int}]{dw,  }\item[{int}]{de }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00174}{174}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::ace}}, \mbox{\hyperlink{geom_8h_source_l00211}{g\+\_\+provider\+::ace}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acr}}, \mbox{\hyperlink{geom_8h_source_l00211}{g\+\_\+provider\+::acr}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acw}}, \mbox{\hyperlink{geom_8h_source_l00211}{g\+\_\+provider\+::acw}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom__subr_8c_source_l00944}{g\+\_\+access()}}, \mbox{\hyperlink{g__concat_8c_source_l00121}{g\+\_\+concat\+\_\+remove\+\_\+disk()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_source_l00209}{g\+\_\+provider\+::geom}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{geom_8h_source_l00190}{g\+\_\+consumer\+::private}}, \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a07787fefe5c3d095cf25f0f066768e9b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a07787fefe5c3d095cf25f0f066768e9b_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a8925d458efc34dd5874355a75ab4e3cc}\label{g__concat_8c_a8925d458efc34dd5874355a75ab4e3cc}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_add\_disk@{g\_concat\_add\_disk}}
\index{g\_concat\_add\_disk@{g\_concat\_add\_disk}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_add\_disk()}{g\_concat\_add\_disk()}}
{\footnotesize\ttfamily static int g\+\_\+concat\+\_\+add\+\_\+disk (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$}]{sc,  }\item[{struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$}]{pp,  }\item[{u\+\_\+int}]{no }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00531}{531}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::ace}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acr}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acw}}, \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom_8h_source_l00181}{g\+\_\+consumer\+::flags}}, \mbox{\hyperlink{geom__subr_8c_source_l00944}{g\+\_\+access()}}, \mbox{\hyperlink{geom__subr_8c_source_l00889}{g\+\_\+attach()}}, \mbox{\hyperlink{geom_8h_source_l00185}{G\+\_\+\+CF\+\_\+\+DIRECT\+\_\+\+RECEIVE}}, \mbox{\hyperlink{geom_8h_source_l00184}{G\+\_\+\+CF\+\_\+\+DIRECT\+\_\+\+SEND}}, \mbox{\hyperlink{g__concat_8c_source_l00442}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run()}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8h_source_l00038}{G\+\_\+\+CONCAT\+\_\+\+MAGIC}}, \mbox{\hyperlink{g__concat_8c_source_l00500}{g\+\_\+concat\+\_\+read\+\_\+metadata()}}, \mbox{\hyperlink{g__concat_8h_source_l00050}{G\+\_\+\+CONCAT\+\_\+\+TYPE\+\_\+\+AUTOMATIC}}, \mbox{\hyperlink{geom__subr_8c_source_l00543}{g\+\_\+destroy\+\_\+consumer()}}, \mbox{\hyperlink{geom__subr_8c_source_l00913}{g\+\_\+detach()}}, \mbox{\hyperlink{geom__subr_8c_source_l00521}{g\+\_\+new\+\_\+consumer()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{g__concat_8h_source_l00087}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00084}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+magic}}, \mbox{\hyperlink{g__concat_8h_source_l00086}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+name}}, \mbox{\hyperlink{g__concat_8h_source_l00090}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+provider}}, \mbox{\hyperlink{geom_8h_source_l00207}{g\+\_\+provider\+::name}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{geom_8h_source_l00190}{g\+\_\+consumer\+::private}}, \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}, \mbox{\hyperlink{g__concat_8h_source_l00070}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+geom}}, \mbox{\hyperlink{g__concat_8h_source_l00072}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00074}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+ndisks}}, and \mbox{\hyperlink{g__concat_8h_source_l00069}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+type}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00846}{g\+\_\+concat\+\_\+ctl\+\_\+create()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a8925d458efc34dd5874355a75ab4e3cc_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a8925d458efc34dd5874355a75ab4e3cc_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_ad316a02db635e890d0f4d1ecff5fb1cb}\label{g__concat_8c_ad316a02db635e890d0f4d1ecff5fb1cb}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_candelete@{g\_concat\_candelete}}
\index{g\_concat\_candelete@{g\_concat\_candelete}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_candelete()}{g\_concat\_candelete()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+candelete (\begin{DoxyParamCaption}\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00218}{218}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom__subr_8c_source_l01114}{g\+\_\+handleattr()}}, and \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00327}{g\+\_\+concat\+\_\+start()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ad316a02db635e890d0f4d1ecff5fb1cb_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ad316a02db635e890d0f4d1ecff5fb1cb_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a3ee44933fe47aa9813434efd6ee4c0df}\label{g__concat_8c_a3ee44933fe47aa9813434efd6ee4c0df}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_check\_and\_run@{g\_concat\_check\_and\_run}}
\index{g\_concat\_check\_and\_run@{g\_concat\_check\_and\_run}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_check\_and\_run()}{g\_concat\_check\_and\_run()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$}]{sc }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00442}{442}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom_8h_source_l00212}{g\+\_\+provider\+::error}}, \mbox{\hyperlink{geom_8h_source_l00221}{g\+\_\+provider\+::flags}}, \mbox{\hyperlink{geom__subr_8c_source_l00944}{g\+\_\+access()}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8c_source_l00104}{g\+\_\+concat\+\_\+nvalid()}}, \mbox{\hyperlink{g__concat_8h_source_l00050}{G\+\_\+\+CONCAT\+\_\+\+TYPE\+\_\+\+AUTOMATIC}}, \mbox{\hyperlink{geom__subr_8c_source_l00670}{g\+\_\+error\+\_\+provider()}}, \mbox{\hyperlink{geom_8h_source_l00285}{g\+\_\+getattr}}, \mbox{\hyperlink{geom_8h_a79a5fe6e79cbc1a257454a3554fa11ef}{g\+\_\+new\+\_\+providerf()}}, \mbox{\hyperlink{geom_8h_source_l00224}{G\+\_\+\+PF\+\_\+\+ACCEPT\+\_\+\+UNMAPPED}}, \mbox{\hyperlink{geom_8h_source_l00226}{G\+\_\+\+PF\+\_\+\+DIRECT\+\_\+\+RECEIVE}}, \mbox{\hyperlink{geom_8h_source_l00225}{G\+\_\+\+PF\+\_\+\+DIRECT\+\_\+\+SEND}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{g__concat_8c_source_l00094}{lcm()}}, \mbox{\hyperlink{geom_8h_source_l00214}{g\+\_\+provider\+::mediasize}}, \mbox{\hyperlink{geom_8h_source_l00207}{g\+\_\+provider\+::name}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{g__concat_8h_source_l00070}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+geom}}, \mbox{\hyperlink{g__concat_8h_source_l00074}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+ndisks}}, \mbox{\hyperlink{g__concat_8h_source_l00071}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+provider}}, \mbox{\hyperlink{g__concat_8h_source_l00069}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+type}}, \mbox{\hyperlink{geom_8h_source_l00215}{g\+\_\+provider\+::sectorsize}}, \mbox{\hyperlink{g__raid__tr__if_8m_source_l00072}{start}}, \mbox{\hyperlink{geom_8h_source_l00217}{g\+\_\+provider\+::stripeoffset}}, and \mbox{\hyperlink{geom_8h_source_l00216}{g\+\_\+provider\+::stripesize}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00531}{g\+\_\+concat\+\_\+add\+\_\+disk()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a3ee44933fe47aa9813434efd6ee4c0df_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a3ee44933fe47aa9813434efd6ee4c0df_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a83228d2e9c26b989e0dc367a03b62dfc}\label{g__concat_8c_a83228d2e9c26b989e0dc367a03b62dfc}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_config@{g\_concat\_config}}
\index{g\_concat\_config@{g\_concat\_config}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_config()}{g\_concat\_config()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+config (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$}]{req,  }\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp,  }\item[{const char $\ast$}]{verb }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l01190}{1190}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}, \mbox{\hyperlink{g__concat_8c_source_l00846}{g\+\_\+concat\+\_\+ctl\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l00946}{g\+\_\+concat\+\_\+ctl\+\_\+destroy()}}, \mbox{\hyperlink{g__concat_8h_source_l00046}{G\+\_\+\+CONCAT\+\_\+\+VERSION}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_a1d51201471b52be7e19a98b0fcb144de}{gctl\+\_\+error()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00429}{gctl\+\_\+get\+\_\+paraml()}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00103}{mp}}, and \mbox{\hyperlink{g__part__if_8m_source_l00225}{req}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a83228d2e9c26b989e0dc367a03b62dfc_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a23dd4251bb2d9f59cf9a47cc891cdb07}\label{g__concat_8c_a23dd4251bb2d9f59cf9a47cc891cdb07}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_create@{g\_concat\_create}}
\index{g\_concat\_create@{g\_concat\_create}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_create()}{g\_concat\_create()}}
{\footnotesize\ttfamily static struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$ g\+\_\+concat\+\_\+create (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp,  }\item[{const struct \mbox{\hyperlink{structg__concat__metadata}{g\+\_\+concat\+\_\+metadata}} $\ast$}]{md,  }\item[{u\+\_\+int}]{type }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00627}{627}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00143}{g\+\_\+geom\+::access}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom_8h_source_l00142}{g\+\_\+geom\+::dumpconf}}, \mbox{\hyperlink{g__concat_8c_source_l00174}{g\+\_\+concat\+\_\+access()}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8c_source_l00064}{g\+\_\+concat\+\_\+dumpconf}}, \mbox{\hyperlink{g__concat_8c_source_l00155}{g\+\_\+concat\+\_\+orphan()}}, \mbox{\hyperlink{g__concat_8c_source_l00327}{g\+\_\+concat\+\_\+start()}}, \mbox{\hyperlink{geom_8h_a4000befe2ff4b405b8333ccc5b0fdb41}{g\+\_\+new\+\_\+geomf()}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{g__concat_8h_source_l00089}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+all}}, \mbox{\hyperlink{g__concat_8h_source_l00087}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00086}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+name}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00103}{mp}}, \mbox{\hyperlink{geom_8h_source_l00132}{g\+\_\+geom\+::name}}, \mbox{\hyperlink{geom_8h_source_l00144}{g\+\_\+geom\+::orphan}}, \mbox{\hyperlink{g__concat_8h_source_l00077}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+completion\+\_\+lock}}, \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}, \mbox{\hyperlink{g__concat_8h_source_l00070}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+geom}}, \mbox{\hyperlink{g__concat_8h_source_l00072}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00074}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+ndisks}}, \mbox{\hyperlink{g__concat_8h_source_l00071}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+provider}}, \mbox{\hyperlink{g__concat_8h_source_l00069}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+type}}, \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}, \mbox{\hyperlink{geom_8h_source_l00140}{g\+\_\+geom\+::spoiled}}, \mbox{\hyperlink{geom_8h_source_l00139}{g\+\_\+geom\+::start}}, and \mbox{\hyperlink{geom__flashmap_8c_source_l00057}{type}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00846}{g\+\_\+concat\+\_\+ctl\+\_\+create()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a23dd4251bb2d9f59cf9a47cc891cdb07_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a23dd4251bb2d9f59cf9a47cc891cdb07_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a959e639d68c54e092fe3fd468f198816}\label{g__concat_8c_a959e639d68c54e092fe3fd468f198816}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_ctl\_append@{g\_concat\_ctl\_append}}
\index{g\_concat\_ctl\_append@{g\_concat\_ctl\_append}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_ctl\_append()}{g\_concat\_ctl\_append()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+ctl\+\_\+append (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$}]{req,  }\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l01055}{1055}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::ace}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acr}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acw}}, \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom_8h_source_l00181}{g\+\_\+consumer\+::flags}}, \mbox{\hyperlink{geom__subr_8c_source_l00944}{g\+\_\+access()}}, \mbox{\hyperlink{geom__subr_8c_source_l00889}{g\+\_\+attach()}}, \mbox{\hyperlink{geom_8h_source_l00185}{G\+\_\+\+CF\+\_\+\+DIRECT\+\_\+\+RECEIVE}}, \mbox{\hyperlink{geom_8h_source_l00184}{G\+\_\+\+CF\+\_\+\+DIRECT\+\_\+\+SEND}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8c_source_l00927}{g\+\_\+concat\+\_\+find\+\_\+device()}}, \mbox{\hyperlink{g__concat_8c_source_l00993}{g\+\_\+concat\+\_\+find\+\_\+disk()}}, \mbox{\hyperlink{g__concat_8h_source_l00050}{G\+\_\+\+CONCAT\+\_\+\+TYPE\+\_\+\+AUTOMATIC}}, \mbox{\hyperlink{g__concat_8c_source_l01012}{g\+\_\+concat\+\_\+write\+\_\+metadata()}}, \mbox{\hyperlink{geom__subr_8c_source_l00543}{g\+\_\+destroy\+\_\+consumer()}}, \mbox{\hyperlink{geom__subr_8c_source_l00913}{g\+\_\+detach()}}, \mbox{\hyperlink{geom_8h_source_l00285}{g\+\_\+getattr}}, \mbox{\hyperlink{geom__subr_8c_source_l00521}{g\+\_\+new\+\_\+consumer()}}, \mbox{\hyperlink{geom__subr_8c_source_l00762}{g\+\_\+provider\+\_\+by\+\_\+name()}}, \mbox{\hyperlink{geom__subr_8c_source_l00744}{g\+\_\+resize\+\_\+provider()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_a1d51201471b52be7e19a98b0fcb144de}{gctl\+\_\+error()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00395}{gctl\+\_\+get\+\_\+asciiparam()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00429}{gctl\+\_\+get\+\_\+paraml()}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{geom_8h_source_l00214}{g\+\_\+provider\+::mediasize}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00103}{mp}}, \mbox{\hyperlink{g__part__if_8m_source_l00209}{name}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{geom_8h_source_l00190}{g\+\_\+consumer\+::private}}, \mbox{\hyperlink{geom_8h_source_l00178}{g\+\_\+consumer\+::provider}}, \mbox{\hyperlink{g__part__if_8m_source_l00225}{req}}, \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}, \mbox{\hyperlink{g__concat_8h_source_l00070}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+geom}}, \mbox{\hyperlink{g__concat_8h_source_l00074}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+ndisks}}, \mbox{\hyperlink{g__concat_8h_source_l00071}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+provider}}, \mbox{\hyperlink{g__concat_8h_source_l00069}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+type}}, and \mbox{\hyperlink{geom_8h_source_l00215}{g\+\_\+provider\+::sectorsize}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l01190}{g\+\_\+concat\+\_\+config()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a959e639d68c54e092fe3fd468f198816_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=330pt]{d7/d70/g__concat_8c_a959e639d68c54e092fe3fd468f198816_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a0f2ca4ed102b05c76bf971ccaf0d2bca}\label{g__concat_8c_a0f2ca4ed102b05c76bf971ccaf0d2bca}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_ctl\_create@{g\_concat\_ctl\_create}}
\index{g\_concat\_ctl\_create@{g\_concat\_ctl\_create}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_ctl\_create()}{g\_concat\_ctl\_create()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+ctl\+\_\+create (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$}]{req,  }\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00846}{846}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \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_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, \mbox{\hyperlink{g__concat_8h_source_l00038}{G\+\_\+\+CONCAT\+\_\+\+MAGIC}}, \mbox{\hyperlink{g__concat_8h_source_l00049}{G\+\_\+\+CONCAT\+\_\+\+TYPE\+\_\+\+MANUAL}}, \mbox{\hyperlink{g__concat_8h_source_l00046}{G\+\_\+\+CONCAT\+\_\+\+VERSION}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_a1d51201471b52be7e19a98b0fcb144de}{gctl\+\_\+error()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00395}{gctl\+\_\+get\+\_\+asciiparam()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00429}{gctl\+\_\+get\+\_\+paraml()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00478}{gctl\+\_\+get\+\_\+provider()}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{g__concat_8h_source_l00089}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+all}}, \mbox{\hyperlink{g__concat_8h_source_l00087}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00084}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+magic}}, \mbox{\hyperlink{g__concat_8h_source_l00086}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+name}}, \mbox{\hyperlink{g__concat_8h_source_l00088}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+no}}, \mbox{\hyperlink{g__concat_8h_source_l00091}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+provsize}}, \mbox{\hyperlink{g__concat_8h_source_l00085}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+version}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00103}{mp}}, \mbox{\hyperlink{geom_8h_source_l00132}{g\+\_\+geom\+::name}}, \mbox{\hyperlink{geom_8h_source_l00207}{g\+\_\+provider\+::name}}, \mbox{\hyperlink{g__part__if_8m_source_l00209}{name}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{g__part__if_8m_source_l00225}{req}}, \mbox{\hyperlink{g__part__if_8m_source_l00157}{sb}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l01190}{g\+\_\+concat\+\_\+config()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a0f2ca4ed102b05c76bf971ccaf0d2bca_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=324pt]{d7/d70/g__concat_8c_a0f2ca4ed102b05c76bf971ccaf0d2bca_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a9865c7ac48d5c2dedc40216a2607b2ac}\label{g__concat_8c_a9865c7ac48d5c2dedc40216a2607b2ac}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_ctl\_destroy@{g\_concat\_ctl\_destroy}}
\index{g\_concat\_ctl\_destroy@{g\_concat\_ctl\_destroy}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_ctl\_destroy()}{g\_concat\_ctl\_destroy()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+ctl\+\_\+destroy (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$}]{req,  }\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00946}{946}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, \mbox{\hyperlink{g__concat_8c_source_l00927}{g\+\_\+concat\+\_\+find\+\_\+device()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_a1d51201471b52be7e19a98b0fcb144de}{gctl\+\_\+error()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00395}{gctl\+\_\+get\+\_\+asciiparam()}}, \mbox{\hyperlink{geom__ctl_8c_source_l00429}{gctl\+\_\+get\+\_\+paraml()}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00103}{mp}}, \mbox{\hyperlink{g__part__if_8m_source_l00209}{name}}, and \mbox{\hyperlink{g__part__if_8m_source_l00225}{req}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l01190}{g\+\_\+concat\+\_\+config()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a9865c7ac48d5c2dedc40216a2607b2ac_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=330pt]{d7/d70/g__concat_8c_a9865c7ac48d5c2dedc40216a2607b2ac_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a0ea0d619c7434d0abb3e6ad33bd3e653}\label{g__concat_8c_a0ea0d619c7434d0abb3e6ad33bd3e653}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_destroy@{g\_concat\_destroy}}
\index{g\_concat\_destroy@{g\_concat\_destroy}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_destroy()}{g\_concat\_destroy()}}
{\footnotesize\ttfamily static int g\+\_\+concat\+\_\+destroy (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$}]{sc,  }\item[{boolean\+\_\+t}]{force }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00680}{680}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00211}{g\+\_\+provider\+::ace}}, \mbox{\hyperlink{geom_8h_source_l00211}{g\+\_\+provider\+::acr}}, \mbox{\hyperlink{geom_8h_source_l00211}{g\+\_\+provider\+::acw}}, \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00171}{free}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8c_source_l00121}{g\+\_\+concat\+\_\+remove\+\_\+disk()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom__subr_8c_source_l00434}{g\+\_\+wither\+\_\+geom()}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{geom_8h_source_l00132}{g\+\_\+geom\+::name}}, \mbox{\hyperlink{geom_8h_source_l00207}{g\+\_\+provider\+::name}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{geom_8h_source_l00190}{g\+\_\+consumer\+::private}}, \mbox{\hyperlink{g__concat_8h_source_l00077}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+completion\+\_\+lock}}, \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}, \mbox{\hyperlink{g__concat_8h_source_l00070}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+geom}}, \mbox{\hyperlink{g__concat_8h_source_l00071}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+provider}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00846}{g\+\_\+concat\+\_\+ctl\+\_\+create()}}, \mbox{\hyperlink{g__concat_8c_source_l00946}{g\+\_\+concat\+\_\+ctl\+\_\+destroy()}}, \mbox{\hyperlink{g__concat_8c_source_l00731}{g\+\_\+concat\+\_\+destroy\+\_\+geom()}}, \mbox{\hyperlink{g__concat_8c_source_l00121}{g\+\_\+concat\+\_\+remove\+\_\+disk()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a0ea0d619c7434d0abb3e6ad33bd3e653_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a0ea0d619c7434d0abb3e6ad33bd3e653_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a8bad6ad69d89ed78ea9e8e9a8efc7b74}\label{g__concat_8c_a8bad6ad69d89ed78ea9e8e9a8efc7b74}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_destroy\_geom@{g\_concat\_destroy\_geom}}
\index{g\_concat\_destroy\_geom@{g\_concat\_destroy\_geom}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_destroy\_geom()}{g\_concat\_destroy\_geom()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily static int g\+\_\+concat\+\_\+destroy\+\_\+geom (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_ac3f02080343d005bc245831006856ea4}{req}}}]{\+\_\+\+\_\+unused,  }\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_a4f7502795edfd2493d3d223d0df33e1d}{mp}}}]{\+\_\+\+\_\+unused,  }\item[{struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$}]{gp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00731}{731}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a8bad6ad69d89ed78ea9e8e9a8efc7b74_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_aa5489164e65635f727d944dde10a7293}\label{g__concat_8c_aa5489164e65635f727d944dde10a7293}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_destroy\_geom@{g\_concat\_destroy\_geom}}
\index{g\_concat\_destroy\_geom@{g\_concat\_destroy\_geom}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_destroy\_geom()}{g\_concat\_destroy\_geom()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily static int g\+\_\+concat\+\_\+destroy\+\_\+geom (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$}]{req,  }\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp,  }\item[{struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$}]{gp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\Hypertarget{g__concat_8c_ae63cd4355be7a15d3d53cb16af46047b}\label{g__concat_8c_ae63cd4355be7a15d3d53cb16af46047b}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_done@{g\_concat\_done}}
\index{g\_concat\_done@{g\_concat\_done}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_done()}{g\_concat\_done()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+done (\begin{DoxyParamCaption}\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00269}{269}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{geom__io_8c_source_l00176}{g\+\_\+destroy\+\_\+bio()}}, \mbox{\hyperlink{geom__io_8c_source_l00600}{g\+\_\+io\+\_\+deliver()}}, and \mbox{\hyperlink{g__concat_8h_source_l00077}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+completion\+\_\+lock}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00293}{g\+\_\+concat\+\_\+passdown()}}, and \mbox{\hyperlink{g__concat_8c_source_l00327}{g\+\_\+concat\+\_\+start()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ae63cd4355be7a15d3d53cb16af46047b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ae63cd4355be7a15d3d53cb16af46047b_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_ab2bff8c21bc9550f4eddba8b037479cd}\label{g__concat_8c_ab2bff8c21bc9550f4eddba8b037479cd}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_dumpconf@{g\_concat\_dumpconf}}
\index{g\_concat\_dumpconf@{g\_concat\_dumpconf}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_dumpconf()}{g\_concat\_dumpconf()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+dumpconf (\begin{DoxyParamCaption}\item[{struct sbuf $\ast$}]{sb,  }\item[{const char $\ast$}]{indent,  }\item[{struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$}]{gp,  }\item[{struct \mbox{\hyperlink{structg__consumer}{g\+\_\+consumer}} $\ast$}]{cp,  }\item[{struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$}]{pp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l01221}{1221}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom_8h_source_l00212}{g\+\_\+provider\+::error}}, \mbox{\hyperlink{g__concat_8c_source_l00104}{g\+\_\+concat\+\_\+nvalid()}}, \mbox{\hyperlink{g__concat_8h_source_l00050}{G\+\_\+\+CONCAT\+\_\+\+TYPE\+\_\+\+AUTOMATIC}}, \mbox{\hyperlink{g__concat_8h_source_l00049}{G\+\_\+\+CONCAT\+\_\+\+TYPE\+\_\+\+MANUAL}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{g__part__if_8m_source_l00158}{indent}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{geom_8h_source_l00190}{g\+\_\+consumer\+::private}}, \mbox{\hyperlink{g__part__if_8m_source_l00157}{sb}}, \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}, \mbox{\hyperlink{g__concat_8h_source_l00072}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00074}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+ndisks}}, \mbox{\hyperlink{g__concat_8h_source_l00071}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+provider}}, \mbox{\hyperlink{g__concat_8h_source_l00069}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+type}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=325pt]{d7/d70/g__concat_8c_ab2bff8c21bc9550f4eddba8b037479cd_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a114d1e10b6c4f1ba88fa0ded422eaa40}\label{g__concat_8c_a114d1e10b6c4f1ba88fa0ded422eaa40}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_find\_device@{g\_concat\_find\_device}}
\index{g\_concat\_find\_device@{g\_concat\_find\_device}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_find\_device()}{g\_concat\_find\_device()}}
{\footnotesize\ttfamily static struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$ g\+\_\+concat\+\_\+find\+\_\+device (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp,  }\item[{const char $\ast$}]{name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00927}{927}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00425}{\+\_\+\+PATH\+\_\+\+DEV}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00103}{mp}}, \mbox{\hyperlink{g__part__if_8m_source_l00209}{name}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}, and \mbox{\hyperlink{g__concat_8c_source_l00946}{g\+\_\+concat\+\_\+ctl\+\_\+destroy()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a114d1e10b6c4f1ba88fa0ded422eaa40_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_acf416685291fdb249f2c73fd0cd2374f}\label{g__concat_8c_acf416685291fdb249f2c73fd0cd2374f}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_find\_disk@{g\_concat\_find\_disk}}
\index{g\_concat\_find\_disk@{g\_concat\_find\_disk}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_find\_disk()}{g\_concat\_find\_disk()}}
{\footnotesize\ttfamily static struct \mbox{\hyperlink{structg__concat__disk}{g\+\_\+concat\+\_\+disk}} $\ast$ g\+\_\+concat\+\_\+find\+\_\+disk (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$}]{sc,  }\item[{const char $\ast$}]{name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00993}{993}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{g__part__if_8m_source_l00209}{name}}, and \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_acf416685291fdb249f2c73fd0cd2374f_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a4cd3a14c19a7bb3af14d0e5443525d15}\label{g__concat_8c_a4cd3a14c19a7bb3af14d0e5443525d15}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_kernel\_dump@{g\_concat\_kernel\_dump}}
\index{g\_concat\_kernel\_dump@{g\_concat\_kernel\_dump}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_kernel\_dump()}{g\_concat\_kernel\_dump()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+kernel\+\_\+dump (\begin{DoxyParamCaption}\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00235}{235}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom__io_8c_source_l00191}{g\+\_\+clone\+\_\+bio()}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{geom__io_8c_source_l00600}{g\+\_\+io\+\_\+deliver()}}, \mbox{\hyperlink{geom__io_8c_source_l00491}{g\+\_\+io\+\_\+request()}}, \mbox{\hyperlink{geom__subr_8c_source_l01153}{g\+\_\+std\+\_\+done()}}, \mbox{\hyperlink{geom_8h_source_l00360}{g\+\_\+kerneldump\+::length}}, and \mbox{\hyperlink{geom_8h_source_l00359}{g\+\_\+kerneldump\+::offset}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00327}{g\+\_\+concat\+\_\+start()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a4cd3a14c19a7bb3af14d0e5443525d15_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a4cd3a14c19a7bb3af14d0e5443525d15_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a7a0982d5746abe1cb97f57ff51e54235}\label{g__concat_8c_a7a0982d5746abe1cb97f57ff51e54235}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_nvalid@{g\_concat\_nvalid}}
\index{g\_concat\_nvalid@{g\_concat\_nvalid}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_nvalid()}{g\_concat\_nvalid()}}
{\footnotesize\ttfamily static u\+\_\+int g\+\_\+concat\+\_\+nvalid (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$}]{sc }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00104}{104}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, and \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00442}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run()}}, and \mbox{\hyperlink{g__concat_8c_source_l01221}{g\+\_\+concat\+\_\+dumpconf()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a7a0982d5746abe1cb97f57ff51e54235_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a58dfb64c0d3d654eea4cb5fd7e930aba}\label{g__concat_8c_a58dfb64c0d3d654eea4cb5fd7e930aba}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_orphan@{g\_concat\_orphan}}
\index{g\_concat\_orphan@{g\_concat\_orphan}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_orphan()}{g\_concat\_orphan()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+orphan (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__consumer}{g\+\_\+consumer}} $\ast$}]{cp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00155}{155}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{g__concat_8c_source_l00121}{g\+\_\+concat\+\_\+remove\+\_\+disk()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_source_l00176}{g\+\_\+consumer\+::geom}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{geom_8h_source_l00190}{g\+\_\+consumer\+::private}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a58dfb64c0d3d654eea4cb5fd7e930aba_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a58dfb64c0d3d654eea4cb5fd7e930aba_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_aa68c9daade6dc5ca27bf398c3eb8816e}\label{g__concat_8c_aa68c9daade6dc5ca27bf398c3eb8816e}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_passdown@{g\_concat\_passdown}}
\index{g\_concat\_passdown@{g\_concat\_passdown}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_passdown()}{g\_concat\_passdown()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+passdown (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$}]{sc,  }\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00293}{293}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom__io_8c_source_l00191}{g\+\_\+clone\+\_\+bio()}}, \mbox{\hyperlink{g__concat_8c_source_l00269}{g\+\_\+concat\+\_\+done()}}, \mbox{\hyperlink{g__concat_8h_source_l00054}{G\+\_\+\+CONCAT\+\_\+\+LOGREQ}}, \mbox{\hyperlink{geom__io_8c_source_l00176}{g\+\_\+destroy\+\_\+bio()}}, \mbox{\hyperlink{geom__io_8c_source_l00600}{g\+\_\+io\+\_\+deliver()}}, \mbox{\hyperlink{geom__io_8c_source_l00491}{g\+\_\+io\+\_\+request()}}, and \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00327}{g\+\_\+concat\+\_\+start()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_aa68c9daade6dc5ca27bf398c3eb8816e_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_aa68c9daade6dc5ca27bf398c3eb8816e_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a691c6cfc6e5dbdace9977d97adc4bbca}\label{g__concat_8c_a691c6cfc6e5dbdace9977d97adc4bbca}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_read\_metadata@{g\_concat\_read\_metadata}}
\index{g\_concat\_read\_metadata@{g\_concat\_read\_metadata}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_read\_metadata()}{g\_concat\_read\_metadata()}}
{\footnotesize\ttfamily static int g\+\_\+concat\+\_\+read\+\_\+metadata (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__consumer}{g\+\_\+consumer}} $\ast$}]{cp,  }\item[{struct \mbox{\hyperlink{structg__concat__metadata}{g\+\_\+concat\+\_\+metadata}} $\ast$}]{md }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00500}{500}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00212}{buf}}, \mbox{\hyperlink{g__concat_8h_source_l00107}{concat\+\_\+metadata\+\_\+decode()}}, \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{geom_8h_source_l00212}{g\+\_\+provider\+::error}}, \mbox{\hyperlink{geom__subr_8c_source_l00944}{g\+\_\+access()}}, \mbox{\hyperlink{geom_8h_source_l00376}{g\+\_\+free()}}, \mbox{\hyperlink{geom__io_8c_source_l00870}{g\+\_\+read\+\_\+data()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_source_l00389}{g\+\_\+topology\+\_\+lock}}, \mbox{\hyperlink{geom_8h_source_l00396}{g\+\_\+topology\+\_\+unlock}}, \mbox{\hyperlink{geom_8h_source_l00214}{g\+\_\+provider\+::mediasize}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{geom_8h_source_l00178}{g\+\_\+consumer\+::provider}}, and \mbox{\hyperlink{geom_8h_source_l00215}{g\+\_\+provider\+::sectorsize}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00531}{g\+\_\+concat\+\_\+add\+\_\+disk()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a691c6cfc6e5dbdace9977d97adc4bbca_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a691c6cfc6e5dbdace9977d97adc4bbca_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_ae6a927d62de8d79af351af88e9487570}\label{g__concat_8c_ae6a927d62de8d79af351af88e9487570}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_remove\_disk@{g\_concat\_remove\_disk}}
\index{g\_concat\_remove\_disk@{g\_concat\_remove\_disk}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_remove\_disk()}{g\_concat\_remove\_disk()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+remove\+\_\+disk (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__concat__disk}{g\+\_\+concat\+\_\+disk}} $\ast$}]{disk }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00121}{121}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::ace}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acr}}, \mbox{\hyperlink{geom_8h_source_l00180}{g\+\_\+consumer\+::acw}}, \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, \mbox{\hyperlink{geom__subr_8c_source_l00543}{g\+\_\+destroy\+\_\+consumer()}}, \mbox{\hyperlink{geom__subr_8c_source_l00913}{g\+\_\+detach()}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom__subr_8c_source_l00454}{g\+\_\+wither\+\_\+provider()}}, \mbox{\hyperlink{geom_8h_source_l00207}{g\+\_\+provider\+::name}}, \mbox{\hyperlink{geom_8h_source_l00178}{g\+\_\+consumer\+::provider}}, \mbox{\hyperlink{g__concat_8h_source_l00070}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+geom}}, and \mbox{\hyperlink{g__concat_8h_source_l00071}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+provider}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00174}{g\+\_\+concat\+\_\+access()}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, and \mbox{\hyperlink{g__concat_8c_source_l00155}{g\+\_\+concat\+\_\+orphan()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ae6a927d62de8d79af351af88e9487570_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ae6a927d62de8d79af351af88e9487570_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_ac7c711fc66f713abae9ec27e9db36e1a}\label{g__concat_8c_ac7c711fc66f713abae9ec27e9db36e1a}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_start@{g\_concat\_start}}
\index{g\_concat\_start@{g\_concat\_start}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_start()}{g\_concat\_start()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+start (\begin{DoxyParamCaption}\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00327}{327}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom__io_8c_source_l00191}{g\+\_\+clone\+\_\+bio()}}, \mbox{\hyperlink{g__concat_8c_source_l00218}{g\+\_\+concat\+\_\+candelete()}}, \mbox{\hyperlink{g__concat_8c_source_l00269}{g\+\_\+concat\+\_\+done()}}, \mbox{\hyperlink{g__concat_8c_source_l00235}{g\+\_\+concat\+\_\+kernel\+\_\+dump()}}, \mbox{\hyperlink{g__concat_8h_source_l00054}{G\+\_\+\+CONCAT\+\_\+\+LOGREQ}}, \mbox{\hyperlink{g__concat_8c_source_l00293}{g\+\_\+concat\+\_\+passdown()}}, \mbox{\hyperlink{geom__io_8c_source_l00176}{g\+\_\+destroy\+\_\+bio()}}, \mbox{\hyperlink{geom__io_8c_source_l00600}{g\+\_\+io\+\_\+deliver()}}, \mbox{\hyperlink{geom__io_8c_source_l00491}{g\+\_\+io\+\_\+request()}}, \mbox{\hyperlink{geom__subr_8c_source_l01153}{g\+\_\+std\+\_\+done()}}, \mbox{\hyperlink{geom_8h_source_l00209}{g\+\_\+provider\+::geom}}, \mbox{\hyperlink{g__raid__tr__if_8m_source_l00100}{length}}, \mbox{\hyperlink{g__raid__tr__if_8m_source_l00099}{offset}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{g__concat_8h_source_l00078}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+disks\+\_\+lock}}, and \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}, and \mbox{\hyperlink{g__concat_8c_source_l00741}{g\+\_\+concat\+\_\+taste()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ac7c711fc66f713abae9ec27e9db36e1a_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ac7c711fc66f713abae9ec27e9db36e1a_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_ac2ce406ac76020a1b2cc4327dbbd3553}\label{g__concat_8c_ac2ce406ac76020a1b2cc4327dbbd3553}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_taste@{g\_concat\_taste}}
\index{g\_concat\_taste@{g\_concat\_taste}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_taste()}{g\_concat\_taste()}}
{\footnotesize\ttfamily static struct \mbox{\hyperlink{structg__geom}{g\+\_\+geom}} $\ast$ g\+\_\+concat\+\_\+taste (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} $\ast$}]{mp,  }\item[{struct \mbox{\hyperlink{structg__provider}{g\+\_\+provider}} $\ast$}]{pp,  }\item[{int flags}]{\+\_\+\+\_\+unused }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00741}{741}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{geom_8h_source_l00143}{g\+\_\+geom\+::access}}, \mbox{\hyperlink{geom_8h_source_l00211}{g\+\_\+provider\+::acw}}, \mbox{\hyperlink{g__part__if_8m_source_l00233}{cp}}, \mbox{\hyperlink{geom_8h_source_l00181}{g\+\_\+consumer\+::flags}}, \mbox{\hyperlink{geom__subr_8c_source_l00889}{g\+\_\+attach()}}, \mbox{\hyperlink{geom_8h_source_l00185}{G\+\_\+\+CF\+\_\+\+DIRECT\+\_\+\+RECEIVE}}, \mbox{\hyperlink{geom_8h_source_l00184}{G\+\_\+\+CF\+\_\+\+DIRECT\+\_\+\+SEND}}, \mbox{\hyperlink{geom__subr_8c_source_l01328}{g\+\_\+compare\+\_\+names()}}, \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_l00627}{g\+\_\+concat\+\_\+create()}}, \mbox{\hyperlink{g__concat_8h_source_l00052}{G\+\_\+\+CONCAT\+\_\+\+DEBUG}}, \mbox{\hyperlink{g__concat_8c_source_l00680}{g\+\_\+concat\+\_\+destroy()}}, \mbox{\hyperlink{g__concat_8h_source_l00038}{G\+\_\+\+CONCAT\+\_\+\+MAGIC}}, \mbox{\hyperlink{g__concat_8c_source_l00155}{g\+\_\+concat\+\_\+orphan()}}, \mbox{\hyperlink{g__concat_8c_source_l00500}{g\+\_\+concat\+\_\+read\+\_\+metadata()}}, \mbox{\hyperlink{g__concat_8c_source_l00327}{g\+\_\+concat\+\_\+start()}}, \mbox{\hyperlink{g__concat_8h_source_l00050}{G\+\_\+\+CONCAT\+\_\+\+TYPE\+\_\+\+AUTOMATIC}}, \mbox{\hyperlink{g__concat_8h_source_l00046}{G\+\_\+\+CONCAT\+\_\+\+VERSION}}, \mbox{\hyperlink{geom__subr_8c_source_l00543}{g\+\_\+destroy\+\_\+consumer()}}, \mbox{\hyperlink{geom__subr_8c_source_l00411}{g\+\_\+destroy\+\_\+geom()}}, \mbox{\hyperlink{geom__subr_8c_source_l00913}{g\+\_\+detach()}}, \mbox{\hyperlink{geom__subr_8c_source_l00521}{g\+\_\+new\+\_\+consumer()}}, \mbox{\hyperlink{geom_8h_a4000befe2ff4b405b8333ccc5b0fdb41}{g\+\_\+new\+\_\+geomf()}}, \mbox{\hyperlink{geom_8h_source_l00248}{G\+\_\+\+T\+\_\+\+TOPOLOGY}}, \mbox{\hyperlink{geom_8h_source_l00403}{g\+\_\+topology\+\_\+assert}}, \mbox{\hyperlink{geom_8h_source_l00255}{g\+\_\+trace}}, \mbox{\hyperlink{g__part__if_8m_source_l00195}{gp}}, \mbox{\hyperlink{g__concat_8h_source_l00087}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00084}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+magic}}, \mbox{\hyperlink{g__concat_8h_source_l00086}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+name}}, \mbox{\hyperlink{g__concat_8h_source_l00088}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+no}}, \mbox{\hyperlink{g__concat_8h_source_l00090}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+provider}}, \mbox{\hyperlink{g__concat_8h_source_l00091}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+provsize}}, \mbox{\hyperlink{g__concat_8h_source_l00085}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+version}}, \mbox{\hyperlink{geom_8h_source_l00214}{g\+\_\+provider\+::mediasize}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00103}{mp}}, \mbox{\hyperlink{geom_8h_source_l00095}{g\+\_\+class\+::name}}, \mbox{\hyperlink{geom_8h_source_l00132}{g\+\_\+geom\+::name}}, \mbox{\hyperlink{geom_8h_source_l00207}{g\+\_\+provider\+::name}}, \mbox{\hyperlink{geom_8h_source_l00144}{g\+\_\+geom\+::orphan}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{g__concat_8h_source_l00072}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00069}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+type}}, \mbox{\hyperlink{geom_8h_source_l00150}{g\+\_\+geom\+::softc}}, and \mbox{\hyperlink{geom_8h_source_l00139}{g\+\_\+geom\+::start}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ac2ce406ac76020a1b2cc4327dbbd3553_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_ac4d01d9eba084187a6373433e325ee3b}\label{g__concat_8c_ac4d01d9eba084187a6373433e325ee3b}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_write\_metadata@{g\_concat\_write\_metadata}}
\index{g\_concat\_write\_metadata@{g\_concat\_write\_metadata}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_write\_metadata()}{g\_concat\_write\_metadata()}}
{\footnotesize\ttfamily static void g\+\_\+concat\+\_\+write\+\_\+metadata (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structgctl__req}{gctl\+\_\+req}} $\ast$}]{req,  }\item[{struct \mbox{\hyperlink{structg__concat__softc}{g\+\_\+concat\+\_\+softc}} $\ast$}]{sc }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l01012}{1012}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__concat_8h_source_l00094}{concat\+\_\+metadata\+\_\+encode()}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00132}{disk}}, \mbox{\hyperlink{geom_8h_source_l00212}{g\+\_\+provider\+::error}}, \mbox{\hyperlink{geom__subr_8c_source_l00944}{g\+\_\+access()}}, \mbox{\hyperlink{g__concat_8h_source_l00038}{G\+\_\+\+CONCAT\+\_\+\+MAGIC}}, \mbox{\hyperlink{g__concat_8h_source_l00046}{G\+\_\+\+CONCAT\+\_\+\+VERSION}}, \mbox{\hyperlink{geom_8h_source_l00376}{g\+\_\+free()}}, \mbox{\hyperlink{geom_8h_source_l00367}{g\+\_\+malloc()}}, \mbox{\hyperlink{geom__io_8c_source_l00928}{g\+\_\+write\+\_\+data()}}, \mbox{\hyperlink{geom_8h_a1d51201471b52be7e19a98b0fcb144de}{gctl\+\_\+error()}}, \mbox{\hyperlink{g__concat_8h_source_l00089}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+all}}, \mbox{\hyperlink{g__concat_8h_source_l00087}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00084}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+magic}}, \mbox{\hyperlink{g__concat_8h_source_l00086}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+name}}, \mbox{\hyperlink{g__concat_8h_source_l00088}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+no}}, \mbox{\hyperlink{g__concat_8h_source_l00090}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+provider}}, \mbox{\hyperlink{g__concat_8h_source_l00091}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+provsize}}, \mbox{\hyperlink{g__concat_8h_source_l00085}{g\+\_\+concat\+\_\+metadata\+::md\+\_\+version}}, \mbox{\hyperlink{geom_8h_source_l00214}{g\+\_\+provider\+::mediasize}}, \mbox{\hyperlink{geom_8h_source_l00207}{g\+\_\+provider\+::name}}, \mbox{\hyperlink{g__part__if_8m_source_l00130}{pp}}, \mbox{\hyperlink{g__part__if_8m_source_l00225}{req}}, \mbox{\hyperlink{g__concat_8h_source_l00072}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+id}}, \mbox{\hyperlink{g__concat_8h_source_l00074}{g\+\_\+concat\+\_\+softc\+::sc\+\_\+ndisks}}, and \mbox{\hyperlink{geom_8h_source_l00215}{g\+\_\+provider\+::sectorsize}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l01055}{g\+\_\+concat\+\_\+ctl\+\_\+append()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ac4d01d9eba084187a6373433e325ee3b_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ac4d01d9eba084187a6373433e325ee3b_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_ac07bba9cc14eabdd7b25aff654726d28}\label{g__concat_8c_ac07bba9cc14eabdd7b25aff654726d28}} 
\index{g\_concat.c@{g\_concat.c}!gcd@{gcd}}
\index{gcd@{gcd}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{gcd()}{gcd()}}
{\footnotesize\ttfamily static u\+\_\+int gcd (\begin{DoxyParamCaption}\item[{u\+\_\+int}]{a,  }\item[{u\+\_\+int}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00078}{78}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00094}{lcm()}}.

Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_ac07bba9cc14eabdd7b25aff654726d28_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a692b46e1f064015804ee07d568f88c0d}\label{g__concat_8c_a692b46e1f064015804ee07d568f88c0d}} 
\index{g\_concat.c@{g\_concat.c}!lcm@{lcm}}
\index{lcm@{lcm}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{lcm()}{lcm()}}
{\footnotesize\ttfamily static u\+\_\+int lcm (\begin{DoxyParamCaption}\item[{u\+\_\+int}]{a,  }\item[{u\+\_\+int}]{b }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00094}{94}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



References \mbox{\hyperlink{g__concat_8c_source_l00078}{gcd()}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00442}{g\+\_\+concat\+\_\+check\+\_\+and\+\_\+run()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=185pt]{d7/d70/g__concat_8c_a692b46e1f064015804ee07d568f88c0d_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d7/d70/g__concat_8c_a692b46e1f064015804ee07d568f88c0d_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{g__concat_8c_a03e269246c9cb790b5f48584d1a7fef4}\label{g__concat_8c_a03e269246c9cb790b5f48584d1a7fef4}} 
\index{g\_concat.c@{g\_concat.c}!MALLOC\_DEFINE@{MALLOC\_DEFINE}}
\index{MALLOC\_DEFINE@{MALLOC\_DEFINE}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{MALLOC\_DEFINE()}{MALLOC\_DEFINE()}}
{\footnotesize\ttfamily static MALLOC\+\_\+\+DEFINE (\begin{DoxyParamCaption}\item[{M\+\_\+\+CONCAT}]{,  }\item[{\char`\"{}concat\+\_\+data\char`\"{}}]{,  }\item[{\char`\"{}GEOM\+\_\+\+CONCAT Data\char`\"{}}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\Hypertarget{g__concat_8c_a393022df486cac0d204d4920aa8aaa03}\label{g__concat_8c_a393022df486cac0d204d4920aa8aaa03}} 
\index{g\_concat.c@{g\_concat.c}!MODULE\_VERSION@{MODULE\_VERSION}}
\index{MODULE\_VERSION@{MODULE\_VERSION}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{MODULE\_VERSION()}{MODULE\_VERSION()}}
{\footnotesize\ttfamily MODULE\+\_\+\+VERSION (\begin{DoxyParamCaption}\item[{geom\+\_\+concat}]{,  }\item[{0}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{g__concat_8c_a1e69eaa2ef6048550eaeebcf775a3d0f}\label{g__concat_8c_a1e69eaa2ef6048550eaeebcf775a3d0f}} 
\index{g\_concat.c@{g\_concat.c}!SYSCTL\_DECL@{SYSCTL\_DECL}}
\index{SYSCTL\_DECL@{SYSCTL\_DECL}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{SYSCTL\_DECL()}{SYSCTL\_DECL()}}
{\footnotesize\ttfamily SYSCTL\+\_\+\+DECL (\begin{DoxyParamCaption}\item[{\+\_\+kern\+\_\+geom}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{g__concat_8c_aab2b03f3c9958c68774172f58289652c}\label{g__concat_8c_aab2b03f3c9958c68774172f58289652c}} 
\index{g\_concat.c@{g\_concat.c}!SYSCTL\_NODE@{SYSCTL\_NODE}}
\index{SYSCTL\_NODE@{SYSCTL\_NODE}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{SYSCTL\_NODE()}{SYSCTL\_NODE()}}
{\footnotesize\ttfamily static SYSCTL\+\_\+\+NODE (\begin{DoxyParamCaption}\item[{\+\_\+kern\+\_\+geom}]{,  }\item[{OID\+\_\+\+AUTO}]{,  }\item[{concat}]{,  }\item[{CTLFLAG\+\_\+\+RW$\vert$}]{CTLFLAG\+\_\+\+MPSAFE,  }\item[{0}]{,  }\item[{\char`\"{}GEOM\+\_\+\+CONCAT stuff\char`\"{}}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\Hypertarget{g__concat_8c_a33c91653142d361fbeb6e797eb8323c8}\label{g__concat_8c_a33c91653142d361fbeb6e797eb8323c8}} 
\index{g\_concat.c@{g\_concat.c}!SYSCTL\_UINT@{SYSCTL\_UINT}}
\index{SYSCTL\_UINT@{SYSCTL\_UINT}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{SYSCTL\_UINT()}{SYSCTL\_UINT()}}
{\footnotesize\ttfamily SYSCTL\+\_\+\+UINT (\begin{DoxyParamCaption}\item[{\+\_\+kern\+\_\+geom\+\_\+concat}]{,  }\item[{OID\+\_\+\+AUTO}]{,  }\item[{debug}]{,  }\item[{CTLFLAG\+\_\+\+RWTUN}]{,  }\item[{\&}]{g\+\_\+concat\+\_\+debug,  }\item[{0}]{,  }\item[{\char`\"{}Debug level\char`\"{}}]{ }\end{DoxyParamCaption})}



\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{g__concat_8c_a0c6f3f5208a430303eca088c2c4cac11}\label{g__concat_8c_a0c6f3f5208a430303eca088c2c4cac11}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_class@{g\_concat\_class}}
\index{g\_concat\_class@{g\_concat\_class}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_class}{g\_concat\_class}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structg__class}{g\+\_\+class}} g\+\_\+concat\+\_\+class}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        .name = \mbox{\hyperlink{g__concat_8h_aa43a5a3ab23536ef0afbe611e7207071}{G\_CONCAT\_CLASS\_NAME}},}
\DoxyCodeLine{        .version = \mbox{\hyperlink{geom_8h_a33025dbc893de9dc049ba2f30283bc5a}{G\_VERSION}},}
\DoxyCodeLine{        .ctlreq = \mbox{\hyperlink{g__concat_8c_a1f66dbd3bc05740560f22d142a84d647}{g\_concat\_config}},}
\DoxyCodeLine{        .taste = \mbox{\hyperlink{g__concat_8c_aae5a62de53ab107c8d00bd902c571562}{g\_concat\_taste}},}
\DoxyCodeLine{        .destroy\_geom = \mbox{\hyperlink{g__concat_8c_aa5489164e65635f727d944dde10a7293}{g\_concat\_destroy\_geom}}}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{g__concat_8c_source_l00066}{66}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.

\mbox{\Hypertarget{g__concat_8c_a1f66dbd3bc05740560f22d142a84d647}\label{g__concat_8c_a1f66dbd3bc05740560f22d142a84d647}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_config@{g\_concat\_config}}
\index{g\_concat\_config@{g\_concat\_config}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_config}{g\_concat\_config}}
{\footnotesize\ttfamily \mbox{\hyperlink{geom_8h_a98129532a3f4d0845714f8b272b9da8a}{g\+\_\+ctl\+\_\+req\+\_\+t}} g\+\_\+concat\+\_\+config\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00063}{63}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.

\mbox{\Hypertarget{g__concat_8c_ac65b0a910cc7ea1f43eccdcac1218238}\label{g__concat_8c_ac65b0a910cc7ea1f43eccdcac1218238}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_debug@{g\_concat\_debug}}
\index{g\_concat\_debug@{g\_concat\_debug}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_debug}{g\_concat\_debug}}
{\footnotesize\ttfamily u\+\_\+int g\+\_\+concat\+\_\+debug = 0\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00054}{54}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.

\mbox{\Hypertarget{g__concat_8c_acdf0631a886cc0428f60eb2f7f005c82}\label{g__concat_8c_acdf0631a886cc0428f60eb2f7f005c82}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_dumpconf@{g\_concat\_dumpconf}}
\index{g\_concat\_dumpconf@{g\_concat\_dumpconf}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_dumpconf}{g\_concat\_dumpconf}}
{\footnotesize\ttfamily \mbox{\hyperlink{geom_8h_afdb390a9279523d96cb700a712939f76}{g\+\_\+dumpconf\+\_\+t}} g\+\_\+concat\+\_\+dumpconf\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00064}{64}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.



Referenced by \mbox{\hyperlink{g__concat_8c_source_l00627}{g\+\_\+concat\+\_\+create()}}.

\mbox{\Hypertarget{g__concat_8c_aae5a62de53ab107c8d00bd902c571562}\label{g__concat_8c_aae5a62de53ab107c8d00bd902c571562}} 
\index{g\_concat.c@{g\_concat.c}!g\_concat\_taste@{g\_concat\_taste}}
\index{g\_concat\_taste@{g\_concat\_taste}!g\_concat.c@{g\_concat.c}}
\doxysubsubsection{\texorpdfstring{g\_concat\_taste}{g\_concat\_taste}}
{\footnotesize\ttfamily \mbox{\hyperlink{geom_8h_a631656592e7bd0d9b508904254e8e7a7}{g\+\_\+taste\+\_\+t}} g\+\_\+concat\+\_\+taste\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{g__concat_8c_source_l00062}{62}} of file \mbox{\hyperlink{g__concat_8c_source}{g\+\_\+concat.\+c}}.

