\doxysection{Configuration}
\label{group__cpu__sched__VTY}\index{Configuration@{Configuration}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item 
file \textbf{ cpu\+\_\+sched\+\_\+vty.\+h}
\begin{DoxyCompactList}\small\item\em API to CPU / Threading / Scheduler properties from VTY configuration. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \textbf{ osmo\+\_\+cpu\+\_\+sched\+\_\+vty\+\_\+init} (void $\ast$tall\+\_\+ctx)
\begin{DoxyCompactList}\small\item\em Initialize sched VTY nodes. \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+cpu\+\_\+sched\+\_\+vty\+\_\+apply\+\_\+localthread} (void)
\begin{DoxyCompactList}\small\item\em Apply cpu-\/affinity on calling thread based on VTY configuration. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


\doxysubsection{Function Documentation}
\mbox{\label{group__cpu__sched__VTY_ga5eb944998ac87f1fed307eefdaa25a00}} 
\index{Configuration@{Configuration}!osmo\_cpu\_sched\_vty\_apply\_localthread@{osmo\_cpu\_sched\_vty\_apply\_localthread}}
\index{osmo\_cpu\_sched\_vty\_apply\_localthread@{osmo\_cpu\_sched\_vty\_apply\_localthread}!Configuration@{Configuration}}
\doxysubsubsection{osmo\_cpu\_sched\_vty\_apply\_localthread()}
{\footnotesize\ttfamily int osmo\+\_\+cpu\+\_\+sched\+\_\+vty\+\_\+apply\+\_\+localthread (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Apply cpu-\/affinity on calling thread based on VTY configuration. 

\begin{DoxyReturn}{Returns}
0 on success, non-\/zero on error. 
\end{DoxyReturn}


References \textbf{ cpu\+\_\+affinity\+\_\+it\+::bufname}, \textbf{ sched\+\_\+vty\+\_\+opts\+::cpu\+\_\+affinity\+\_\+li}, \textbf{ sched\+\_\+vty\+\_\+opts\+::cpu\+\_\+affinity\+\_\+li\+\_\+mutex}, \textbf{ cpu\+\_\+affinity\+\_\+it\+::cpuset}, \textbf{ cpu\+\_\+affinity\+\_\+it\+::cpuset\+\_\+size}, \textbf{ DLGLOBAL}, \textbf{ entry}, \textbf{ generate\+\_\+cpu\+\_\+hex\+\_\+mask()}, \textbf{ llist\+\_\+for\+\_\+each\+\_\+entry}, \textbf{ LOGL\+\_\+\+FATAL}, \textbf{ LOGP}, \textbf{ my\+\_\+sched\+\_\+setaffinity()}, \textbf{ name}, \textbf{ OSMO\+\_\+\+ASSERT}, \textbf{ SCHED\+\_\+\+VTY\+\_\+\+THREAD\+\_\+\+ALL}, \textbf{ SCHED\+\_\+\+VTY\+\_\+\+THREAD\+\_\+\+NAME}, \textbf{ SCHED\+\_\+\+VTY\+\_\+\+THREAD\+\_\+\+SELF}, and \textbf{ cpu\+\_\+affinity\+\_\+it\+::tid\+\_\+type}.

\mbox{\label{group__cpu__sched__VTY_ga74c34e2c9306decb850569691ab60361}} 
\index{Configuration@{Configuration}!osmo\_cpu\_sched\_vty\_init@{osmo\_cpu\_sched\_vty\_init}}
\index{osmo\_cpu\_sched\_vty\_init@{osmo\_cpu\_sched\_vty\_init}!Configuration@{Configuration}}
\doxysubsubsection{osmo\_cpu\_sched\_vty\_init()}
{\footnotesize\ttfamily void osmo\+\_\+cpu\+\_\+sched\+\_\+vty\+\_\+init (\begin{DoxyParamCaption}\item[{void $\ast$}]{tall\+\_\+ctx }\end{DoxyParamCaption})}



Initialize sched VTY nodes. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em tall\+\_\+ctx} & Talloc context to use internally by vty\+\_\+sched subsystem. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 on success, non-\/zero on error. 
\end{DoxyReturn}


References \textbf{ CONFIG\+\_\+\+NODE}, \textbf{ config\+\_\+write\+\_\+sched()}, \textbf{ sched\+\_\+vty\+\_\+opts\+::cpu\+\_\+affinity\+\_\+li}, \textbf{ sched\+\_\+vty\+\_\+opts\+::cpu\+\_\+affinity\+\_\+li\+\_\+mutex}, \textbf{ get\+\_\+num\+\_\+cpus()}, \textbf{ INIT\+\_\+\+LLIST\+\_\+\+HEAD}, \textbf{ install\+\_\+lib\+\_\+element()}, \textbf{ install\+\_\+lib\+\_\+element\+\_\+ve()}, \textbf{ install\+\_\+node()}, \textbf{ L\+\_\+\+CPU\+\_\+\+SCHED\+\_\+\+NODE}, \textbf{ OSMO\+\_\+\+ASSERT}, \textbf{ sched\+\_\+node}, and \textbf{ sched\+\_\+vty\+\_\+opts\+::tall\+\_\+ctx}.

