aboutsummaryrefslogtreecommitdiff
path: root/include/qemu/qsp.h
blob: a94c464f9011e57a2bfbe54f52df32d0ac991dd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*
 * qsp.c - QEMU Synchronization Profiler
 *
 * Copyright (C) 2018, Emilio G. Cota <cota@braap.org>
 *
 * License: GNU GPL, version 2 or later.
 *   See the COPYING file in the top-level directory.
 *
 * Note: this header file can *only* be included from thread.h.
 */
#ifndef QEMU_QSP_H
#define QEMU_QSP_H

#include "qemu/fprintf-fn.h"

enum QSPSortBy {
    QSP_SORT_BY_TOTAL_WAIT_TIME,
    QSP_SORT_BY_AVG_WAIT_TIME,
};

void qsp_report(FILE *f, fprintf_function cpu_fprintf, size_t max,
                enum QSPSortBy sort_by, bool callsite_coalesce);

bool qsp_is_enabled(void);
void qsp_enable(void);
void qsp_disable(void);
void qsp_reset(void);

#endif /* QEMU_QSP_H */