This patch series removes kvm tool's periodic tick function in favour of a thread that blocks waiting for input. The paths used for handling input are the same as when using a periodic tick, but they're not called unless there is actually input to be processed. On extremely slow platforms (eg FPGAs) the overhead involved in handling the timer tick means it is possible to make progress at all inside the VM! This patch addresses this problem. In doing this there are a number of small tidyups/cleanups that made sense, too: - Use a #define for maximum number of term devices - Refactor the method by which the virtio console handles input in order not to - handle input too early - handle input multiple times if the worker thread didn't immediately start work. - Rename the periodic_poll function to reflect the functional change --- Changes since V1 - s/kvm__arm_read_term/kvm__arch_read_term/ in patch2's coverletter - make term_poll_thread static - Added Marc's ack Jonathan Austin (3): kvm tools: use #define for maximum number of terminal devices kvm tools: remove periodic tick in favour of a polling thread kvm tools: stop virtio console doing unnecessary input handling tools/kvm/arm/kvm.c | 2 +- tools/kvm/builtin-run.c | 13 ----------- tools/kvm/include/kvm/kvm.h | 2 +- tools/kvm/kvm.c | 50 ------------------------------------------- tools/kvm/powerpc/kvm.c | 2 +- tools/kvm/term.c | 38 +++++++++++++++++++++++++++++--- tools/kvm/virtio/console.c | 23 +++++++++++++++++--- tools/kvm/x86/kvm.c | 2 +- 8 files changed, 59 insertions(+), 73 deletions(-) -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html