I started to develop an alternative simulator based on time travel external mode. In the development process, I faced some issues, where I want to share my solutions.
They group into 3 categories, which I would split up later. 1-3 Add time travel handlers for some interrupts: These mainly address interrupts in drivers in TT mode. 4-8 Fix problems in TT protocol: I encountered several problems like missing TT messages and weird behavior (e.g. backward jumping time). Additionally, I added some more information in the ACK message, which was unused before, to simplify the implementation of the simulation. The last patch, "Protect accesses to the timetravel event list," fixed the last corner cases in our setup, which were quite hard to debug. 9-11 Optional patches enhancing simulation: This is mostly the RFC part of these patches. They are not needed, but make sense (at least for me). --- Benjamin Beichler (11): um: Make UBD requests synchronous in TT ext/infcpu mode um: add a simple time_travel_handler implementation um: Use a simple time travel handler for line interrupts um: Handle UM_TIMETRAVEL_RUN only in idle loop, signal success in ACK um: Add final request time to TT wait message um: always send UM_TIMETRAVEL_REQUEST from ISRs um: add TIMETRAVEL_REQUEST handler to request latest event um: Protect accesses to the timetravel event list um: Delay timer_read in time travel mode only after consecutive reads um: Delay timer_read only in possible busy loops in TT-mode um: Remove all TSC flags when using Time Travel Mode arch/um/drivers/line.c | 8 ++--- arch/um/drivers/ubd_kern.c | 45 ++++++++++++++++++++++----- arch/um/include/shared/irq_user.h | 7 +++++ arch/um/kernel/time.c | 62 ++++++++++++++++++++++++++++++++++---- arch/um/kernel/um_arch.c | 4 ++- include/uapi/linux/um_timetravel.h | 6 ++-- 6 files changed, 111 insertions(+), 21 deletions(-) --- base-commit: 21e80f3841c01aeaf32d7aee7bbc87b3db1aa0c6 change-id: 20231103-bb-timetravel-patches-075d01005f26 Best regards, -- Benjamin Beichler <benjamin.beich...@uni-rostock.de> _______________________________________________ linux-um mailing list linux-um@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-um