hyp_trace.h 599 B

123456789101112131415161718192021222324252627282930
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef __ARM64_KVM_HYP_TRACE_H__
  3. #define __ARM64_KVM_HYP_TRACE_H__
  4. #include <linux/trace_seq.h>
  5. #include <linux/workqueue.h>
  6. struct ht_iterator {
  7. struct ring_buffer_iter **buf_iter;
  8. struct hyp_entry_hdr *ent;
  9. struct trace_seq seq;
  10. struct list_head list;
  11. u64 ts;
  12. void *spare;
  13. size_t copy_leftover;
  14. size_t ent_size;
  15. struct delayed_work poke_work;
  16. unsigned long lost_events;
  17. cpumask_var_t cpus;
  18. int ent_cpu;
  19. int cpu;
  20. };
  21. #ifdef CONFIG_TRACING
  22. int init_hyp_tracefs(void);
  23. #else
  24. static inline int init_hyp_tracefs(void) { return 0; }
  25. #endif
  26. #endif