\hypertarget{tr__raid5_8c}{}\doxysection{geom/raid/tr\+\_\+raid5.c File Reference}
\label{tr__raid5_8c}\index{geom/raid/tr\_raid5.c@{geom/raid/tr\_raid5.c}}
{\ttfamily \#include $<$sys/cdefs.\+h$>$}\newline
{\ttfamily \#include $<$sys/param.\+h$>$}\newline
{\ttfamily \#include $<$sys/bio.\+h$>$}\newline
{\ttfamily \#include $<$sys/endian.\+h$>$}\newline
{\ttfamily \#include $<$sys/kernel.\+h$>$}\newline
{\ttfamily \#include $<$sys/kobj.\+h$>$}\newline
{\ttfamily \#include $<$sys/limits.\+h$>$}\newline
{\ttfamily \#include $<$sys/lock.\+h$>$}\newline
{\ttfamily \#include $<$sys/malloc.\+h$>$}\newline
{\ttfamily \#include $<$sys/mutex.\+h$>$}\newline
{\ttfamily \#include $<$sys/sysctl.\+h$>$}\newline
{\ttfamily \#include $<$sys/systm.\+h$>$}\newline
{\ttfamily \#include $<$geom/geom.\+h$>$}\newline
{\ttfamily \#include \char`\"{}geom/raid/g\+\_\+raid.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}g\+\_\+raid\+\_\+tr\+\_\+if.\+h\char`\"{}}\newline
Include dependency graph for tr\+\_\+raid5.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{da/d2d/tr__raid5_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structg__raid__tr__raid5__object}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object}}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{tr__raid5_8c_aaab62ceafab917e41071f88568e4f9b8}{TR\+\_\+\+RAID5\+\_\+\+NONE}}~0
\item 
\#define \mbox{\hyperlink{tr__raid5_8c_ac5a50aa5bcd77114b9d4eed42a3a8546}{TR\+\_\+\+RAID5\+\_\+\+REBUILD}}~1
\item 
\#define \mbox{\hyperlink{tr__raid5_8c_ac3e4c341c34204325983710947bfcbf3}{TR\+\_\+\+RAID5\+\_\+\+RESYNC}}~2
\item 
\#define \mbox{\hyperlink{tr__raid5_8c_ae09660bff90fae4af9f4dd3161c54cad}{TR\+\_\+\+RAID5\+\_\+\+F\+\_\+\+DOING\+\_\+\+SOME}}~0x1
\item 
\#define \mbox{\hyperlink{tr__raid5_8c_a9d875c847fb696f5db7698eca8c3c902}{TR\+\_\+\+RAID5\+\_\+\+F\+\_\+\+LOCKED}}~0x2
\item 
\#define \mbox{\hyperlink{tr__raid5_8c_a6142269b43efb5276fd21bdb8a84781f}{TR\+\_\+\+RAID5\+\_\+\+F\+\_\+\+ABORT}}~0x4
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{tr__raid5_8c_a8c3ef283470a68cd30afe9b8a72cb60f}{\+\_\+\+\_\+\+FBSDID}} (\char`\"{}\$Free\+BSD\$\char`\"{})
\item 
static \mbox{\hyperlink{tr__raid5_8c_af1aa04d6b324d930ae6c20ba1237a512}{MALLOC\+\_\+\+DEFINE}} (M\+\_\+\+TR\+\_\+\+RAID5, \char`\"{}tr\+\_\+raid5\+\_\+data\char`\"{}, \char`\"{}GEOM\+\_\+\+RAID RAID5 \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}\char`\"{})
\item 
static int \mbox{\hyperlink{tr__raid5_8c_a37910ac60783ea87b9f9d059017af3be}{g\+\_\+raid\+\_\+tr\+\_\+taste\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr, struct \mbox{\hyperlink{structg__raid__volume}{g\+\_\+raid\+\_\+volume}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_aaa46aabd2a891668d71cec64e90b4848}{vol}})
\item 
static int \mbox{\hyperlink{tr__raid5_8c_a510a1e68002060a03c5ee38235b544a8}{g\+\_\+raid\+\_\+tr\+\_\+update\+\_\+state\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__volume}{g\+\_\+raid\+\_\+volume}} $\ast$\mbox{\hyperlink{g__raid__md__if_8m_aaa46aabd2a891668d71cec64e90b4848}{vol}}, struct \mbox{\hyperlink{structg__raid__subdisk}{g\+\_\+raid\+\_\+subdisk}} $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_aa43118f4c81eadd0575e205732a9aae8}{sd}})
\item 
static int \mbox{\hyperlink{tr__raid5_8c_ab3df1ebaff3c31db70533500d102c5a8}{g\+\_\+raid\+\_\+tr\+\_\+event\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr, struct \mbox{\hyperlink{structg__raid__subdisk}{g\+\_\+raid\+\_\+subdisk}} $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_aa43118f4c81eadd0575e205732a9aae8}{sd}}, u\+\_\+int \mbox{\hyperlink{g__raid__tr__if_8m_a683a43faabf5ffc974caacd425b678d0}{event}})
\item 
static int \mbox{\hyperlink{tr__raid5_8c_a6b067cdf259019d2e1bd8923a325adfb}{g\+\_\+raid\+\_\+tr\+\_\+start\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr)
\item 
static int \mbox{\hyperlink{tr__raid5_8c_a0ca4004c07630a1173d305d0d5972222}{g\+\_\+raid\+\_\+tr\+\_\+stop\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr)
\item 
static void \mbox{\hyperlink{tr__raid5_8c_af737e92da8fabdb5dfb13c99edc18c28}{g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5\+\_\+read}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr, struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static void \mbox{\hyperlink{tr__raid5_8c_a5d0842ebd38b3a07eb9b57119ec6bc20}{g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr, struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static void \mbox{\hyperlink{tr__raid5_8c_a41eecbda7754f56deade3a138eacd487}{g\+\_\+raid\+\_\+tr\+\_\+iodone\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr, struct \mbox{\hyperlink{structg__raid__subdisk}{g\+\_\+raid\+\_\+subdisk}} $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_aa43118f4c81eadd0575e205732a9aae8}{sd}}, struct bio $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a09ac99485c68908acb7b8767e2b93e80}{bp}})
\item 
static int \mbox{\hyperlink{tr__raid5_8c_a44200b86ddc1cbc610d556111c96fbcf}{g\+\_\+raid\+\_\+tr\+\_\+kerneldump\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr, void $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a6a0ea2231d30f2b025e0c4b9f12dd6db}{virtual}}, vm\+\_\+offset\+\_\+t \mbox{\hyperlink{g__raid__tr__if_8m_a27729ff5ed96d4c7c45950d01a07c654}{physical}}, off\+\_\+t \mbox{\hyperlink{g__raid__tr__if_8m_ad5f0842c40c7e46344fd8df70187fa0f}{offset}}, size\+\_\+t \mbox{\hyperlink{g__raid__tr__if_8m_ae809d5359ac030c60a30a8f0b2294b82}{length}})
\item 
static int \mbox{\hyperlink{tr__raid5_8c_af730b2dcffef1f67d8e3bb4510f405d8}{g\+\_\+raid\+\_\+tr\+\_\+locked\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr, void $\ast$\mbox{\hyperlink{g__raid__tr__if_8m_a246ef34fa2df332898e5b96c81d46f5e}{argp}})
\item 
static int \mbox{\hyperlink{tr__raid5_8c_a6ab22a73b14be60fc42b3dd567547378}{g\+\_\+raid\+\_\+tr\+\_\+free\+\_\+raid5}} (struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$tr)
\item 
\mbox{\hyperlink{tr__raid5_8c_ac2207634e540d5b5226fcdbcb851aa42}{G\+\_\+\+RAID\+\_\+\+TR\+\_\+\+DECLARE}} (raid5, \char`\"{}RAID5\char`\"{})
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+taste\+\_\+t \mbox{\hyperlink{tr__raid5_8c_adc7b5d24d265b4f758aba6724b4cba99}{g\+\_\+raid\+\_\+tr\+\_\+taste\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+event\+\_\+t \mbox{\hyperlink{tr__raid5_8c_ae01f5a3626089483b477de9e8bcdfa6e}{g\+\_\+raid\+\_\+tr\+\_\+event\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+start\+\_\+t \mbox{\hyperlink{tr__raid5_8c_ad57246b0f8eca2206254af3d173d3f8d}{g\+\_\+raid\+\_\+tr\+\_\+start\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+stop\+\_\+t \mbox{\hyperlink{tr__raid5_8c_a14eff69c4065bf361995a7411dd25951}{g\+\_\+raid\+\_\+tr\+\_\+stop\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+t \mbox{\hyperlink{tr__raid5_8c_a46c7b306a519f68b1187d1f95c4d2caf}{g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+iodone\+\_\+t \mbox{\hyperlink{tr__raid5_8c_a02a69136bbe11631708eb9f2d30a26d3}{g\+\_\+raid\+\_\+tr\+\_\+iodone\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+kerneldump\+\_\+t \mbox{\hyperlink{tr__raid5_8c_a9bafe0d87ee6ccda607d63037c3572bf}{g\+\_\+raid\+\_\+tr\+\_\+kerneldump\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+locked\+\_\+t \mbox{\hyperlink{tr__raid5_8c_abd0c52e71000d1e4fd7b341240de9705}{g\+\_\+raid\+\_\+tr\+\_\+locked\+\_\+raid5}}
\item 
static g\+\_\+raid\+\_\+tr\+\_\+free\+\_\+t \mbox{\hyperlink{tr__raid5_8c_a74ddc1abc50c0342ab2518d307d5781c}{g\+\_\+raid\+\_\+tr\+\_\+free\+\_\+raid5}}
\item 
static kobj\+\_\+method\+\_\+t \mbox{\hyperlink{tr__raid5_8c_a2d43a2496ec6a284a985489ecd1c78c0}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+methods}} \mbox{[}$\,$\mbox{]}
\item 
static struct \mbox{\hyperlink{structg__raid__tr__class}{g\+\_\+raid\+\_\+tr\+\_\+class}} \mbox{\hyperlink{tr__raid5_8c_aeb07c2a213b2a33bff7cdf1444fc92bc}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+class}}
\end{DoxyCompactItemize}


\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{tr__raid5_8c_a6142269b43efb5276fd21bdb8a84781f}\label{tr__raid5_8c_a6142269b43efb5276fd21bdb8a84781f}} 
\index{tr\_raid5.c@{tr\_raid5.c}!TR\_RAID5\_F\_ABORT@{TR\_RAID5\_F\_ABORT}}
\index{TR\_RAID5\_F\_ABORT@{TR\_RAID5\_F\_ABORT}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{TR\_RAID5\_F\_ABORT}{TR\_RAID5\_F\_ABORT}}
{\footnotesize\ttfamily \#define TR\+\_\+\+RAID5\+\_\+\+F\+\_\+\+ABORT~0x4}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00055}{55}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_ae09660bff90fae4af9f4dd3161c54cad}\label{tr__raid5_8c_ae09660bff90fae4af9f4dd3161c54cad}} 
\index{tr\_raid5.c@{tr\_raid5.c}!TR\_RAID5\_F\_DOING\_SOME@{TR\_RAID5\_F\_DOING\_SOME}}
\index{TR\_RAID5\_F\_DOING\_SOME@{TR\_RAID5\_F\_DOING\_SOME}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{TR\_RAID5\_F\_DOING\_SOME}{TR\_RAID5\_F\_DOING\_SOME}}
{\footnotesize\ttfamily \#define TR\+\_\+\+RAID5\+\_\+\+F\+\_\+\+DOING\+\_\+\+SOME~0x1}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00053}{53}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_a9d875c847fb696f5db7698eca8c3c902}\label{tr__raid5_8c_a9d875c847fb696f5db7698eca8c3c902}} 
\index{tr\_raid5.c@{tr\_raid5.c}!TR\_RAID5\_F\_LOCKED@{TR\_RAID5\_F\_LOCKED}}
\index{TR\_RAID5\_F\_LOCKED@{TR\_RAID5\_F\_LOCKED}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{TR\_RAID5\_F\_LOCKED}{TR\_RAID5\_F\_LOCKED}}
{\footnotesize\ttfamily \#define TR\+\_\+\+RAID5\+\_\+\+F\+\_\+\+LOCKED~0x2}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00054}{54}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_aaab62ceafab917e41071f88568e4f9b8}\label{tr__raid5_8c_aaab62ceafab917e41071f88568e4f9b8}} 
\index{tr\_raid5.c@{tr\_raid5.c}!TR\_RAID5\_NONE@{TR\_RAID5\_NONE}}
\index{TR\_RAID5\_NONE@{TR\_RAID5\_NONE}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{TR\_RAID5\_NONE}{TR\_RAID5\_NONE}}
{\footnotesize\ttfamily \#define TR\+\_\+\+RAID5\+\_\+\+NONE~0}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00049}{49}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_ac5a50aa5bcd77114b9d4eed42a3a8546}\label{tr__raid5_8c_ac5a50aa5bcd77114b9d4eed42a3a8546}} 
\index{tr\_raid5.c@{tr\_raid5.c}!TR\_RAID5\_REBUILD@{TR\_RAID5\_REBUILD}}
\index{TR\_RAID5\_REBUILD@{TR\_RAID5\_REBUILD}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{TR\_RAID5\_REBUILD}{TR\_RAID5\_REBUILD}}
{\footnotesize\ttfamily \#define TR\+\_\+\+RAID5\+\_\+\+REBUILD~1}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00050}{50}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_ac3e4c341c34204325983710947bfcbf3}\label{tr__raid5_8c_ac3e4c341c34204325983710947bfcbf3}} 
\index{tr\_raid5.c@{tr\_raid5.c}!TR\_RAID5\_RESYNC@{TR\_RAID5\_RESYNC}}
\index{TR\_RAID5\_RESYNC@{TR\_RAID5\_RESYNC}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{TR\_RAID5\_RESYNC}{TR\_RAID5\_RESYNC}}
{\footnotesize\ttfamily \#define TR\+\_\+\+RAID5\+\_\+\+RESYNC~2}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00051}{51}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



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

\mbox{\Hypertarget{tr__raid5_8c_ac2207634e540d5b5226fcdbcb851aa42}\label{tr__raid5_8c_ac2207634e540d5b5226fcdbcb851aa42}} 
\index{tr\_raid5.c@{tr\_raid5.c}!G\_RAID\_TR\_DECLARE@{G\_RAID\_TR\_DECLARE}}
\index{G\_RAID\_TR\_DECLARE@{G\_RAID\_TR\_DECLARE}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{G\_RAID\_TR\_DECLARE()}{G\_RAID\_TR\_DECLARE()}}
{\footnotesize\ttfamily G\+\_\+\+RAID\+\_\+\+TR\+\_\+\+DECLARE (\begin{DoxyParamCaption}\item[{raid5}]{,  }\item[{\char`\"{}RAID5\char`\"{}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{tr__raid5_8c_ab3df1ebaff3c31db70533500d102c5a8}\label{tr__raid5_8c_ab3df1ebaff3c31db70533500d102c5a8}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_event\_raid5@{g\_raid\_tr\_event\_raid5}}
\index{g\_raid\_tr\_event\_raid5@{g\_raid\_tr\_event\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_event\_raid5()}{g\_raid\_tr\_event\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+event\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr,  }\item[{struct \mbox{\hyperlink{structg__raid__subdisk}{g\+\_\+raid\+\_\+subdisk}} $\ast$}]{sd,  }\item[{u\+\_\+int}]{event }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00175}{175}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{tr__raid5_8c_source_l00132}{g\+\_\+raid\+\_\+tr\+\_\+update\+\_\+state\+\_\+raid5()}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00147}{sd}}, and \mbox{\hyperlink{g__raid_8h_source_l00364}{g\+\_\+raid\+\_\+tr\+\_\+object\+::tro\+\_\+volume}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_ab3df1ebaff3c31db70533500d102c5a8_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_a6ab22a73b14be60fc42b3dd567547378}\label{tr__raid5_8c_a6ab22a73b14be60fc42b3dd567547378}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_free\_raid5@{g\_raid\_tr\_free\_raid5}}
\index{g\_raid\_tr\_free\_raid5@{g\_raid\_tr\_free\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_free\_raid5()}{g\_raid\_tr\_free\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+free\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00409}{409}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{g__raid__md__if_8m_source_l00171}{free}}, and \mbox{\hyperlink{tr__raid5_8c_source_l00067}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+buffer}}.

\mbox{\Hypertarget{tr__raid5_8c_a41eecbda7754f56deade3a138eacd487}\label{tr__raid5_8c_a41eecbda7754f56deade3a138eacd487}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_iodone\_raid5@{g\_raid\_tr\_iodone\_raid5}}
\index{g\_raid\_tr\_iodone\_raid5@{g\_raid\_tr\_iodone\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_iodone\_raid5()}{g\_raid\_tr\_iodone\_raid5()}}
{\footnotesize\ttfamily static void g\+\_\+raid\+\_\+tr\+\_\+iodone\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr,  }\item[{struct \mbox{\hyperlink{structg__raid__subdisk}{g\+\_\+raid\+\_\+subdisk}} $\ast$}]{sd,  }\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00371}{371}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{geom__io_8c_source_l00176}{g\+\_\+destroy\+\_\+bio()}}, and \mbox{\hyperlink{g__raid_8c_source_l01259}{g\+\_\+raid\+\_\+iodone()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_a41eecbda7754f56deade3a138eacd487_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_a5d0842ebd38b3a07eb9b57119ec6bc20}\label{tr__raid5_8c_a5d0842ebd38b3a07eb9b57119ec6bc20}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_iostart\_raid5@{g\_raid\_tr\_iostart\_raid5}}
\index{g\_raid\_tr\_iostart\_raid5@{g\_raid\_tr\_iostart\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_iostart\_raid5()}{g\_raid\_tr\_iostart\_raid5()}}
{\footnotesize\ttfamily static void g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr,  }\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00344}{344}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{g__raid_8c_source_l01259}{g\+\_\+raid\+\_\+iodone()}}, \mbox{\hyperlink{tr__raid5_8c_source_l00212}{g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5\+\_\+read()}}, \mbox{\hyperlink{g__raid_8h_source_l00183}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+SUBOPTIMAL}}, \mbox{\hyperlink{g__raid_8h_source_l00364}{g\+\_\+raid\+\_\+tr\+\_\+object\+::tro\+\_\+volume}}, \mbox{\hyperlink{g__raid_8h_source_l00257}{g\+\_\+raid\+\_\+volume\+::v\+\_\+name}}, \mbox{\hyperlink{g__raid_8h_source_l00259}{g\+\_\+raid\+\_\+volume\+::v\+\_\+state}}, and \mbox{\hyperlink{g__raid__md__if_8m_source_l00139}{vol}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_a5d0842ebd38b3a07eb9b57119ec6bc20_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_af737e92da8fabdb5dfb13c99edc18c28}\label{tr__raid5_8c_af737e92da8fabdb5dfb13c99edc18c28}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_iostart\_raid5\_read@{g\_raid\_tr\_iostart\_raid5\_read}}
\index{g\_raid\_tr\_iostart\_raid5\_read@{g\_raid\_tr\_iostart\_raid5\_read}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_iostart\_raid5\_read()}{g\_raid\_tr\_iostart\_raid5\_read()}}
{\footnotesize\ttfamily static void g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5\+\_\+read (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr,  }\item[{struct bio $\ast$}]{bp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00212}{212}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{geom__io_8c_source_l00191}{g\+\_\+clone\+\_\+bio()}}, \mbox{\hyperlink{geom__io_8c_source_l00176}{g\+\_\+destroy\+\_\+bio()}}, \mbox{\hyperlink{g__raid_8c_source_l01259}{g\+\_\+raid\+\_\+iodone()}}, \mbox{\hyperlink{g__raid_8c_source_l01352}{g\+\_\+raid\+\_\+subdisk\+\_\+iostart()}}, \mbox{\hyperlink{g__raid_8h_source_l00201}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID4}}, \mbox{\hyperlink{g__raid_8h_source_l00209}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID5\+EE}}, \mbox{\hyperlink{g__raid_8h_source_l00203}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID6}}, \mbox{\hyperlink{g__raid_8h_source_l00204}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAIDMDF}}, \mbox{\hyperlink{g__raid__tr__if_8m_source_l00100}{length}}, \mbox{\hyperlink{g__raid__tr__if_8m_source_l00099}{offset}}, \mbox{\hyperlink{g__raid__md__if_8m_source_l00147}{sd}}, \mbox{\hyperlink{g__raid__tr__if_8m_source_l00072}{start}}, \mbox{\hyperlink{g__raid_8h_source_l00364}{g\+\_\+raid\+\_\+tr\+\_\+object\+::tro\+\_\+volume}}, \mbox{\hyperlink{g__raid_8h_source_l00262}{g\+\_\+raid\+\_\+volume\+::v\+\_\+disks\+\_\+count}}, \mbox{\hyperlink{g__raid_8h_source_l00263}{g\+\_\+raid\+\_\+volume\+::v\+\_\+mdf\+\_\+pdisks}}, \mbox{\hyperlink{g__raid_8h_source_l00260}{g\+\_\+raid\+\_\+volume\+::v\+\_\+raid\+\_\+level}}, \mbox{\hyperlink{g__raid_8h_source_l00261}{g\+\_\+raid\+\_\+volume\+::v\+\_\+raid\+\_\+level\+\_\+qualifier}}, \mbox{\hyperlink{g__raid_8h_source_l00268}{g\+\_\+raid\+\_\+volume\+::v\+\_\+rotate\+\_\+parity}}, \mbox{\hyperlink{g__raid_8h_source_l00267}{g\+\_\+raid\+\_\+volume\+::v\+\_\+strip\+\_\+size}}, \mbox{\hyperlink{g__raid_8h_source_l00253}{g\+\_\+raid\+\_\+volume\+::v\+\_\+subdisks}}, and \mbox{\hyperlink{g__raid__md__if_8m_source_l00139}{vol}}.



Referenced by \mbox{\hyperlink{tr__raid5_8c_source_l00344}{g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_af737e92da8fabdb5dfb13c99edc18c28_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_af737e92da8fabdb5dfb13c99edc18c28_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_a44200b86ddc1cbc610d556111c96fbcf}\label{tr__raid5_8c_a44200b86ddc1cbc610d556111c96fbcf}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_kerneldump\_raid5@{g\_raid\_tr\_kerneldump\_raid5}}
\index{g\_raid\_tr\_kerneldump\_raid5@{g\_raid\_tr\_kerneldump\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_kerneldump\_raid5()}{g\_raid\_tr\_kerneldump\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+kerneldump\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr,  }\item[{void $\ast$}]{virtual,  }\item[{vm\+\_\+offset\+\_\+t}]{physical,  }\item[{off\+\_\+t}]{offset,  }\item[{size\+\_\+t}]{length }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00388}{388}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_af730b2dcffef1f67d8e3bb4510f405d8}\label{tr__raid5_8c_af730b2dcffef1f67d8e3bb4510f405d8}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_locked\_raid5@{g\_raid\_tr\_locked\_raid5}}
\index{g\_raid\_tr\_locked\_raid5@{g\_raid\_tr\_locked\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_locked\_raid5()}{g\_raid\_tr\_locked\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+locked\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr,  }\item[{void $\ast$}]{argp }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00396}{396}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{g__raid__tr__if_8m_source_l00106}{argp}}, \mbox{\hyperlink{g__part__if_8m_source_l00274}{bp}}, \mbox{\hyperlink{g__raid_8c_source_l01352}{g\+\_\+raid\+\_\+subdisk\+\_\+iostart()}}, and \mbox{\hyperlink{g__raid__md__if_8m_source_l00147}{sd}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_af730b2dcffef1f67d8e3bb4510f405d8_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_a6b067cdf259019d2e1bd8923a325adfb}\label{tr__raid5_8c_a6b067cdf259019d2e1bd8923a325adfb}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_start\_raid5@{g\_raid\_tr\_start\_raid5}}
\index{g\_raid\_tr\_start\_raid5@{g\_raid\_tr\_start\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_start\_raid5()}{g\_raid\_tr\_start\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+start\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00184}{184}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{tr__raid5_8c_source_l00132}{g\+\_\+raid\+\_\+tr\+\_\+update\+\_\+state\+\_\+raid5()}}, \mbox{\hyperlink{g__raid_8h_source_l00364}{g\+\_\+raid\+\_\+tr\+\_\+object\+::tro\+\_\+volume}}, \mbox{\hyperlink{tr__raid5_8c_source_l00059}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+starting}}, \mbox{\hyperlink{g__raid_8h_source_l00285}{g\+\_\+raid\+\_\+volume\+::v\+\_\+read\+\_\+only}}, and \mbox{\hyperlink{g__raid__md__if_8m_source_l00139}{vol}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_a6b067cdf259019d2e1bd8923a325adfb_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_a0ca4004c07630a1173d305d0d5972222}\label{tr__raid5_8c_a0ca4004c07630a1173d305d0d5972222}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_stop\_raid5@{g\_raid\_tr\_stop\_raid5}}
\index{g\_raid\_tr\_stop\_raid5@{g\_raid\_tr\_stop\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_stop\_raid5()}{g\_raid\_tr\_stop\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+stop\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00198}{198}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{tr__raid5_8c_source_l00132}{g\+\_\+raid\+\_\+tr\+\_\+update\+\_\+state\+\_\+raid5()}}, \mbox{\hyperlink{g__raid_8h_source_l00364}{g\+\_\+raid\+\_\+tr\+\_\+object\+::tro\+\_\+volume}}, \mbox{\hyperlink{tr__raid5_8c_source_l00059}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+starting}}, \mbox{\hyperlink{tr__raid5_8c_source_l00060}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+stopping}}, and \mbox{\hyperlink{g__raid__md__if_8m_source_l00139}{vol}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_a0ca4004c07630a1173d305d0d5972222_cgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_a37910ac60783ea87b9f9d059017af3be}\label{tr__raid5_8c_a37910ac60783ea87b9f9d059017af3be}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_taste\_raid5@{g\_raid\_tr\_taste\_raid5}}
\index{g\_raid\_tr\_taste\_raid5@{g\_raid\_tr\_taste\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_taste\_raid5()}{g\_raid\_tr\_taste\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+taste\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__tr__object}{g\+\_\+raid\+\_\+tr\+\_\+object}} $\ast$}]{tr,  }\item[{struct \mbox{\hyperlink{structg__raid__volume}{g\+\_\+raid\+\_\+volume}} $\ast$}]{vol }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00103}{103}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{g__raid__tr__if_8m_a6d6fd1743789570a3aab513506428e85}{G\+\_\+\+RAID\+\_\+\+TR\+\_\+\+TASTE\+\_\+\+FAIL}}, \mbox{\hyperlink{g__raid__tr__if_8m_a39400a4126bc301e1c305060bfb7c250}{G\+\_\+\+RAID\+\_\+\+TR\+\_\+\+TASTE\+\_\+\+SUCCEED}}, \mbox{\hyperlink{g__raid_8h_source_l00201}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID4}}, \mbox{\hyperlink{g__raid_8h_source_l00202}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID5}}, \mbox{\hyperlink{g__raid_8h_source_l00208}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID5E}}, \mbox{\hyperlink{g__raid_8h_source_l00209}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID5\+EE}}, \mbox{\hyperlink{g__raid_8h_source_l00210}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID5R}}, \mbox{\hyperlink{g__raid_8h_source_l00203}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAID6}}, \mbox{\hyperlink{g__raid_8h_source_l00204}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RL\+\_\+\+RAIDMDF}}, \mbox{\hyperlink{g__raid_8h_source_l00218}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RLQ\+\_\+\+R4\+P0}}, \mbox{\hyperlink{g__raid_8h_source_l00219}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RLQ\+\_\+\+R4\+PN}}, \mbox{\hyperlink{g__raid_8h_source_l00222}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RLQ\+\_\+\+R5\+LA}}, \mbox{\hyperlink{g__raid_8h_source_l00223}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RLQ\+\_\+\+R5\+LS}}, \mbox{\hyperlink{g__raid_8h_source_l00220}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RLQ\+\_\+\+R5\+RA}}, \mbox{\hyperlink{g__raid_8h_source_l00221}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+RLQ\+\_\+\+R5\+RS}}, \mbox{\hyperlink{g__raid_8h_source_l00364}{g\+\_\+raid\+\_\+tr\+\_\+object\+::tro\+\_\+volume}}, \mbox{\hyperlink{tr__raid5_8c_source_l00059}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+starting}}, \mbox{\hyperlink{g__raid_8h_source_l00260}{g\+\_\+raid\+\_\+volume\+::v\+\_\+raid\+\_\+level}}, and \mbox{\hyperlink{g__raid_8h_source_l00261}{g\+\_\+raid\+\_\+volume\+::v\+\_\+raid\+\_\+level\+\_\+qualifier}}.

\mbox{\Hypertarget{tr__raid5_8c_a510a1e68002060a03c5ee38235b544a8}\label{tr__raid5_8c_a510a1e68002060a03c5ee38235b544a8}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_update\_state\_raid5@{g\_raid\_tr\_update\_state\_raid5}}
\index{g\_raid\_tr\_update\_state\_raid5@{g\_raid\_tr\_update\_state\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_update\_state\_raid5()}{g\_raid\_tr\_update\_state\_raid5()}}
{\footnotesize\ttfamily static int g\+\_\+raid\+\_\+tr\+\_\+update\+\_\+state\+\_\+raid5 (\begin{DoxyParamCaption}\item[{struct \mbox{\hyperlink{structg__raid__volume}{g\+\_\+raid\+\_\+volume}} $\ast$}]{vol,  }\item[{struct \mbox{\hyperlink{structg__raid__subdisk}{g\+\_\+raid\+\_\+subdisk}} $\ast$}]{sd }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00132}{132}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.



References \mbox{\hyperlink{g__raid_8c_source_l00590}{g\+\_\+raid\+\_\+change\+\_\+volume\+\_\+state()}}, \mbox{\hyperlink{g__raid_8c_source_l00614}{g\+\_\+raid\+\_\+event\+\_\+send()}}, \mbox{\hyperlink{g__raid_8h_source_l00106}{G\+\_\+\+RAID\+\_\+\+EVENT\+\_\+\+VOLUME}}, \mbox{\hyperlink{g__raid_8c_source_l00726}{g\+\_\+raid\+\_\+nsubdisks()}}, \mbox{\hyperlink{g__raid_8h_source_l00150}{G\+\_\+\+RAID\+\_\+\+SUBDISK\+\_\+\+S\+\_\+\+ACTIVE}}, \mbox{\hyperlink{g__raid_8h_source_l00149}{G\+\_\+\+RAID\+\_\+\+SUBDISK\+\_\+\+S\+\_\+\+RESYNC}}, \mbox{\hyperlink{g__raid_8h_source_l00148}{G\+\_\+\+RAID\+\_\+\+SUBDISK\+\_\+\+S\+\_\+\+STALE}}, \mbox{\hyperlink{g__raid_8h_source_l00147}{G\+\_\+\+RAID\+\_\+\+SUBDISK\+\_\+\+S\+\_\+\+UNINITIALIZED}}, \mbox{\hyperlink{g__raid_8h_source_l00193}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+E\+\_\+\+DOWN}}, \mbox{\hyperlink{g__raid_8h_source_l00194}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+E\+\_\+\+UP}}, \mbox{\hyperlink{g__raid_8h_source_l00188}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+ALIVE}}, \mbox{\hyperlink{g__raid_8h_source_l00181}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+BROKEN}}, \mbox{\hyperlink{g__raid_8h_source_l00182}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+DEGRADED}}, \mbox{\hyperlink{g__raid_8h_source_l00184}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+OPTIMAL}}, \mbox{\hyperlink{g__raid_8h_source_l00180}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+STARTING}}, \mbox{\hyperlink{g__raid_8h_source_l00186}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+STOPPED}}, \mbox{\hyperlink{g__raid_8h_source_l00183}{G\+\_\+\+RAID\+\_\+\+VOLUME\+\_\+\+S\+\_\+\+SUBOPTIMAL}}, \mbox{\hyperlink{g__raid_8c_source_l02304}{g\+\_\+raid\+\_\+write\+\_\+metadata()}}, \mbox{\hyperlink{tr__raid5_8c_source_l00053}{TR\+\_\+\+RAID5\+\_\+\+F\+\_\+\+DOING\+\_\+\+SOME}}, \mbox{\hyperlink{tr__raid5_8c_source_l00065}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+flags}}, \mbox{\hyperlink{tr__raid5_8c_source_l00059}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+starting}}, \mbox{\hyperlink{tr__raid5_8c_source_l00060}{g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+object\+::trso\+\_\+stopping}}, \mbox{\hyperlink{g__raid_8h_source_l00262}{g\+\_\+raid\+\_\+volume\+::v\+\_\+disks\+\_\+count}}, \mbox{\hyperlink{g__raid_8h_source_l00251}{g\+\_\+raid\+\_\+volume\+::v\+\_\+softc}}, \mbox{\hyperlink{g__raid_8h_source_l00259}{g\+\_\+raid\+\_\+volume\+::v\+\_\+state}}, \mbox{\hyperlink{g__raid_8h_source_l00256}{g\+\_\+raid\+\_\+volume\+::v\+\_\+tr}}, and \mbox{\hyperlink{g__raid__md__if_8m_source_l00139}{vol}}.



Referenced by \mbox{\hyperlink{tr__raid5_8c_source_l00175}{g\+\_\+raid\+\_\+tr\+\_\+event\+\_\+raid5()}}, \mbox{\hyperlink{tr__raid5_8c_source_l00184}{g\+\_\+raid\+\_\+tr\+\_\+start\+\_\+raid5()}}, and \mbox{\hyperlink{tr__raid5_8c_source_l00198}{g\+\_\+raid\+\_\+tr\+\_\+stop\+\_\+raid5()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_a510a1e68002060a03c5ee38235b544a8_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{df/df0/tr__raid5_8c_a510a1e68002060a03c5ee38235b544a8_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{tr__raid5_8c_af1aa04d6b324d930ae6c20ba1237a512}\label{tr__raid5_8c_af1aa04d6b324d930ae6c20ba1237a512}} 
\index{tr\_raid5.c@{tr\_raid5.c}!MALLOC\_DEFINE@{MALLOC\_DEFINE}}
\index{MALLOC\_DEFINE@{MALLOC\_DEFINE}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{MALLOC\_DEFINE()}{MALLOC\_DEFINE()}}
{\footnotesize\ttfamily static MALLOC\+\_\+\+DEFINE (\begin{DoxyParamCaption}\item[{M\+\_\+\+TR\+\_\+\+RAID5}]{,  }\item[{\char`\"{}tr\+\_\+raid5\+\_\+data\char`\"{}}]{,  }\item[{\char`\"{}GEOM\+\_\+\+RAID RAID5 \mbox{\hyperlink{g__part__if_8m_a735984d41155bc1032e09bece8f8d66d}{data}}\char`\"{}}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{tr__raid5_8c_ae01f5a3626089483b477de9e8bcdfa6e}\label{tr__raid5_8c_ae01f5a3626089483b477de9e8bcdfa6e}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_event\_raid5@{g\_raid\_tr\_event\_raid5}}
\index{g\_raid\_tr\_event\_raid5@{g\_raid\_tr\_event\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_event\_raid5}{g\_raid\_tr\_event\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+event\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+event\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00072}{72}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_a74ddc1abc50c0342ab2518d307d5781c}\label{tr__raid5_8c_a74ddc1abc50c0342ab2518d307d5781c}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_free\_raid5@{g\_raid\_tr\_free\_raid5}}
\index{g\_raid\_tr\_free\_raid5@{g\_raid\_tr\_free\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_free\_raid5}{g\_raid\_tr\_free\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+free\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+free\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00079}{79}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_a02a69136bbe11631708eb9f2d30a26d3}\label{tr__raid5_8c_a02a69136bbe11631708eb9f2d30a26d3}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_iodone\_raid5@{g\_raid\_tr\_iodone\_raid5}}
\index{g\_raid\_tr\_iodone\_raid5@{g\_raid\_tr\_iodone\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_iodone\_raid5}{g\_raid\_tr\_iodone\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+iodone\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+iodone\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00076}{76}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_a46c7b306a519f68b1187d1f95c4d2caf}\label{tr__raid5_8c_a46c7b306a519f68b1187d1f95c4d2caf}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_iostart\_raid5@{g\_raid\_tr\_iostart\_raid5}}
\index{g\_raid\_tr\_iostart\_raid5@{g\_raid\_tr\_iostart\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_iostart\_raid5}{g\_raid\_tr\_iostart\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+iostart\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00075}{75}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_a9bafe0d87ee6ccda607d63037c3572bf}\label{tr__raid5_8c_a9bafe0d87ee6ccda607d63037c3572bf}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_kerneldump\_raid5@{g\_raid\_tr\_kerneldump\_raid5}}
\index{g\_raid\_tr\_kerneldump\_raid5@{g\_raid\_tr\_kerneldump\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_kerneldump\_raid5}{g\_raid\_tr\_kerneldump\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+kerneldump\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+kerneldump\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00077}{77}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_abd0c52e71000d1e4fd7b341240de9705}\label{tr__raid5_8c_abd0c52e71000d1e4fd7b341240de9705}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_locked\_raid5@{g\_raid\_tr\_locked\_raid5}}
\index{g\_raid\_tr\_locked\_raid5@{g\_raid\_tr\_locked\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_locked\_raid5}{g\_raid\_tr\_locked\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+locked\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+locked\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00078}{78}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_aeb07c2a213b2a33bff7cdf1444fc92bc}\label{tr__raid5_8c_aeb07c2a213b2a33bff7cdf1444fc92bc}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_raid5\_class@{g\_raid\_tr\_raid5\_class}}
\index{g\_raid\_tr\_raid5\_class@{g\_raid\_tr\_raid5\_class}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_raid5\_class}{g\_raid\_tr\_raid5\_class}}
{\footnotesize\ttfamily struct \mbox{\hyperlink{structg__raid__tr__class}{g\+\_\+raid\+\_\+tr\+\_\+class}} g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+class\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        \textcolor{stringliteral}{"{}RAID5"{}},}
\DoxyCodeLine{        \mbox{\hyperlink{tr__raid5_8c_a2d43a2496ec6a284a985489ecd1c78c0}{g\_raid\_tr\_raid5\_methods}},}
\DoxyCodeLine{        \textcolor{keyword}{sizeof}(\textcolor{keyword}{struct }\mbox{\hyperlink{structg__raid__tr__raid5__object}{g\_raid\_tr\_raid5\_object}}),}
\DoxyCodeLine{        .trc\_enable = 1,}
\DoxyCodeLine{        .trc\_priority = 100}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00094}{94}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_a2d43a2496ec6a284a985489ecd1c78c0}\label{tr__raid5_8c_a2d43a2496ec6a284a985489ecd1c78c0}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_raid5\_methods@{g\_raid\_tr\_raid5\_methods}}
\index{g\_raid\_tr\_raid5\_methods@{g\_raid\_tr\_raid5\_methods}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_raid5\_methods}{g\_raid\_tr\_raid5\_methods}}
{\footnotesize\ttfamily kobj\+\_\+method\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+raid5\+\_\+methods\mbox{[}$\,$\mbox{]}\hspace{0.3cm}{\ttfamily [static]}}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_taste,     \mbox{\hyperlink{tr__raid5_8c_adc7b5d24d265b4f758aba6724b4cba99}{g\_raid\_tr\_taste\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_event,     \mbox{\hyperlink{tr__raid5_8c_ae01f5a3626089483b477de9e8bcdfa6e}{g\_raid\_tr\_event\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_start,     \mbox{\hyperlink{tr__raid5_8c_ad57246b0f8eca2206254af3d173d3f8d}{g\_raid\_tr\_start\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_stop,      \mbox{\hyperlink{tr__raid5_8c_a14eff69c4065bf361995a7411dd25951}{g\_raid\_tr\_stop\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_iostart,   \mbox{\hyperlink{tr__raid5_8c_a46c7b306a519f68b1187d1f95c4d2caf}{g\_raid\_tr\_iostart\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_iodone,    \mbox{\hyperlink{tr__raid5_8c_a02a69136bbe11631708eb9f2d30a26d3}{g\_raid\_tr\_iodone\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_kerneldump, \mbox{\hyperlink{tr__raid5_8c_a9bafe0d87ee6ccda607d63037c3572bf}{g\_raid\_tr\_kerneldump\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_locked,    \mbox{\hyperlink{tr__raid5_8c_abd0c52e71000d1e4fd7b341240de9705}{g\_raid\_tr\_locked\_raid5}}),}
\DoxyCodeLine{        KOBJMETHOD(g\_raid\_tr\_free,      \mbox{\hyperlink{tr__raid5_8c_a74ddc1abc50c0342ab2518d307d5781c}{g\_raid\_tr\_free\_raid5}}),}
\DoxyCodeLine{        \{ 0, 0 \}}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00081}{81}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_ad57246b0f8eca2206254af3d173d3f8d}\label{tr__raid5_8c_ad57246b0f8eca2206254af3d173d3f8d}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_start\_raid5@{g\_raid\_tr\_start\_raid5}}
\index{g\_raid\_tr\_start\_raid5@{g\_raid\_tr\_start\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_start\_raid5}{g\_raid\_tr\_start\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+start\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+start\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00073}{73}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_a14eff69c4065bf361995a7411dd25951}\label{tr__raid5_8c_a14eff69c4065bf361995a7411dd25951}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_stop\_raid5@{g\_raid\_tr\_stop\_raid5}}
\index{g\_raid\_tr\_stop\_raid5@{g\_raid\_tr\_stop\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_stop\_raid5}{g\_raid\_tr\_stop\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+stop\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+stop\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00074}{74}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

\mbox{\Hypertarget{tr__raid5_8c_adc7b5d24d265b4f758aba6724b4cba99}\label{tr__raid5_8c_adc7b5d24d265b4f758aba6724b4cba99}} 
\index{tr\_raid5.c@{tr\_raid5.c}!g\_raid\_tr\_taste\_raid5@{g\_raid\_tr\_taste\_raid5}}
\index{g\_raid\_tr\_taste\_raid5@{g\_raid\_tr\_taste\_raid5}!tr\_raid5.c@{tr\_raid5.c}}
\doxysubsubsection{\texorpdfstring{g\_raid\_tr\_taste\_raid5}{g\_raid\_tr\_taste\_raid5}}
{\footnotesize\ttfamily g\+\_\+raid\+\_\+tr\+\_\+taste\+\_\+t g\+\_\+raid\+\_\+tr\+\_\+taste\+\_\+raid5\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{tr__raid5_8c_source_l00071}{71}} of file \mbox{\hyperlink{tr__raid5_8c_source}{tr\+\_\+raid5.\+c}}.

