/* *Setworkloadaccordingtotypeofthreadifthekernelsupportsit. *Onkernelswithoutsupport,userthreadswillhavealreadyfailed *onmissingtimerlat_fd,andkernelthreadsdonotneedit.
*/
retval = osnoise_set_workload(tool->context, params->kernel_workload); if (retval < -1) {
err_msg("Failed to set OSNOISE_WORKLOAD option\n"); goto out_err;
}
return0;
out_err: return -1;
}
staticvoid timerlat_usage(int err)
{ int i;
staticconstchar * const msg[] = { "", "timerlat version " VERSION, "", " usage: [rtla] timerlat [MODE] ...", "", " modes:", " top - prints the summary from timerlat tracer", " hist - prints a histogram of timer latencies", "", "if no MODE is given, the top mode is called, passing the arguments",
NULL,
};
for (i = 0; msg[i]; i++)
fprintf(stderr, "%s\n", msg[i]); exit(err);
}
int timerlat_main(int argc, char *argv[])
{ if (argc == 0) goto usage;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.