\hypertarget{ocs__ddump_8c}{}\doxysection{dev/ocs\+\_\+fc/ocs\+\_\+ddump.c File Reference}
\label{ocs__ddump_8c}\index{dev/ocs\_fc/ocs\_ddump.c@{dev/ocs\_fc/ocs\_ddump.c}}
{\ttfamily \#include \char`\"{}ocs.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}ocs\+\_\+ddump.\+h\char`\"{}}\newline
Include dependency graph for ocs\+\_\+ddump.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d2/df8/ocs__ddump_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{ocs__ddump_8c_a2b61145073c32d2aae93bf9e696486f3}{DEFAULT\+\_\+\+SAVED\+\_\+\+DUMP\+\_\+\+SIZE}}~(4$\ast$1024$\ast$1024)
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \mbox{\hyperlink{ocs__ddump_8c_a211412c0e56ccdc46f3f6ab011a3be6a}{hw\+\_\+queue\+\_\+ddump}} (\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$textbuf, \mbox{\hyperlink{ocs__common_8h_a74c456f323f96b8cdf5cd5314bf414c5}{ocs\+\_\+hw\+\_\+t}} $\ast$hw)
\item 
static void \mbox{\hyperlink{ocs__ddump_8c_aab340c575b407af7a414f08ea97b527c}{ocs\+\_\+ddump\+\_\+sli4\+\_\+queue}} (\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$textbuf, const char $\ast$\mbox{\hyperlink{ocs__mgmt_8h_aa94c9d3570c8561fd1334f31322c1caf}{name}}, \mbox{\hyperlink{ocs__common_8h_a74c456f323f96b8cdf5cd5314bf414c5}{ocs\+\_\+hw\+\_\+t}} $\ast$hw, \mbox{\hyperlink{sli4_8h_a5b0c12ad3798d23fe37e660fc3345e63}{sli4\+\_\+queue\+\_\+t}} $\ast$q, uint32\+\_\+t q\+\_\+count, uint32\+\_\+t qentries)
\begin{DoxyCompactList}\small\item\em Generate sli4 queue ddump. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{ocs__ddump_8c_a1fafefd78fe7c2cab3dbdb783266c6f4}{ocs\+\_\+ddump\+\_\+sli\+\_\+q\+\_\+fields}} (\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$textbuf, \mbox{\hyperlink{sli4_8h_ad171cbceefaa5e51502914d92ad1ace9}{sli4\+\_\+t}} $\ast$sli4, \mbox{\hyperlink{sli4_8h_adce52818eddaa61287a1baaf0697e85f}{sli4\+\_\+qtype\+\_\+e}} qtype)
\begin{DoxyCompactList}\small\item\em Generate SLI4 ddump. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{ocs__ddump_8c_a179705ffeb7160fdbc2065502d63f846}{ocs\+\_\+ddump\+\_\+sli}} (\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$textbuf, \mbox{\hyperlink{sli4_8h_ad171cbceefaa5e51502914d92ad1ace9}{sli4\+\_\+t}} $\ast$sli4)
\begin{DoxyCompactList}\small\item\em Generate SLI4 ddump. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{ocs__ddump_8c_ab59d5beac8515e4d6452693da7fa523c}{ocs\+\_\+ddump\+\_\+hw\+\_\+io}} (\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$textbuf, \mbox{\hyperlink{ocs__hw_8h_a3a441cb62a131eaae8c701c11ad7d49f}{ocs\+\_\+hw\+\_\+io\+\_\+t}} $\ast$io)
\begin{DoxyCompactList}\small\item\em Dump HW IO. \end{DoxyCompactList}\item 
static void \mbox{\hyperlink{ocs__ddump_8c_a1824ce137b3c5342f8a040c921b31c51}{ocs\+\_\+ddump\+\_\+hw}} (\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$textbuf, \mbox{\hyperlink{ocs__common_8h_a74c456f323f96b8cdf5cd5314bf414c5}{ocs\+\_\+hw\+\_\+t}} $\ast$hw, uint32\+\_\+t flags, uint32\+\_\+t qentries)
\begin{DoxyCompactList}\small\item\em Generate hw ddump. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{ocs__ddump_8c_a3c98adc576add47d7f189cbd0b6c7580}{ocs\+\_\+ddump}} (\mbox{\hyperlink{ocs__os_8h_a097c74f611c4c06727c23f34c66b1467}{ocs\+\_\+t}} $\ast$ocs, \mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$textbuf, uint32\+\_\+t flags, uint32\+\_\+t qentries)
\begin{DoxyCompactList}\small\item\em Initiate ddump. \end{DoxyCompactList}\item 
int32\+\_\+t \mbox{\hyperlink{ocs__ddump_8c_add3b31aea9919bd84ee7dc83a9bc3654}{ocs\+\_\+save\+\_\+ddump}} (\mbox{\hyperlink{ocs__os_8h_a097c74f611c4c06727c23f34c66b1467}{ocs\+\_\+t}} $\ast$ocs, uint32\+\_\+t flags, uint32\+\_\+t qentries)
\begin{DoxyCompactList}\small\item\em Capture and save ddump. \end{DoxyCompactList}\item 
int32\+\_\+t \mbox{\hyperlink{ocs__ddump_8c_a1949f46c428da08641c51d8f5455f52c}{ocs\+\_\+save\+\_\+ddump\+\_\+all}} (uint32\+\_\+t flags, uint32\+\_\+t qentries, uint32\+\_\+t alloc\+\_\+flag)
\begin{DoxyCompactList}\small\item\em Capture and save ddump for all OCS instances. \end{DoxyCompactList}\item 
int32\+\_\+t \mbox{\hyperlink{ocs__ddump_8c_aee701ca77ab0b33870dd53b70a8cc354}{ocs\+\_\+clear\+\_\+saved\+\_\+ddump}} (\mbox{\hyperlink{ocs__os_8h_a097c74f611c4c06727c23f34c66b1467}{ocs\+\_\+t}} $\ast$ocs)
\begin{DoxyCompactList}\small\item\em Clear saved ddump. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
generate FC ddump 

Definition in file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{ocs__ddump_8c_a2b61145073c32d2aae93bf9e696486f3}\label{ocs__ddump_8c_a2b61145073c32d2aae93bf9e696486f3}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!DEFAULT\_SAVED\_DUMP\_SIZE@{DEFAULT\_SAVED\_DUMP\_SIZE}}
\index{DEFAULT\_SAVED\_DUMP\_SIZE@{DEFAULT\_SAVED\_DUMP\_SIZE}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{DEFAULT\_SAVED\_DUMP\_SIZE}{DEFAULT\_SAVED\_DUMP\_SIZE}}
{\footnotesize\ttfamily \#define DEFAULT\+\_\+\+SAVED\+\_\+\+DUMP\+\_\+\+SIZE~(4$\ast$1024$\ast$1024)}



Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00043}{43}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{ocs__ddump_8c_a211412c0e56ccdc46f3f6ab011a3be6a}\label{ocs__ddump_8c_a211412c0e56ccdc46f3f6ab011a3be6a}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!hw\_queue\_ddump@{hw\_queue\_ddump}}
\index{hw\_queue\_ddump@{hw\_queue\_ddump}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{hw\_queue\_ddump()}{hw\_queue\_ddump()}}
{\footnotesize\ttfamily void hw\+\_\+queue\+\_\+ddump (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$}]{textbuf,  }\item[{\mbox{\hyperlink{ocs__common_8h_a74c456f323f96b8cdf5cd5314bf414c5}{ocs\+\_\+hw\+\_\+t}} $\ast$}]{hw }\end{DoxyParamCaption})}



Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00554}{554}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{ocs__hw_8h_source_l01108}{hw\+\_\+eq\+\_\+s\+::cq\+\_\+list}}, \mbox{\hyperlink{ocs__hw_8h_source_l01214}{hw\+\_\+rq\+\_\+s\+::data}}, \mbox{\hyperlink{ocs__hw_8h_source_l00949}{ocs\+\_\+hw\+\_\+s\+::eq\+\_\+list}}, \mbox{\hyperlink{ocs__hw_8h_source_l01211}{hw\+\_\+rq\+\_\+s\+::filter\+\_\+mask}}, \mbox{\hyperlink{ocs__hw_8h_source_l01213}{hw\+\_\+rq\+\_\+s\+::first\+\_\+burst}}, \mbox{\hyperlink{ocs__hw_8h_source_l01166}{hw\+\_\+wq\+\_\+s\+::free\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l01212}{hw\+\_\+rq\+\_\+s\+::hdr}}, \mbox{\hyperlink{sli4_8h_source_l03088}{sli4\+\_\+queue\+\_\+s\+::id}}, \mbox{\hyperlink{ocs__hw_8h_source_l01103}{hw\+\_\+eq\+\_\+s\+::instance}}, \mbox{\hyperlink{ocs__hw_8h_source_l01118}{hw\+\_\+cq\+\_\+s\+::instance}}, \mbox{\hyperlink{ocs__hw_8h_source_l01138}{hw\+\_\+mq\+\_\+s\+::instance}}, \mbox{\hyperlink{ocs__hw_8h_source_l01153}{hw\+\_\+wq\+\_\+s\+::instance}}, \mbox{\hyperlink{ocs__hw_8h_source_l01199}{hw\+\_\+rq\+\_\+s\+::instance}}, \mbox{\hyperlink{ocs__utils_8c_source_l00632}{ocs\+\_\+ddump\+\_\+endsection()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00614}{ocs\+\_\+ddump\+\_\+section()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00650}{ocs\+\_\+ddump\+\_\+value()}}, \mbox{\hyperlink{ocs__list_8h_source_l00408}{ocs\+\_\+list\+\_\+foreach}}, \mbox{\hyperlink{ocs__stats_8h_source_l00046}{OCS\+\_\+\+STAT}}, \mbox{\hyperlink{ocs__hw_8h_source_l01123}{hw\+\_\+cq\+\_\+s\+::q\+\_\+list}}, \mbox{\hyperlink{ocs__hw_8h_source_l01107}{hw\+\_\+eq\+\_\+s\+::queue}}, \mbox{\hyperlink{ocs__hw_8h_source_l01122}{hw\+\_\+cq\+\_\+s\+::queue}}, \mbox{\hyperlink{ocs__hw_8h_source_l01143}{hw\+\_\+mq\+\_\+s\+::queue}}, \mbox{\hyperlink{ocs__hw_8h_source_l01159}{hw\+\_\+wq\+\_\+s\+::queue}}, \mbox{\hyperlink{sli4_8h_source_l03058}{SLI\+\_\+\+QTYPE\+\_\+\+MQ}}, \mbox{\hyperlink{sli4_8h_source_l03060}{SLI\+\_\+\+QTYPE\+\_\+\+RQ}}, \mbox{\hyperlink{sli4_8h_source_l03059}{SLI\+\_\+\+QTYPE\+\_\+\+WQ}}, \mbox{\hyperlink{ocs__hw_8h_source_l01132}{hw\+\_\+q\+\_\+t\+::type}}, and \mbox{\hyperlink{ocs__hw_8h_source_l01165}{hw\+\_\+wq\+\_\+s\+::wqec\+\_\+count}}.



Referenced by \mbox{\hyperlink{ocs__ddump_8c_source_l00403}{ocs\+\_\+ddump\+\_\+hw()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a211412c0e56ccdc46f3f6ab011a3be6a_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a211412c0e56ccdc46f3f6ab011a3be6a_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_aee701ca77ab0b33870dd53b70a8cc354}\label{ocs__ddump_8c_aee701ca77ab0b33870dd53b70a8cc354}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_clear\_saved\_ddump@{ocs\_clear\_saved\_ddump}}
\index{ocs\_clear\_saved\_ddump@{ocs\_clear\_saved\_ddump}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_clear\_saved\_ddump()}{ocs\_clear\_saved\_ddump()}}
{\footnotesize\ttfamily int32\+\_\+t ocs\+\_\+clear\+\_\+saved\+\_\+ddump (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{ocs__os_8h_a097c74f611c4c06727c23f34c66b1467}{ocs\+\_\+t}} $\ast$}]{ocs }\end{DoxyParamCaption})}



Clear saved ddump. 

Clears saved ddump to make room for next one.


\begin{DoxyParams}{Parameters}
{\em ocs} & pointer to device context\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 if ddump was cleared; \texorpdfstring{$>$}{>} 0 no saved ddump found 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00865}{865}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{ocs_8h_source_l00202}{ocs\+\_\+softc\+::ddump\+\_\+saved}}, \mbox{\hyperlink{ocs__os_8h_source_l00378}{ocs\+\_\+log\+\_\+debug}}, \mbox{\hyperlink{ocs__utils_8c_source_l01640}{ocs\+\_\+textbuf\+\_\+get\+\_\+written()}}, and \mbox{\hyperlink{ocs__utils_8c_source_l01964}{ocs\+\_\+textbuf\+\_\+reset()}}.



Referenced by \mbox{\hyperlink{ocs__ioctl_8c_source_l00342}{ocs\+\_\+ioctl()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_aee701ca77ab0b33870dd53b70a8cc354_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=311pt]{d4/d02/ocs__ddump_8c_aee701ca77ab0b33870dd53b70a8cc354_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_a3c98adc576add47d7f189cbd0b6c7580}\label{ocs__ddump_8c_a3c98adc576add47d7f189cbd0b6c7580}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_ddump@{ocs\_ddump}}
\index{ocs\_ddump@{ocs\_ddump}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_ddump()}{ocs\_ddump()}}
{\footnotesize\ttfamily int ocs\+\_\+ddump (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{ocs__os_8h_a097c74f611c4c06727c23f34c66b1467}{ocs\+\_\+t}} $\ast$}]{ocs,  }\item[{\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$}]{textbuf,  }\item[{uint32\+\_\+t}]{flags,  }\item[{uint32\+\_\+t}]{qentries }\end{DoxyParamCaption})}



Initiate ddump. 

Traverses the ocs/domain/port/node/io data structures to generate a driver dump.


\begin{DoxyParams}{Parameters}
{\em ocs} & pointer to device context \\
\hline
{\em textbuf} & pointer to text buffer \\
\hline
{\em flags} & ddump flags \\
\hline
{\em qentries} & number of queue entries to dump\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Returns 0 on success, or a negative value on failure. 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00637}{637}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{ocs_8h_source_l00154}{ocs\+\_\+softc\+::auto\+\_\+xfer\+\_\+rdy\+\_\+size}}, \mbox{\hyperlink{ocs_8h_source_l00118}{ocs\+\_\+softc\+::display\+\_\+name}}, \mbox{\hyperlink{ocs__hw_8h_source_l00302}{ocs\+\_\+hw\+\_\+rq\+\_\+buffer\+\_\+t\+::dma}}, \mbox{\hyperlink{ocs__common_8h_source_l00406}{ocs\+\_\+vport\+\_\+spec\+\_\+s\+::domain\+\_\+instance}}, \mbox{\hyperlink{ocs_8h_source_l00135}{ocs\+\_\+softc\+::domain\+\_\+list}}, \mbox{\hyperlink{ocs_8h_source_l00051}{DRV\+\_\+\+NAME}}, \mbox{\hyperlink{ocs_8h_source_l00052}{DRV\+\_\+\+VERSION}}, \mbox{\hyperlink{ocs_8h_source_l00151}{ocs\+\_\+softc\+::enable\+\_\+hlm}}, \mbox{\hyperlink{ocs_8h_source_l00140}{ocs\+\_\+softc\+::enable\+\_\+ini}}, \mbox{\hyperlink{ocs__common_8h_source_l00411}{ocs\+\_\+vport\+\_\+spec\+\_\+s\+::enable\+\_\+ini}}, \mbox{\hyperlink{ocs_8h_source_l00141}{ocs\+\_\+softc\+::enable\+\_\+tgt}}, \mbox{\hyperlink{ocs__common_8h_source_l00410}{ocs\+\_\+vport\+\_\+spec\+\_\+s\+::enable\+\_\+tgt}}, \mbox{\hyperlink{ocs__common_8h_source_l00409}{ocs\+\_\+vport\+\_\+spec\+\_\+s\+::fc\+\_\+id}}, \mbox{\hyperlink{ocs__xport_8h_source_l00168}{ocs\+\_\+xport\+\_\+s\+::fcfi}}, \mbox{\hyperlink{ocs__hw_8h_source_l00754}{ocs\+\_\+hw\+\_\+sequence\+\_\+t\+::header}}, \mbox{\hyperlink{ocs_8h_source_l00152}{ocs\+\_\+softc\+::hlm\+\_\+group\+\_\+size}}, \mbox{\hyperlink{ocs__xport_8h_source_l00048}{ocs\+\_\+xport\+\_\+fcfi\+\_\+s\+::hold\+\_\+frames}}, \mbox{\hyperlink{ocs_8h_source_l00128}{ocs\+\_\+softc\+::hw}}, \mbox{\hyperlink{ocs_8h_source_l00106}{ocs\+\_\+softc\+::instance\+\_\+index}}, \mbox{\hyperlink{ocs__xport_8h_source_l00186}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+active\+\_\+count}}, \mbox{\hyperlink{ocs__xport_8h_source_l00177}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+alloc\+\_\+failed\+\_\+count}}, \mbox{\hyperlink{ocs__xport_8h_source_l00187}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+pending\+\_\+count}}, \mbox{\hyperlink{ocs__xport_8h_source_l00179}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+pending\+\_\+list}}, \mbox{\hyperlink{ocs__xport_8h_source_l00178}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+pending\+\_\+lock}}, \mbox{\hyperlink{ocs__xport_8h_source_l00188}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+pending\+\_\+recursing}}, \mbox{\hyperlink{ocs__xport_8h_source_l00183}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+total\+\_\+alloc}}, \mbox{\hyperlink{ocs__xport_8h_source_l00184}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+total\+\_\+free}}, \mbox{\hyperlink{ocs__xport_8h_source_l00185}{ocs\+\_\+xport\+\_\+s\+::io\+\_\+total\+\_\+pending}}, \mbox{\hyperlink{ocs__os_8h_source_l00453}{ocs\+\_\+dma\+\_\+s\+::len}}, \mbox{\hyperlink{ocs_8h_source_l00153}{ocs\+\_\+softc\+::max\+\_\+isr\+\_\+time\+\_\+msec}}, \mbox{\hyperlink{ocs__os_8h_source_l00536}{ocs\+\_\+lock\+\_\+s\+::name}}, \mbox{\hyperlink{ocs__xport_8h_source_l00171}{ocs\+\_\+xport\+\_\+s\+::nodes\+\_\+count}}, \mbox{\hyperlink{ocs__os_8h_source_l00950}{ocs\+\_\+atomic\+\_\+read}}, \mbox{\hyperlink{ocs__os_8h_source_l00269}{ocs\+\_\+be16toh}}, \mbox{\hyperlink{ocs__domain_8c_source_l01318}{ocs\+\_\+ddump\+\_\+domain()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00597}{ocs\+\_\+ddump\+\_\+endfile()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00632}{ocs\+\_\+ddump\+\_\+endsection()}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00403}{ocs\+\_\+ddump\+\_\+hw()}}, \mbox{\hyperlink{ocs__io_8c_source_l00363}{ocs\+\_\+ddump\+\_\+io()}}, \mbox{\hyperlink{ocs__utils_8c_source_l02511}{ocs\+\_\+ddump\+\_\+ramlog()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00614}{ocs\+\_\+ddump\+\_\+section()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00581}{ocs\+\_\+ddump\+\_\+startfile()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00650}{ocs\+\_\+ddump\+\_\+value()}}, \mbox{\hyperlink{ocs_8h_source_l00228}{ocs\+\_\+device\+\_\+lock\+\_\+try()}}, \mbox{\hyperlink{ocs_8h_source_l00240}{ocs\+\_\+device\+\_\+unlock()}}, \mbox{\hyperlink{ocs__list_8h_source_l00122}{ocs\+\_\+list\+\_\+empty()}}, \mbox{\hyperlink{ocs__list_8h_source_l00408}{ocs\+\_\+list\+\_\+foreach}}, \mbox{\hyperlink{ocs__os_8h_source_l00573}{ocs\+\_\+lock()}}, \mbox{\hyperlink{ocs__scsi_8h_source_l00367}{OCS\+\_\+\+SCSI\+\_\+\+DDUMP\+\_\+\+DEVICE}}, \mbox{\hyperlink{ocs__cam_8c_source_l02713}{ocs\+\_\+scsi\+\_\+ini\+\_\+ddump()}}, \mbox{\hyperlink{ocs__cam_8c_source_l02743}{ocs\+\_\+scsi\+\_\+tgt\+\_\+ddump()}}, \mbox{\hyperlink{ocs__os_8h_source_l00336}{ocs\+\_\+snprintf}}, \mbox{\hyperlink{ocs__utils_8c_source_l01807}{ocs\+\_\+textbuf\+\_\+printf()}}, \mbox{\hyperlink{ocs__os_8h_source_l00591}{ocs\+\_\+unlock()}}, \mbox{\hyperlink{ocs__fcp_8h_source_l00143}{fc\+\_\+header\+\_\+s\+::ox\+\_\+id}}, \mbox{\hyperlink{ocs__hw_8h_source_l00755}{ocs\+\_\+hw\+\_\+sequence\+\_\+t\+::payload}}, \mbox{\hyperlink{ocs__xport_8h_source_l00047}{ocs\+\_\+xport\+\_\+fcfi\+\_\+s\+::pend\+\_\+frames}}, \mbox{\hyperlink{ocs__xport_8h_source_l00046}{ocs\+\_\+xport\+\_\+fcfi\+\_\+s\+::pend\+\_\+frames\+\_\+lock}}, \mbox{\hyperlink{ocs__os_8h_source_l00134}{PRIx64}}, \mbox{\hyperlink{ocs__fcp_8h_source_l00134}{fc\+\_\+header\+\_\+s\+::r\+\_\+ctl}}, \mbox{\hyperlink{ocs_8h_source_l00201}{ocs\+\_\+softc\+::ramlog}}, \mbox{\hyperlink{ocs__fcp_8h_source_l00144}{fc\+\_\+header\+\_\+s\+::rx\+\_\+id}}, \mbox{\hyperlink{sli4_8h_source_l03779}{SLI4\+\_\+\+MAX\+\_\+\+FCFI}}, \mbox{\hyperlink{ocs__os_8h_source_l00446}{ocs\+\_\+dma\+\_\+s\+::virt}}, \mbox{\hyperlink{ocs__xport_8h_source_l00191}{ocs\+\_\+xport\+\_\+s\+::vport\+\_\+list}}, \mbox{\hyperlink{ocs__common_8h_source_l00407}{ocs\+\_\+vport\+\_\+spec\+\_\+s\+::wwnn}}, \mbox{\hyperlink{ocs__common_8h_source_l00408}{ocs\+\_\+vport\+\_\+spec\+\_\+s\+::wwpn}}, and \mbox{\hyperlink{ocs_8h_source_l00133}{ocs\+\_\+softc\+::xport}}.



Referenced by \mbox{\hyperlink{ocs__ioctl_8c_source_l00342}{ocs\+\_\+ioctl()}}, and \mbox{\hyperlink{ocs__ddump_8c_source_l00800}{ocs\+\_\+save\+\_\+ddump()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a3c98adc576add47d7f189cbd0b6c7580_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a3c98adc576add47d7f189cbd0b6c7580_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_a1824ce137b3c5342f8a040c921b31c51}\label{ocs__ddump_8c_a1824ce137b3c5342f8a040c921b31c51}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_ddump\_hw@{ocs\_ddump\_hw}}
\index{ocs\_ddump\_hw@{ocs\_ddump\_hw}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_ddump\_hw()}{ocs\_ddump\_hw()}}
{\footnotesize\ttfamily static void ocs\+\_\+ddump\+\_\+hw (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$}]{textbuf,  }\item[{\mbox{\hyperlink{ocs__common_8h_a74c456f323f96b8cdf5cd5314bf414c5}{ocs\+\_\+hw\+\_\+t}} $\ast$}]{hw,  }\item[{uint32\+\_\+t}]{flags,  }\item[{uint32\+\_\+t}]{qentries }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Generate hw ddump. 

Generates hw ddump


\begin{DoxyParams}{Parameters}
{\em textbuf} & pointer to text buffer \\
\hline
{\em hw} & pointer HW context \\
\hline
{\em flags} & ddump flags \\
\hline
{\em qentries} & number of qentries to dump\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
none 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00403}{403}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{ocs__os_8h_source_l00090}{ARRAY\+\_\+\+SIZE}}, \mbox{\hyperlink{structocs__hw__s_a4cfc51508d958b10c972b11043402e7d}{ocs\+\_\+hw\+\_\+s\+::config}}, \mbox{\hyperlink{ocs__hw_8h_source_l00940}{ocs\+\_\+hw\+\_\+s\+::cq}}, \mbox{\hyperlink{ocs__hw_8h_source_l00945}{ocs\+\_\+hw\+\_\+s\+::cq\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l00941}{ocs\+\_\+hw\+\_\+s\+::eq}}, \mbox{\hyperlink{ocs__hw_8h_source_l00944}{ocs\+\_\+hw\+\_\+s\+::eq\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l00929}{ocs\+\_\+hw\+\_\+s\+::filter\+\_\+def}}, \mbox{\hyperlink{ocs__hw_8h_source_l00859}{ocs\+\_\+hw\+\_\+workaround\+\_\+t\+::fwrev}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00554}{hw\+\_\+queue\+\_\+ddump()}}, \mbox{\hyperlink{ocs__hw_8h_source_l00956}{ocs\+\_\+hw\+\_\+s\+::hw\+\_\+wq}}, \mbox{\hyperlink{sli4_8h_source_l03226}{sli4\+\_\+s\+::if\+\_\+type}}, \mbox{\hyperlink{ocs__hw_8h_source_l00603}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::indicator}}, \mbox{\hyperlink{ocs_8h_source_l00106}{ocs\+\_\+softc\+::instance\+\_\+index}}, \mbox{\hyperlink{ocs__hw_8h_source_l01026}{ocs\+\_\+hw\+\_\+s\+::io}}, \mbox{\hyperlink{ocs__hw_8h_source_l01054}{ocs\+\_\+hw\+\_\+s\+::io\+\_\+alloc\+\_\+failed\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l01034}{ocs\+\_\+hw\+\_\+s\+::io\+\_\+free}}, \mbox{\hyperlink{ocs__hw_8h_source_l01031}{ocs\+\_\+hw\+\_\+s\+::io\+\_\+inuse}}, \mbox{\hyperlink{ocs__hw_8h_source_l01029}{ocs\+\_\+hw\+\_\+s\+::io\+\_\+lock}}, \mbox{\hyperlink{ocs__hw_8h_source_l01033}{ocs\+\_\+hw\+\_\+s\+::io\+\_\+wait\+\_\+free}}, \mbox{\hyperlink{ocs__hw_8h_source_l00981}{ocs\+\_\+hw\+\_\+s\+::link}}, \mbox{\hyperlink{ocs__hw_8h_source_l00939}{ocs\+\_\+hw\+\_\+s\+::mq}}, \mbox{\hyperlink{ocs__hw_8h_source_l00946}{ocs\+\_\+hw\+\_\+s\+::mq\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l00907}{ocs\+\_\+hw\+\_\+s\+::n\+\_\+io}}, \mbox{\hyperlink{ocs__hw_8h_source_l00908}{ocs\+\_\+hw\+\_\+s\+::n\+\_\+sgl}}, \mbox{\hyperlink{ocs__utils_8h_source_l00247}{ocs\+\_\+assert}}, \mbox{\hyperlink{ocs__os_8h_source_l00950}{ocs\+\_\+atomic\+\_\+read}}, \mbox{\hyperlink{ocs__utils_8c_source_l00632}{ocs\+\_\+ddump\+\_\+endsection()}}, \mbox{\hyperlink{ocs__ddump_8h_source_l00040}{OCS\+\_\+\+DDUMP\+\_\+\+FLAGS\+\_\+\+CQES}}, \mbox{\hyperlink{ocs__ddump_8h_source_l00043}{OCS\+\_\+\+DDUMP\+\_\+\+FLAGS\+\_\+\+EQES}}, \mbox{\hyperlink{ocs__ddump_8h_source_l00041}{OCS\+\_\+\+DDUMP\+\_\+\+FLAGS\+\_\+\+MQES}}, \mbox{\hyperlink{ocs__ddump_8h_source_l00042}{OCS\+\_\+\+DDUMP\+\_\+\+FLAGS\+\_\+\+RQES}}, \mbox{\hyperlink{ocs__ddump_8h_source_l00039}{OCS\+\_\+\+DDUMP\+\_\+\+FLAGS\+\_\+\+WQES}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00272}{ocs\+\_\+ddump\+\_\+hw\+\_\+io()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00614}{ocs\+\_\+ddump\+\_\+section()}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00167}{ocs\+\_\+ddump\+\_\+sli()}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00063}{ocs\+\_\+ddump\+\_\+sli4\+\_\+queue()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00650}{ocs\+\_\+ddump\+\_\+value()}}, \mbox{\hyperlink{ocs__hw_8c_source_l11309}{ocs\+\_\+hw\+\_\+is\+\_\+xri\+\_\+port\+\_\+owned()}}, \mbox{\hyperlink{ocs__hw_8h_source_l00842}{OCS\+\_\+\+HW\+\_\+\+QUARANTINE\+\_\+\+QUEUE\+\_\+\+DEPTH}}, \mbox{\hyperlink{ocs__list_8h_source_l00408}{ocs\+\_\+list\+\_\+foreach}}, \mbox{\hyperlink{ocs__os_8h_source_l00573}{ocs\+\_\+lock()}}, \mbox{\hyperlink{ocs__os_8h_source_l01274}{ocs\+\_\+ref\+\_\+read\+\_\+count()}}, \mbox{\hyperlink{ocs__utils_8c_source_l01807}{ocs\+\_\+textbuf\+\_\+printf()}}, \mbox{\hyperlink{ocs__os_8h_source_l00591}{ocs\+\_\+unlock()}}, \mbox{\hyperlink{ocs__hw_8h_source_l00889}{ocs\+\_\+hw\+\_\+s\+::os}}, \mbox{\hyperlink{ocs__hw_8h_source_l00845}{ocs\+\_\+quarantine\+\_\+info\+\_\+t\+::quarantine\+\_\+index}}, \mbox{\hyperlink{ocs__hw_8h_source_l01182}{hw\+\_\+wq\+\_\+s\+::quarantine\+\_\+info}}, \mbox{\hyperlink{ocs__hw_8h_source_l00846}{ocs\+\_\+quarantine\+\_\+info\+\_\+t\+::quarantine\+\_\+ios}}, \mbox{\hyperlink{ocs__hw_8h_source_l00922}{ocs\+\_\+hw\+\_\+s\+::queue\+\_\+topology}}, \mbox{\hyperlink{ocs__hw_8h_source_l00579}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::ref}}, \mbox{\hyperlink{ocs__hw_8h_source_l00688}{ocs\+\_\+hw\+\_\+rpi\+\_\+ref\+\_\+t\+::rpi\+\_\+attached}}, \mbox{\hyperlink{ocs__hw_8h_source_l00687}{ocs\+\_\+hw\+\_\+rpi\+\_\+ref\+\_\+t\+::rpi\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l01049}{ocs\+\_\+hw\+\_\+s\+::rpi\+\_\+ref}}, \mbox{\hyperlink{ocs__hw_8h_source_l00937}{ocs\+\_\+hw\+\_\+s\+::rq}}, \mbox{\hyperlink{ocs__hw_8h_source_l00948}{ocs\+\_\+hw\+\_\+s\+::rq\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l00927}{ocs\+\_\+hw\+\_\+s\+::rq\+\_\+selection\+\_\+policy}}, \mbox{\hyperlink{ocs__hw_8h_source_l00928}{ocs\+\_\+hw\+\_\+s\+::rr\+\_\+quanta}}, \mbox{\hyperlink{ocs__hw_8h_source_l01061}{ocs\+\_\+hw\+\_\+s\+::sec\+\_\+hio\+\_\+wait\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l00890}{ocs\+\_\+hw\+\_\+s\+::sli}}, \mbox{\hyperlink{sli4_8h_source_l03037}{SLI4\+\_\+\+REG\+\_\+\+SLIPORT\+\_\+\+ERROR1}}, \mbox{\hyperlink{sli4_8h_source_l03038}{SLI4\+\_\+\+REG\+\_\+\+SLIPORT\+\_\+\+ERROR2}}, \mbox{\hyperlink{sli4_8h_source_l03040}{SLI4\+\_\+\+REG\+\_\+\+SLIPORT\+\_\+\+STATUS}}, \mbox{\hyperlink{sli4_8h_source_l03041}{SLI4\+\_\+\+REG\+\_\+\+UERR\+\_\+\+MASK\+\_\+\+HI}}, \mbox{\hyperlink{sli4_8h_source_l03042}{SLI4\+\_\+\+REG\+\_\+\+UERR\+\_\+\+MASK\+\_\+\+LO}}, \mbox{\hyperlink{sli4_8h_source_l03043}{SLI4\+\_\+\+REG\+\_\+\+UERR\+\_\+\+STATUS\+\_\+\+HI}}, \mbox{\hyperlink{sli4_8h_source_l03044}{SLI4\+\_\+\+REG\+\_\+\+UERR\+\_\+\+STATUS\+\_\+\+LO}}, \mbox{\hyperlink{sli4_8h_source_l03320}{sli\+\_\+get\+\_\+max\+\_\+rsrc()}}, \mbox{\hyperlink{sli4_8c_source_l00260}{sli\+\_\+reg\+\_\+read()}}, \mbox{\hyperlink{sli4_8h_source_l03187}{SLI\+\_\+\+RSRC\+\_\+\+FCOE\+\_\+\+RPI}}, \mbox{\hyperlink{sli4_8h_source_l03161}{sli4\+\_\+link\+\_\+event\+\_\+s\+::speed}}, \mbox{\hyperlink{ocs__hw_8h_source_l00894}{ocs\+\_\+hw\+\_\+s\+::state}}, \mbox{\hyperlink{sli4_8h_source_l03158}{sli4\+\_\+link\+\_\+event\+\_\+s\+::status}}, \mbox{\hyperlink{ocs__hw_8h_source_l01069}{ocs\+\_\+hw\+\_\+s\+::tcmd\+\_\+wq\+\_\+complete}}, \mbox{\hyperlink{ocs__hw_8h_source_l01068}{ocs\+\_\+hw\+\_\+s\+::tcmd\+\_\+wq\+\_\+submit}}, \mbox{\hyperlink{sli4_8h_source_l03159}{sli4\+\_\+link\+\_\+event\+\_\+s\+::topology}}, \mbox{\hyperlink{ocs__hw_8h_source_l01052}{ocs\+\_\+hw\+\_\+s\+::workaround}}, \mbox{\hyperlink{ocs__hw_8h_source_l00936}{ocs\+\_\+hw\+\_\+s\+::wq}}, \mbox{\hyperlink{ocs__hw_8h_source_l00947}{ocs\+\_\+hw\+\_\+s\+::wq\+\_\+count}}, and \mbox{\hyperlink{ocs__hw_8h_source_l00574}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::xbusy}}.



Referenced by \mbox{\hyperlink{ocs__ddump_8c_source_l00637}{ocs\+\_\+ddump()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a1824ce137b3c5342f8a040c921b31c51_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a1824ce137b3c5342f8a040c921b31c51_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_ab59d5beac8515e4d6452693da7fa523c}\label{ocs__ddump_8c_ab59d5beac8515e4d6452693da7fa523c}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_ddump\_hw\_io@{ocs\_ddump\_hw\_io}}
\index{ocs\_ddump\_hw\_io@{ocs\_ddump\_hw\_io}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_ddump\_hw\_io()}{ocs\_ddump\_hw\_io()}}
{\footnotesize\ttfamily static void ocs\+\_\+ddump\+\_\+hw\+\_\+io (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$}]{textbuf,  }\item[{\mbox{\hyperlink{ocs__hw_8h_a3a441cb62a131eaae8c701c11ad7d49f}{ocs\+\_\+hw\+\_\+io\+\_\+t}} $\ast$}]{io }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Dump HW IO. 

Dump HW IO


\begin{DoxyParams}{Parameters}
{\em textbuf} & pointer to text buffer \\
\hline
{\em io} & pointer to HW IO object\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
none 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00272}{272}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{ocs__hw_8h_source_l00585}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::abort\+\_\+in\+\_\+progress}}, \mbox{\hyperlink{ocs__hw_8h_source_l00601}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::abort\+\_\+reqtag}}, \mbox{\hyperlink{ocs__hw_8h_source_l00605}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::def\+\_\+sgl\+\_\+count}}, \mbox{\hyperlink{ocs__hw_8h_source_l00603}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::indicator}}, \mbox{\hyperlink{ocs__hw_8h_source_l01153}{hw\+\_\+wq\+\_\+s\+::instance}}, \mbox{\hyperlink{ocs__hw_8h_source_l00613}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::n\+\_\+sge}}, \mbox{\hyperlink{ocs__utils_8h_source_l00247}{ocs\+\_\+assert}}, \mbox{\hyperlink{ocs__utils_8c_source_l00632}{ocs\+\_\+ddump\+\_\+endsection()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00614}{ocs\+\_\+ddump\+\_\+section()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00650}{ocs\+\_\+ddump\+\_\+value()}}, \mbox{\hyperlink{ocs__list_8h_source_l00440}{ocs\+\_\+list\+\_\+on\+\_\+list()}}, \mbox{\hyperlink{ocs__os_8h_source_l01274}{ocs\+\_\+ref\+\_\+read\+\_\+count()}}, \mbox{\hyperlink{ocs__hw_8h_source_l00612}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::ovfl\+\_\+io}}, \mbox{\hyperlink{ocs__hw_8h_source_l00609}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::ovfl\+\_\+sgl}}, \mbox{\hyperlink{ocs__hw_8h_source_l00579}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::ref}}, \mbox{\hyperlink{ocs__hw_8h_source_l00600}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::reqtag}}, \mbox{\hyperlink{ocs__hw_8h_source_l00564}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::state}}, \mbox{\hyperlink{ocs__hw_8h_source_l00571}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::type}}, \mbox{\hyperlink{ocs__hw_8h_source_l00573}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::wq}}, \mbox{\hyperlink{ocs__hw_8h_source_l00562}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::wqe\+\_\+link}}, and \mbox{\hyperlink{ocs__hw_8h_source_l00574}{ocs\+\_\+hw\+\_\+io\+\_\+s\+::xbusy}}.



Referenced by \mbox{\hyperlink{ocs__ddump_8c_source_l00403}{ocs\+\_\+ddump\+\_\+hw()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_ab59d5beac8515e4d6452693da7fa523c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_ab59d5beac8515e4d6452693da7fa523c_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_a179705ffeb7160fdbc2065502d63f846}\label{ocs__ddump_8c_a179705ffeb7160fdbc2065502d63f846}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_ddump\_sli@{ocs\_ddump\_sli}}
\index{ocs\_ddump\_sli@{ocs\_ddump\_sli}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_ddump\_sli()}{ocs\_ddump\_sli()}}
{\footnotesize\ttfamily static void ocs\+\_\+ddump\+\_\+sli (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$}]{textbuf,  }\item[{\mbox{\hyperlink{sli4_8h_ad171cbceefaa5e51502914d92ad1ace9}{sli4\+\_\+t}} $\ast$}]{sli4 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Generate SLI4 ddump. 

Generates sli4 ddump


\begin{DoxyParams}{Parameters}
{\em textbuf} & pointer to text buffer \\
\hline
{\em sli4} & pointer SLI context\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
none 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00167}{167}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{sli4_8h_source_l03229}{sli4\+\_\+s\+::asic\+\_\+rev}}, \mbox{\hyperlink{sli4_8h_source_l03228}{sli4\+\_\+s\+::asic\+\_\+type}}, \mbox{\hyperlink{sli4_8h_source_l03176}{sli4\+\_\+sgl\+\_\+chaining\+\_\+params\+\_\+s\+::chain\+\_\+sge\+\_\+initial\+\_\+value\+\_\+hi}}, \mbox{\hyperlink{sli4_8h_source_l03175}{sli4\+\_\+sgl\+\_\+chaining\+\_\+params\+\_\+s\+::chain\+\_\+sge\+\_\+initial\+\_\+value\+\_\+lo}}, \mbox{\hyperlink{sli4_8h_source_l03170}{sli4\+\_\+sgl\+\_\+chaining\+\_\+params\+\_\+s\+::chaining\+\_\+capable}}, \mbox{\hyperlink{structsli4__s_aba8e57453a71d2aa5562bc89c3c9f71b}{sli4\+\_\+s\+::config}}, \mbox{\hyperlink{sli4_8h_source_l03233}{sli4\+\_\+s\+::e\+\_\+d\+\_\+tov}}, \mbox{\hyperlink{sli4_8h_source_l03173}{sli4\+\_\+sgl\+\_\+chaining\+\_\+params\+\_\+s\+::frag\+\_\+num\+\_\+field\+\_\+mask}}, \mbox{\hyperlink{sli4_8h_source_l03171}{sli4\+\_\+sgl\+\_\+chaining\+\_\+params\+\_\+s\+::frag\+\_\+num\+\_\+field\+\_\+offset}}, \mbox{\hyperlink{sli4_8h_source_l03252}{sli4\+\_\+s\+::fw\+\_\+name}}, \mbox{\hyperlink{sli4_8h_source_l03251}{sli4\+\_\+s\+::fw\+\_\+rev}}, \mbox{\hyperlink{sli4_8h_source_l03283}{sli4\+\_\+s\+::high\+\_\+login\+\_\+mode}}, \mbox{\hyperlink{sli4_8h_source_l03254}{sli4\+\_\+s\+::hw\+\_\+rev}}, \mbox{\hyperlink{sli4_8h_source_l03226}{sli4\+\_\+s\+::if\+\_\+type}}, \mbox{\hyperlink{sli4_8h_source_l03240}{sli4\+\_\+s\+::link\+\_\+module\+\_\+type}}, \mbox{\hyperlink{sli4_8h_source_l03290}{sli4\+\_\+s\+::max\+\_\+sgl\+\_\+pages}}, \mbox{\hyperlink{ocs__utils_8c_source_l00632}{ocs\+\_\+ddump\+\_\+endsection()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00614}{ocs\+\_\+ddump\+\_\+section()}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00134}{ocs\+\_\+ddump\+\_\+sli\+\_\+q\+\_\+fields()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00650}{ocs\+\_\+ddump\+\_\+value()}}, \mbox{\hyperlink{sli4_8h_source_l03234}{sli4\+\_\+s\+::r\+\_\+a\+\_\+tov}}, \mbox{\hyperlink{sli4_8h_source_l03241}{sli4\+\_\+s\+::rq\+\_\+batch}}, \mbox{\hyperlink{sli4_8h_source_l03288}{sli4\+\_\+s\+::sge\+\_\+supported\+\_\+length}}, \mbox{\hyperlink{sli4_8h_source_l03291}{sli4\+\_\+s\+::sgl\+\_\+chaining\+\_\+params}}, \mbox{\hyperlink{sli4_8h_source_l03174}{sli4\+\_\+sgl\+\_\+chaining\+\_\+params\+\_\+s\+::sgl\+\_\+index\+\_\+field\+\_\+mask}}, \mbox{\hyperlink{sli4_8h_source_l03172}{sli4\+\_\+sgl\+\_\+chaining\+\_\+params\+\_\+s\+::sgl\+\_\+index\+\_\+field\+\_\+offset}}, \mbox{\hyperlink{sli4_8h_source_l03289}{sli4\+\_\+s\+::sgl\+\_\+page\+\_\+sizes}}, \mbox{\hyperlink{sli4_8h_source_l03284}{sli4\+\_\+s\+::sgl\+\_\+pre\+\_\+registered}}, \mbox{\hyperlink{sli4_8h_source_l03285}{sli4\+\_\+s\+::sgl\+\_\+pre\+\_\+registration\+\_\+required}}, \mbox{\hyperlink{sli4_8h_source_l03210}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+A0}}, \mbox{\hyperlink{sli4_8h_source_l03211}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+A1}}, \mbox{\hyperlink{sli4_8h_source_l03212}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+A2}}, \mbox{\hyperlink{sli4_8h_source_l03213}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+A3}}, \mbox{\hyperlink{sli4_8h_source_l03214}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+B0}}, \mbox{\hyperlink{sli4_8h_source_l03216}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+C0}}, \mbox{\hyperlink{sli4_8h_source_l03217}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+D0}}, \mbox{\hyperlink{sli4_8h_source_l03209}{SLI4\+\_\+\+ASIC\+\_\+\+REV\+\_\+\+FPGA}}, \mbox{\hyperlink{sli4_8h_source_l03200}{SLI4\+\_\+\+ASIC\+\_\+\+TYPE\+\_\+\+BE3}}, \mbox{\hyperlink{sli4_8h_source_l03202}{SLI4\+\_\+\+ASIC\+\_\+\+TYPE\+\_\+\+LANCER}}, \mbox{\hyperlink{sli4_8h_source_l03204}{SLI4\+\_\+\+ASIC\+\_\+\+TYPE\+\_\+\+LANCERG6}}, \mbox{\hyperlink{sli4_8h_source_l03201}{SLI4\+\_\+\+ASIC\+\_\+\+TYPE\+\_\+\+SKYHAWK}}, \mbox{\hyperlink{sli4_8h_source_l03225}{sli4\+\_\+s\+::sli\+\_\+family}}, \mbox{\hyperlink{sli4_8h_source_l03320}{sli\+\_\+get\+\_\+max\+\_\+rsrc()}}, \mbox{\hyperlink{sli4_8h_source_l03057}{SLI\+\_\+\+QTYPE\+\_\+\+CQ}}, \mbox{\hyperlink{sli4_8h_source_l03056}{SLI\+\_\+\+QTYPE\+\_\+\+EQ}}, \mbox{\hyperlink{sli4_8h_source_l03058}{SLI\+\_\+\+QTYPE\+\_\+\+MQ}}, \mbox{\hyperlink{sli4_8h_source_l03060}{SLI\+\_\+\+QTYPE\+\_\+\+RQ}}, \mbox{\hyperlink{sli4_8h_source_l03059}{SLI\+\_\+\+QTYPE\+\_\+\+WQ}}, \mbox{\hyperlink{sli4_8h_source_l03224}{sli4\+\_\+s\+::sli\+\_\+rev}}, \mbox{\hyperlink{sli4_8h_source_l03189}{SLI\+\_\+\+RSRC\+\_\+\+FCOE\+\_\+\+FCFI}}, \mbox{\hyperlink{sli4_8h_source_l03187}{SLI\+\_\+\+RSRC\+\_\+\+FCOE\+\_\+\+RPI}}, \mbox{\hyperlink{sli4_8h_source_l03185}{SLI\+\_\+\+RSRC\+\_\+\+FCOE\+\_\+\+VFI}}, \mbox{\hyperlink{sli4_8h_source_l03186}{SLI\+\_\+\+RSRC\+\_\+\+FCOE\+\_\+\+VPI}}, \mbox{\hyperlink{sli4_8h_source_l03188}{SLI\+\_\+\+RSRC\+\_\+\+FCOE\+\_\+\+XRI}}, \mbox{\hyperlink{sli4_8h_source_l03244}{sli4\+\_\+s\+::topology}}, \mbox{\hyperlink{sli4_8h_source_l03250}{sli4\+\_\+s\+::wwnn}}, and \mbox{\hyperlink{sli4_8h_source_l03248}{sli4\+\_\+s\+::wwpn}}.



Referenced by \mbox{\hyperlink{ocs__ddump_8c_source_l00403}{ocs\+\_\+ddump\+\_\+hw()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a179705ffeb7160fdbc2065502d63f846_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a179705ffeb7160fdbc2065502d63f846_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_aab340c575b407af7a414f08ea97b527c}\label{ocs__ddump_8c_aab340c575b407af7a414f08ea97b527c}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_ddump\_sli4\_queue@{ocs\_ddump\_sli4\_queue}}
\index{ocs\_ddump\_sli4\_queue@{ocs\_ddump\_sli4\_queue}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_ddump\_sli4\_queue()}{ocs\_ddump\_sli4\_queue()}}
{\footnotesize\ttfamily static void ocs\+\_\+ddump\+\_\+sli4\+\_\+queue (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$}]{textbuf,  }\item[{const char $\ast$}]{name,  }\item[{\mbox{\hyperlink{ocs__common_8h_a74c456f323f96b8cdf5cd5314bf414c5}{ocs\+\_\+hw\+\_\+t}} $\ast$}]{hw,  }\item[{\mbox{\hyperlink{sli4_8h_a5b0c12ad3798d23fe37e660fc3345e63}{sli4\+\_\+queue\+\_\+t}} $\ast$}]{q,  }\item[{uint32\+\_\+t}]{q\+\_\+count,  }\item[{uint32\+\_\+t}]{qentries }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Generate sli4 queue ddump. 

Generates sli4 queue ddump data


\begin{DoxyParams}{Parameters}
{\em textbuf} & pointer to text buffer \\
\hline
{\em name} & name of SLI4 queue \\
\hline
{\em hw} & pointer HW context \\
\hline
{\em q} & pointer to SLI4 queues array \\
\hline
{\em q\+\_\+count} & count of SLI4 queues \\
\hline
{\em qentries} & number of SLI4 queue entries to dump\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
none 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00063}{63}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{sli4_8h_source_l03082}{sli4\+\_\+queue\+\_\+s\+::dma}}, \mbox{\hyperlink{ocs__hw_8h_source_l01201}{hw\+\_\+rq\+\_\+s\+::entry\+\_\+count}}, \mbox{\hyperlink{structsli4__queue__s_a8dd594f49e34ec7653820cb9ba3f4050}{sli4\+\_\+queue\+\_\+s\+::flag}}, \mbox{\hyperlink{ocs__hw_8h_source_l00957}{ocs\+\_\+hw\+\_\+s\+::hw\+\_\+rq}}, \mbox{\hyperlink{ocs__hw_8h_source_l00961}{ocs\+\_\+hw\+\_\+s\+::hw\+\_\+rq\+\_\+count}}, \mbox{\hyperlink{sli4_8h_source_l03088}{sli4\+\_\+queue\+\_\+s\+::id}}, \mbox{\hyperlink{sli4_8h_source_l03084}{sli4\+\_\+queue\+\_\+s\+::index}}, \mbox{\hyperlink{sli4_8h_source_l03106}{sli4\+\_\+queue\+\_\+s\+::is\+\_\+hdr}}, \mbox{\hyperlink{sli4_8h_source_l03105}{sli4\+\_\+queue\+\_\+s\+::is\+\_\+mq}}, \mbox{\hyperlink{sli4_8h_source_l03086}{sli4\+\_\+queue\+\_\+s\+::length}}, \mbox{\hyperlink{sli4_8h_source_l03095}{sli4\+\_\+queue\+\_\+s\+::max\+\_\+num\+\_\+processed}}, \mbox{\hyperlink{sli4_8h_source_l03096}{sli4\+\_\+queue\+\_\+s\+::max\+\_\+process\+\_\+time}}, \mbox{\hyperlink{sli4_8h_source_l03087}{sli4\+\_\+queue\+\_\+s\+::n\+\_\+posted}}, \mbox{\hyperlink{ocs__ddump_8h_source_l00052}{name}}, \mbox{\hyperlink{ocs__utils_8c_source_l00632}{ocs\+\_\+ddump\+\_\+endsection()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00719}{ocs\+\_\+ddump\+\_\+queue\+\_\+entries()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00614}{ocs\+\_\+ddump\+\_\+section()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00650}{ocs\+\_\+ddump\+\_\+value()}}, \mbox{\hyperlink{ocs__os_8h_source_l00448}{ocs\+\_\+dma\+\_\+s\+::phys}}, \mbox{\hyperlink{sli4_8h_source_l03094}{sli4\+\_\+queue\+\_\+s\+::posted\+\_\+limit}}, \mbox{\hyperlink{sli4_8h_source_l03093}{sli4\+\_\+queue\+\_\+s\+::proc\+\_\+limit}}, \mbox{\hyperlink{sli4_8h_source_l03103}{sli4\+\_\+queue\+\_\+s\+::r\+\_\+idx}}, \mbox{\hyperlink{sli4_8h_source_l03107}{sli4\+\_\+queue\+\_\+s\+::rq\+\_\+batch}}, \mbox{\hyperlink{ocs__hw_8h_source_l01220}{hw\+\_\+rq\+\_\+s\+::rq\+\_\+tracker}}, \mbox{\hyperlink{sli4_8h_source_l03085}{sli4\+\_\+queue\+\_\+s\+::size}}, \mbox{\hyperlink{sli4_8h_source_l03057}{SLI\+\_\+\+QTYPE\+\_\+\+CQ}}, \mbox{\hyperlink{sli4_8h_source_l03058}{SLI\+\_\+\+QTYPE\+\_\+\+MQ}}, \mbox{\hyperlink{sli4_8h_source_l03060}{SLI\+\_\+\+QTYPE\+\_\+\+RQ}}, \mbox{\hyperlink{sli4_8h_source_l03059}{SLI\+\_\+\+QTYPE\+\_\+\+WQ}}, \mbox{\hyperlink{sli4_8h_source_l03092}{sli4\+\_\+queue\+\_\+s\+::type}}, \mbox{\hyperlink{structsli4__queue__s_ab9f094af898fd48ce6459c14e51c6ecf}{sli4\+\_\+queue\+\_\+s\+::u}}, and \mbox{\hyperlink{ocs__os_8h_source_l00446}{ocs\+\_\+dma\+\_\+s\+::virt}}.



Referenced by \mbox{\hyperlink{ocs__ddump_8c_source_l00403}{ocs\+\_\+ddump\+\_\+hw()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_aab340c575b407af7a414f08ea97b527c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_aab340c575b407af7a414f08ea97b527c_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_a1fafefd78fe7c2cab3dbdb783266c6f4}\label{ocs__ddump_8c_a1fafefd78fe7c2cab3dbdb783266c6f4}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_ddump\_sli\_q\_fields@{ocs\_ddump\_sli\_q\_fields}}
\index{ocs\_ddump\_sli\_q\_fields@{ocs\_ddump\_sli\_q\_fields}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_ddump\_sli\_q\_fields()}{ocs\_ddump\_sli\_q\_fields()}}
{\footnotesize\ttfamily static void ocs\+\_\+ddump\+\_\+sli\+\_\+q\+\_\+fields (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{structocs__textbuf__t}{ocs\+\_\+textbuf\+\_\+t}} $\ast$}]{textbuf,  }\item[{\mbox{\hyperlink{sli4_8h_ad171cbceefaa5e51502914d92ad1ace9}{sli4\+\_\+t}} $\ast$}]{sli4,  }\item[{\mbox{\hyperlink{sli4_8h_adce52818eddaa61287a1baaf0697e85f}{sli4\+\_\+qtype\+\_\+e}}}]{qtype }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Generate SLI4 ddump. 

Generates sli4 ddump


\begin{DoxyParams}{Parameters}
{\em textbuf} & pointer to text buffer \\
\hline
{\em sli4} & pointer SLI context \\
\hline
{\em qtype} & SLI4 queue type\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
none 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00134}{134}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{structsli4__s_aba8e57453a71d2aa5562bc89c3c9f71b}{sli4\+\_\+s\+::config}}, \mbox{\hyperlink{sli4_8h_source_l03235}{sli4\+\_\+s\+::max\+\_\+qcount}}, \mbox{\hyperlink{sli4_8h_source_l03236}{sli4\+\_\+s\+::max\+\_\+qentries}}, \mbox{\hyperlink{ocs__utils_8c_source_l00632}{ocs\+\_\+ddump\+\_\+endsection()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00614}{ocs\+\_\+ddump\+\_\+section()}}, \mbox{\hyperlink{ocs__utils_8c_source_l00650}{ocs\+\_\+ddump\+\_\+value()}}, \mbox{\hyperlink{sli4_8h_source_l03239}{sli4\+\_\+s\+::qpage\+\_\+count}}, \mbox{\hyperlink{sli4_8h_source_l03057}{SLI\+\_\+\+QTYPE\+\_\+\+CQ}}, \mbox{\hyperlink{sli4_8h_source_l03056}{SLI\+\_\+\+QTYPE\+\_\+\+EQ}}, \mbox{\hyperlink{sli4_8h_source_l03058}{SLI\+\_\+\+QTYPE\+\_\+\+MQ}}, \mbox{\hyperlink{sli4_8h_source_l03060}{SLI\+\_\+\+QTYPE\+\_\+\+RQ}}, and \mbox{\hyperlink{sli4_8h_source_l03059}{SLI\+\_\+\+QTYPE\+\_\+\+WQ}}.



Referenced by \mbox{\hyperlink{ocs__ddump_8c_source_l00167}{ocs\+\_\+ddump\+\_\+sli()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a1fafefd78fe7c2cab3dbdb783266c6f4_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a1fafefd78fe7c2cab3dbdb783266c6f4_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_add3b31aea9919bd84ee7dc83a9bc3654}\label{ocs__ddump_8c_add3b31aea9919bd84ee7dc83a9bc3654}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_save\_ddump@{ocs\_save\_ddump}}
\index{ocs\_save\_ddump@{ocs\_save\_ddump}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_save\_ddump()}{ocs\_save\_ddump()}}
{\footnotesize\ttfamily int32\+\_\+t ocs\+\_\+save\+\_\+ddump (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{ocs__os_8h_a097c74f611c4c06727c23f34c66b1467}{ocs\+\_\+t}} $\ast$}]{ocs,  }\item[{uint32\+\_\+t}]{flags,  }\item[{uint32\+\_\+t}]{qentries }\end{DoxyParamCaption})}



Capture and save ddump. 

Captures and saves a ddump to the ocs\+\_\+t structure to save the current state. The goal of this function is to save a ddump as soon as an issue is encountered. The saved ddump will be kept until the user reads it.


\begin{DoxyParams}{Parameters}
{\em ocs} & pointer to device context \\
\hline
{\em flags} & ddump flags \\
\hline
{\em qentries} & number of queue entries to dump\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 if ddump was saved; \texorpdfstring{$>$}{>} 0 of one already exists; \texorpdfstring{$<$}{<} 0 error 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00800}{800}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{ocs_8h_source_l00202}{ocs\+\_\+softc\+::ddump\+\_\+saved}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00637}{ocs\+\_\+ddump()}}, \mbox{\hyperlink{ocs__os_8h_source_l00378}{ocs\+\_\+log\+\_\+debug}}, \mbox{\hyperlink{ocs__os_8h_source_l00374}{ocs\+\_\+log\+\_\+err}}, \mbox{\hyperlink{ocs__utils_8c_source_l01640}{ocs\+\_\+textbuf\+\_\+get\+\_\+written()}}, and \mbox{\hyperlink{ocs__utils_8c_source_l01680}{ocs\+\_\+textbuf\+\_\+initialized()}}.



Referenced by \mbox{\hyperlink{ocs__ddump_8c_source_l00832}{ocs\+\_\+save\+\_\+ddump\+\_\+all()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_add3b31aea9919bd84ee7dc83a9bc3654_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_add3b31aea9919bd84ee7dc83a9bc3654_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{ocs__ddump_8c_a1949f46c428da08641c51d8f5455f52c}\label{ocs__ddump_8c_a1949f46c428da08641c51d8f5455f52c}} 
\index{ocs\_ddump.c@{ocs\_ddump.c}!ocs\_save\_ddump\_all@{ocs\_save\_ddump\_all}}
\index{ocs\_save\_ddump\_all@{ocs\_save\_ddump\_all}!ocs\_ddump.c@{ocs\_ddump.c}}
\doxysubsubsection{\texorpdfstring{ocs\_save\_ddump\_all()}{ocs\_save\_ddump\_all()}}
{\footnotesize\ttfamily int32\+\_\+t ocs\+\_\+save\+\_\+ddump\+\_\+all (\begin{DoxyParamCaption}\item[{uint32\+\_\+t}]{flags,  }\item[{uint32\+\_\+t}]{qentries,  }\item[{uint32\+\_\+t}]{alloc\+\_\+flag }\end{DoxyParamCaption})}



Capture and save ddump for all OCS instances. 

Calls \mbox{\hyperlink{ocs__ddump_8c_add3b31aea9919bd84ee7dc83a9bc3654}{ocs\+\_\+save\+\_\+ddump()}} for each OCS instance.


\begin{DoxyParams}{Parameters}
{\em flags} & ddump flags \\
\hline
{\em qentries} & number of queue entries to dump \\
\hline
{\em alloc\+\_\+flag} & allocate dump buffer if not already allocated\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 if ddump was saved; \texorpdfstring{$>$}{>} 0 of one already exists; \texorpdfstring{$<$}{<} 0 error 
\end{DoxyReturn}


Definition at line \mbox{\hyperlink{ocs__ddump_8c_source_l00832}{832}} of file \mbox{\hyperlink{ocs__ddump_8c_source}{ocs\+\_\+ddump.\+c}}.



References \mbox{\hyperlink{ocs_8h_source_l00202}{ocs\+\_\+softc\+::ddump\+\_\+saved}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00043}{DEFAULT\+\_\+\+SAVED\+\_\+\+DUMP\+\_\+\+SIZE}}, \mbox{\hyperlink{ocs__pci_8c_source_l00969}{ocs\+\_\+get\+\_\+instance()}}, \mbox{\hyperlink{ocs__ddump_8c_source_l00800}{ocs\+\_\+save\+\_\+ddump()}}, \mbox{\hyperlink{ocs__utils_8c_source_l01686}{ocs\+\_\+textbuf\+\_\+alloc()}}, and \mbox{\hyperlink{ocs__utils_8c_source_l01680}{ocs\+\_\+textbuf\+\_\+initialized()}}.



Referenced by \mbox{\hyperlink{ocs__os_8c_source_l01038}{\+\_\+ocs\+\_\+assert()}}.

Here is the call graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d4/d02/ocs__ddump_8c_a1949f46c428da08641c51d8f5455f52c_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=308pt]{d4/d02/ocs__ddump_8c_a1949f46c428da08641c51d8f5455f52c_icgraph}
\end{center}
\end{figure}
