28 lines
637 B
C
28 lines
637 B
C
// SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
|
/*
|
|
* Copyright 2013-2019 IBM Corp.
|
|
*/
|
|
#ifndef E_TRACE_H
|
|
#define E_TRACE_H
|
|
|
|
#include <stdbool.h>
|
|
#include <types.h>
|
|
#include <trace.h>
|
|
#include <trace_types.h>
|
|
|
|
struct trace_reader {
|
|
/* This is where the reader is up to. */
|
|
u64 rpos;
|
|
/* If the last one we read was a repeat, this shows how many. */
|
|
u32 last_repeat;
|
|
struct list_head traces;
|
|
struct tracebuf *tb;
|
|
};
|
|
|
|
/* Is this tracebuf empty? */
|
|
bool trace_empty(const struct trace_reader *tr);
|
|
|
|
/* Get the next trace from this buffer (false if empty). */
|
|
bool trace_get(union trace *t, struct trace_reader *tr);
|
|
|
|
#endif
|