timetravel.h 758 B

12345678910111213141516171819202122232425262728293031
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright (C) 2019-2021 Intel Corporation
  4. */
  5. #ifndef _UM_TIME_TRAVEL_H_
  6. #define _UM_TIME_TRAVEL_H_
  7. enum time_travel_mode {
  8. TT_MODE_OFF,
  9. TT_MODE_BASIC,
  10. TT_MODE_INFCPU,
  11. TT_MODE_EXTERNAL,
  12. };
  13. #if defined(UML_CONFIG_UML_TIME_TRAVEL_SUPPORT) || \
  14. defined(CONFIG_UML_TIME_TRAVEL_SUPPORT)
  15. extern enum time_travel_mode time_travel_mode;
  16. extern int time_travel_should_print_bc_msg;
  17. #else
  18. #define time_travel_mode TT_MODE_OFF
  19. #define time_travel_should_print_bc_msg 0
  20. #endif /* (UML_)CONFIG_UML_TIME_TRAVEL_SUPPORT */
  21. void _time_travel_print_bc_msg(void);
  22. static inline void time_travel_print_bc_msg(void)
  23. {
  24. if (time_travel_should_print_bc_msg)
  25. _time_travel_print_bc_msg();
  26. }
  27. #endif /* _UM_TIME_TRAVEL_H_ */