
Anthony Liguori wrote:
However, I do like the idea though of QEMU queuing events for a certain period of time. Not everyone always has something connected to a monitor. I may notice that my NFS server (which runs in a VM) is not responding, VNC to the system, switch to the monitor, and take a look at the event log. If I can get the past 10 minutes of events, I may see something useful like a host IO failure.
If you want finite and deterministic behavior, the only way to achieve it is by using a finite number of events. Even better, you can pre-allocate the events themselves in a large array avoiding runtime memory operations and just use them as a ring. The fixed number of monitor events could be a command line or config option. And if no monitor has connected since overflow, deliberately corrupt the first event. (qemu) wait monitor warning !!Message buffer has overflowed=Event log truncated!!