blob: 09b7b0854b3b926b3c9640826e29d397b9cb7b5f [file] [log] [blame] [edit]
/* SPDX-License-Identifier: GPL-2.0-only */
#ifndef __ARM64_KVM_HYPTRACE_H_
#define __ARM64_KVM_HYPTRACE_H_
#include <asm/kvm_hyp.h>
#include <linux/ring_buffer.h>
#include <linux/trace_seq.h>
#include <linux/workqueue.h>
struct ht_iterator {
struct hyp_trace_buffer *hyp_buffer;
int cpu;
struct hyp_entry_hdr *ent;
unsigned long lost_events;
int ent_cpu;
size_t ent_size;
u64 ts;
void *spare;
size_t copy_leftover;
struct trace_seq seq;
struct delayed_work poll_work;
};
/*
* Host donations to the hypervisor to store the struct hyp_buffer_page.
*/
struct hyp_buffer_pages_backing {
unsigned long start;
size_t size;
};
struct hyp_trace_desc {
struct hyp_buffer_pages_backing backing;
struct trace_page_desc page_desc;
};
#endif